Hunter Hydrawise - Bewässerungssystem

Begonnen von omnior, 11 Juni 2018, 14:08:16

Vorheriges Thema - Nächstes Thema

xasher

Hallo jocamel,

kannst du mir bitte ein paar Infos mehr geben. Schön wäre das Reading, das bei dir ausgegeben wird sowie dein genauer Befehl.
Eigentlich ist es vom Syntax andersrum: set "Name der Steuerung" run RelayID Zeit

Danke dir,
Alex

Sailor

Hallo xascher
Zitat von: xasher am 07 April 2020, 17:08:07
so, das Modul ist eingecheckt - schwere Geburt. Ich wurde aber gut unterstützt.
Sollte dann morgen vielleicht im update sein - wenn ich alles richtig gemacht habe.

Ist drin aber es ist als "fhem-Befehl"  gekennzeichnet und nicht als "Gerät"
Ändere mal im "pod" - Bereich "=item command" in "=item device"

Gruß
    Sailor
******************************
Man wird immer besser...

xasher

Hallo Sailor,

danke für den Hinweis. Ich werde das gleich ändern.

Grüße,
Alex

jpst

Hallo xasher,
ich bin gestern über das Modul gestolpert und hab's heute mal ausprobiert. Soweit so gut. Auch wenn die Frage etwas blöd klingt und nur um wirklich sicher zu sein:

- Das Modul arbeitet via API direkt mit dem Hydrawise Cloud-Service und nicht mit dem Steuercomputer von Hunter (?)  und ist damit eine Alternative zur Web-Applikation bzw. App von Hunter.

Ich werde das Modul mal laufen lassen und in einem FileLog protokollieren, was passiert. Das Steuern über das Modul werde ich mal nicht anfassen.

Danke für die Arbeit, Jean-Pierre

PS: Achtung Commandref Schreibfehler : Definition of the module

    define <name> HYDAWISE <API-KEY> <Interval>

...sollte wohl HYDRAWISE heissen.

xasher

Hall jpst,

danke dir für den Hinweis. Ja. Dei Computer ist mit Hunter connected. Das Modul ist die Umsetzung des API-Handbuches für FHEM.

Viel Erfolg.
Grüße,
Alex

jpst

Lieber Alex
Danke für die Bestätigung - hier meine ersten Beobachtungen. Da es momentan regnet, blockiert meine Wetterstation die Bewässerung. Ich habe die Abfrage des APIs deshalb auf 900/15 Minuten gestellt. Weiterhin habe ich die Attr des HYDRAWISE Devices auf:
event-min-interval.*:3600
event-on-change-reading .*
gesetzt. Ich hätte so erwartet, dass im LogFile des Devices (es werden alle Ereignisse .* protokolliert)
1. alle 15 Minuten das Reading ct1_last_contact erscheint
2. jede Stunde alle Readings protokolliert werden.
Im Event Monitor und auch im FileLog fehlt jedoch jeder Eintrag nach einer Stunde und alle 15 Minuten kommen total 7 Readings:
2 mal customer_id (einmal ohne Wert, einmal mit Wert)
2 mal cur-controller_id  (einmal ohne Wert, einmal mit Wert)
2 mal cur_controller_name (einmal ohne Wert, einmal mit Wert)
1 mal ct1_last_contact inkl. Wert

Habe ich Tomaten auf den Augen - was mache ich falsch?
Gruss, Jean-Pierre

xasher

Hallo Jean-Pierre,

ich denke nicht, dass du etwas falsch machst. Die zwei Werte habe ich bei mir noch nicht verändert - kann ich aber mal auch so machen.
Beschreib mir bitte nochmals dein Problem. Ist es, dass die Werte teilweise nicht kommen?
Das stimmt, die API liefert in diesen Bereichen manchmal ein leeres json. Das bekomme ich aber auch "nur" rein. Meistens ist es das nächstes Mal wieder gefüllt.


Viele Grüße,
Alex

xasher

Hallo Jean-Pierre,

ich glaub ich weiß was du meinst: Zwei Logeintrage zum selben Zeitstempel...
Lass mich das noch ewas untersuchen - melde mich dann.

Grüße,
Alex

xasher

Hallo Jean-Pierre,

ich habe die Logfunktion überarbeitet. Sollte dann morgen mit dem Update verteilt werden.
Schau nochmals drüber, dann können wir nochmals sprechen.

Viele Grüße,
Alex

jpst

Lieber Alex, danke - ich werde dann die neue Modulversion einspielen und testen. Gruss, JP

jpst

Lieber Alex

Das sieht soweit gut aus, auch bei den "event-min-interval" bewegt sich nun etwas. Ich muss das Log allerdings noch weiter beobachten... und es regnet weiterhin, also wird die Bewässerung durch den Sensor blockert.
Hierzu eine Frage: Wie hast Du die, über das REST API gelieferten Werte, ausgewählt? An meinem Controller hängen noch zwei Sensoren (Regensensor und Durchflussmesser), die nicht in den Readings auftauchen.

Gruss, JP

xasher

Hallo JP,

einen Regensensor habe ich auch. Allerdings sehe ich ihn so nicht in den API Werten.
Siehst du sie?

Gib mal das die URLs mit deinem API Key ein:


https://api.hydrawise.com/api/v1/statusschedule.php?api_key=XXX...
https://api.hydrawise.com/api/v1/customerdetails.php?api_key=XXX...


Grüße,
Alex

jpst

Lieber Alex,

Ich habe HTTPMOD mit dem Request für den "statusschedule.php" inkl. meinem API-Key:

define DEV_NAME HTTPMOD https://api.hydrawise.com/api/v1/statusschedule.php?api%20key=<API-Key> 60

gefüttert und bekomme das folgende json zurück:

{"time":1588259576,"nextpoll":60,"message":"","simRelays":1,"options":1,"master":6,"master_timer":0,"master_post_timer":0,"expanders":[],"sensors":[{"input":0,"type":3,"mode":0,"timer":0,"offtimer":0,"rate":5,"relays":[{"id":527991},{"id":527993},{"id":527998},{"id":528000}]},{"input":1,"type":1,"mode":1,"timer":0,"offtimer":0,"relays":[{"id":527991},{"id":527993},{"id":527998},{"id":528000}]}],"relays":[{"relay_id":527991,"time":1576800000,"type":110,"run":0,"relay":1,"name":"Tappeto lato es","period":259200,"timestr":""},{"relay_id":527993,"time":1576800000,"type":110,"run":0,"relay":2,"name":"Tappeto central","period":259200,"timestr":""},{"relay_id":527998,"time":1576800000,"type":110,"run":0,"relay":3,"name":"Tappeto lato ov","period":259200,"timestr":""},{"relay_id":528000,"time":1576800000,"type":110,"run":0,"relay":4,"name":"Goccia goccia","period":259200,"timestr":""}]}

Die Sensoren sind mit dabei ... bei HTTPMOD bekommst Du mit dem

attr jsonALLJSON 1

alle Readings einzeln ausfgelistet. Achtung, die Zonen wurden von einem Gärner aus dem Tessin eingerichtet und werden vom API nicht vollständig übertragen. Tappeto lato es = tappeto last est (Osten)...

Morgen geht's weiter.
Gruss, JP

jpst

Lieber Alex

Ich habe mal eine Liste aller Readings erstellt, welche von vom Device HYDRAWISE automatisch generiert werden. Diese habe ich versucht den Readings gegenüberzustellen, welche von HTTPMOD via statusschedule und customerdetails automatisch aus dem gelieferten JSON erzeugt werden. Ich hoffe, dass ich die von HYDRAWISE z.T gekürzten Reading-Bezeichnungen alle richtig zu den, via API gelieferten Readings, gemappt habe. Aus der Tabelle (CSV-Attachment) sollte ersichtlich sein, welche Readings durch das HYDRAWISE Device zusätzlich erzeugt werden und welche Readings des APIs im HYDRAWISE-Dev fehlen. Es kann ja schon sein, dass nicht alle vorhandenen API-Daten benötigt werden aber auf die Sensordaten könnte ich für die Überwachung nicht verzichten.

Gruss, JP

samsmooth

#44
Hallo. Ich beschäftige mich auch gerade wieder mit der API. Ich möchte die Gartenpumpe komplett vom Strom trennen, wenn der Regensensor geöffnet ist. Leider finde ich keinen Eintrag in der API bzw. Reading. Wird der Sensorstatus wirklich geliefert?

"message":"","simRelays":1,"options":1,"expanders":[],"sensors":[{"input":0,"type":1,"mode":1,"timer":0,"offtimer":0,"relays":

"relay_id":1362813,"time":1576800000,"type":110,"run":0,"relay":1,"name":"","period":259200,"timestr":""

Was haben diese Werte zu bedeuten?

Interessant wäre auch die Wetterprognose abfragen zu können, bzw. ob eine Bewässerung erfolgen wird - egal ob über Wettervorhersage oder Sensor.
RPi3B+, HM-MOD-RPI-PCB USB, nanoCUL868 CC1101, Z-Wave USB