Seite 3 von 5
Re: Einbinden von DHT22 Temperatur u. Feuchtigkeitssensor
Verfasst: 25. Sep 2019 18:51
von udo1toni
Als Erstes noch mal die Nachfrage nach der exakten Ausgabe des Befehls, wenn Du ihn ausführst. Siehe
viewtopic.php?f=15&t=2191&start=10#p11330
croix-aigle hat geschrieben: ↑25. Sep 2019 18:35Hab das alles als dht22. ... benannt, um es vorerst für mich leichter zu machen.
Da wäre nun die Frage, die Rule und Items exakt aussehen. Ändern, damit es einfacher wird, ist ja gut und schön, es muss aber auch korrekt sein.
Re: Einbinden von DHT22 Temperatur u. Feuchtigkeitssensor
Verfasst: 29. Sep 2019 09:49
von croix-aigle
ich gehe indas Verzeichnis:
und gebe dort den Befehl:
Re: Einbinden von DHT22 Temperatur u. Feuchtigkeitssensor
Verfasst: 29. Sep 2019 12:23
von udo1toni
Es geht nicht darum, was Du eingibst, sondern, was der Befehl zurück liefert...

Re: Einbinden von DHT22 Temperatur u. Feuchtigkeitssensor
Verfasst: 29. Sep 2019 20:40
von Stefan Otten
Die Ausgabe sieht so aus:
Temp=24.6* Humidity=59.0%
Grüße
Re: Einbinden von DHT22 Temperatur u. Feuchtigkeitssensor
Verfasst: 30. Sep 2019 09:08
von udo1toni
Ah. Das muss man natürlich bei der Extraktion berücksichtigen.
Code: Alles auswählen
rule "parse dht22 temp and hum"
when
Item MyDHT22 received update
then
if(MyDHT22.state != null && MyDHT22.state.toString.contains(" ")) { // die beiden Werte werden durch ein Leerzeichen voneinander getrennt
var String part1 = MyDHT22.state.toString.split(" ").get(0) // Temperatur, mit Text
var String part2 = MyDHT22.state.toString.split(" ").get(1) // Feuchtigkeit, mit Text
part1 = part1.split("=").get(1) // Zahl mit Einheit
part2 = part2.split("=").get(1) // Zahl mit Einheit
part1 = part1.split("*").get(0) // Zahl ohne Einheit
part2 = part2.split("%").get(0) // Zahl ohne Einheit
dht22Temp.postUpdate(Float::parseFloat(part1))
dht22Hum.postUpdate(Float::parseFloat(part2))
}
end
Re: Einbinden von DHT22 Temperatur u. Feuchtigkeitssensor
Verfasst: 1. Okt 2019 18:40
von croix-aigle
das habe ich in der Sitemaps eingetragen.
Ausgabe: Temperatur - °C Luftfeuchte - %
Hab ich in der Sitemaps was falsch eingetragen? in der Log finde ich nichts.
Re: Einbinden von DHT22 Temperatur u. Feuchtigkeitssensor
Verfasst: 11. Okt 2019 18:38
von croix-aigle
Ich habe die ruls noch erweitert mit:
Code: Alles auswählen
logInfo("DHT22"," Der DHT22-Status enthält: {}", MyDHT22.state) // Test
logInfo("DHT22","part1 enthält: {} - part2 enthält: {} ", part1, part2) // Test
in der Log kommt folgender Fehler:
Code: Alles auswählen
2019-10-11 18:30:33.173 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model 'dht22.rules' has errors, therefore ignoring it: [21,1]: missing EOF at 'when'
Re: Einbinden von DHT22 Temperatur u. Feuchtigkeitssensor
Verfasst: 11. Okt 2019 23:10
von udo1toni
Tja, steht ja nun da, Du hast in der Datei einen Tippfehler, der verhindert, dass die Rule überhaupt ausgeführt wird.
Der Fehler befindet sich vermutlich (aber nicht sicher!) in Zeile 21.
Vermutlich befindet sich der Fehler unmittelbar vorher, da er das Schlüsselwort "when" anmeckert. Falls Du es nicht selbst findest, poste bitte den kompletten Inhalt der Datei (falls Du mehrere Rules drin hast, reicht die Datei bis zum Ende der Rule)
Re: Einbinden von DHT22 Temperatur u. Feuchtigkeitssensor
Verfasst: 16. Okt 2019 09:11
von croix-aigle
ok, hab den Fehler gefunden. Das Lag dadran, das ich noch text // ... hatte und obwohl alles grün war. Machte er Probleme.
Das steht jetzt in der Log:
Code: Alles auswählen
2019-10-16 09:08:19.551 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'dht22.rules'
2019-10-16 09:08:30.286 [INFO ] [eclipse.smarthome.model.script.DHT22] - Der DHT22-Status enthält: We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
sudo: no tty present and no askpass program specified
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
sudo: no tty present and no askpass program specified
2019-10-16 09:08:30.347 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'parse dht22 temp and hum': 1
Re: Einbinden von DHT22 Temperatur u. Feuchtigkeitssensor
Verfasst: 16. Okt 2019 12:32
von udo1toni
Du rufst sudo auf, der User, welcher sudo startet, hat dies aber noch nie getan. Ist der user Mitglied der Gruppe sudo? ist für den User definiert, dass er zum Aufruf des gewünschten Befehls kein Passwort eingeben muss?