Maverick ET-733 und SIGNALduino

Begonnen von blub145, 18 Februar 2016, 23:01:13

Vorheriges Thema - Nächstes Thema

Ralf9

Ich habe den Fehler gefunden. Hier ist eine neue Version des 14_SD_WS_Maverick.pm Moduls:
https://raw.githubusercontent.com/Ralf9/RFFHEM/master/FHEM/14_SD_WS_Maverick.pm
und hier ist der patch:
https://github.com/Ralf9/RFFHEM/commit/98c2fbad5c12ecf91ab7910e59004662e9e7c935


Hier sind noch einige todos:
Die checksum wird nicht überprüft, dies einzubauen dürfte aber recht kompliziert sein.
Das Einbauen einiger Plausibilitätsprüfungen müsste eigentlich ausreichend sein:

P47#599599A959996699A969
0  2   6 7     12
ss 11111 22222 uuuuuuuu
59 9599A 95999 6699A969

0 - 1  startup  # 0x6A oder 0x59
2 - 6  Temp1   # zulässige Ziffern: 569A
7 - 11 Temp2  # zulässige Ziffern: 569A
12 .. unknown

Der Messbereich des Barbecue- und Grill-Thermometers liegt zwischen 0 ºC (32 ºF) und 300 ºC (572 ºF)


Es wurde mit meiner Firmware V 3.3.2-dev getestet und es funktioniert recht gut
Zitat von: Papaloewe am 05 März 2018, 18:51:58
2018.03.04 19:51:41 4 : sduino/msg READ: MC;LL=-470;LH=528;SL=-221;SH=276;D=AA999559959A695996A65A9566;C=249;L=104;s13;b13;O;w;
2018.03.04 19:51:41 4 : sduino: Found manchester Protocol id 47 clock 249 -> Maverick protocol
2018.03.04 19:51:41 4 : sduino/msg READ: MC;LL=-482;LH=511;SL=-230;SH=264;D=AA999559959A695996A65A9566;C=247;L=104;s17;b17;O;w;
2018.03.04 19:51:41 4 : sduino: Found manchester Protocol id 47 clock 247 -> Maverick protocol
2018.03.04 19:51:41 4 : sduino/msg READ: MC;LL=-487;LH=507;SL=-229;SH=261;D=AA999559959A695996A65A9566;C=247;L=104;s17;b17;O;w;
2018.03.04 19:51:41 4 : sduino: Found manchester Protocol id 47 clock 247 -> Maverick protocol
2018.03.04 19:51:42 4 : sduino/msg READ: MC;LL=-488;LH=502;SL=-241;SH=256;D=AA999559959A695996A65A9566;C=247;L=104;s17;b17;


Das sieht jetzt sehr gut aus! Die Grillsaisson kann kommen.

Zitat von: Wuehler am 04 März 2018, 13:30:26
Gerade heimgekommen und Nachricht zum Post bekommen. Test durchgeführt: SIEHT GUT AUS  :)
Heute Abend gibts Pizza vom Grill, da teste ich dann etwas länger.
DANKE

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Wuehler

Hallo Ralf,

zwei Verständnisfragen:

  • Mit der checksum-Prüfung meinst du, dass man dann zwei Maverick-Grillthermometer parallel betreiben kann? Das könnte tatsächlich komplizierter werden, da die checksum sich bei jedem Einschalten des Thermometers ändert.
  • Mit Plausiprüfung meinst du, dass es einen Logeintrag gibt und der Temperaturwert z.B. auf -1 gesetzt wird?

ToDos könnten zusätzlich sein:

  • Anpassung der commandref (Englisch passt nicht zu Deutsch).
  • wenn zu einerTemperatur länger nichts kommt, diese Termperatur auf -1 setzen, um darauf reagieren zu können.

Viele Grüße,
Dirk

Ralf9

Ich habe für Maverick in die 00_SIGNALduino.pm und 14_SD_WS_Maverick.pm Plausibilitätsprüfungen eingebaut:
https://github.com/Ralf9/RFFHEM/commit/215ac20f641fbda69f9048b33acf41986ae76fff
https://raw.githubusercontent.com/Ralf9/RFFHEM/master/FHEM/14_SD_WS_Maverick.pm
und
https://github.com/Ralf9/RFFHEM/commit/ab76f9286cb55fd37f0074cb32f830d2e52c0fe3
https://raw.githubusercontent.com/Ralf9/RFFHEM/master/FHEM/00_SIGNALduino.pm

ZitatMit der checksum-Prüfung meinst du, dass man dann zwei Maverick-Grillthermometer parallel betreiben kann?
Evtl auch, dies dürfte dann recht kompliziert werden.

ZitatMit Plausiprüfung meinst du, dass es einen Logeintrag gibt und der Temperaturwert z.B. auf -1 gesetzt wird?
Bei nicht plausiblen Temperaturen wird kein readingsupdate gemacht.

Zitatwenn zu einerTemperatur länger nichts kommt, diese Termperatur auf -1 setzen, um darauf reagieren zu können.
Dies ist nicht so einfach. Eine Möglichkeit wäre dies über einen Internal Timer zu lösen, der bei jedem readingsupdate neu gesetzt wird,

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Wuehler

ZitatEine Möglichkeit wäre dies über einen Internal Timer zu lösen, der bei jedem readingsupdate neu gesetzt wird,
So hatte ich mir das gedacht. Setze mich da mal ran. Man muss ja einfach erkennen können, wenn ein Temperaturfühler ausfällt oder die Batterie leer ist.

pejonp

@Wuehler

Ich glaube so eine Funktion oder Modul gibt es schon in fhem. Wie genau diese heißt weis ich jetzt aber nicht.

Pejonp
LaCrossGW 868MHz:WT470+TFA+TX37-IT+EMT7110+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080)+Velux KLF200+MAX!+HM-MOD-UART:Smoke HM-SEC-SD+VITOSOLIC 200 RESOL VBUS-LAN+SolarEdge SE5K(Modbus)+Sonnen!eco8(10kWh)+TD3511+DRT710M(Modbus)+ZigBee+Z-Wave+MQTT+vitoconnect

Wuehler

Moin pejonp,

Du meinst bestimmt watchdog. Man kann sich die Ausfallerkennung zusammenbasteln. Vermutlich braucht man dann noch ein dummy zusätzlich oder zumindest userreadings. Es ist aber wesentlich komfortabler, wenn das Modul gleich etwas mitbringt.

VG,
Dirk

Papaloewe

Ich habe die beiden Dateien von Ralf9 gerade nochmal angetestet.
Dabei sind mir keine negativen Auswirkungen aufgefallen.
Es scheint weiterhin gut zu funktionieren.

Vielen Dank und es ist bald mal Zeit für ein Pulled-Pork  ;D

Gruß
Thomas

Wuehler

@Papaloewe: Wann ist es soweit? Und wie weit ist es zu dir? ;)

@Ralf: Im Anhang eine Version mit InternalTimer. Die Temperaturen werden darin auf -1 gesetzt, wenn sie 2 Minuten nicht vom Maverick gesendet werden (bzw. vom sduino empfangen werden). Funktioniert auch wenn nur ein Termperaturfühler ausfällt.

Papaloewe

@Wuehler
Habe deine geänderte Maverick.pm jetzt bei mir im Test. Bisher keine Auffälligkeiten.

@Ralf9 oder Sidey
Die Signalduino.pm aus dem heutigen fhem-update funktioniert bei mir nicht mehr mit dem Maverick.
Die letzte Version von Ralf9 wieder kopiert und es lief dann sofort wieder...


Papaloewe

ZitatDie Temperaturen werden darin auf -1 gesetzt, wenn sie 2 Minuten nicht vom Maverick gesendet werden (bzw. vom sduino empfangen werden).

Könnte man das noch konfigurierbar machen?
Ich finde 2 Minuten sind zu wenig.

Gruß
Thomas

Wuehler

#85
Klaro. Kann ich machen. Hast du einen Vorschlag, wie das Attribut heißen soll. Ist -1 OK? Einen state den man on-/offline setzen kann fand ich nicht so sinnig, da der dann für beide Temperaturen gleichzeitig gelten würde.
Edit: Und welchen Default-Wert schlägst du vor?

Grüße,
Dirk

Ralf9

Zitat von: Papaloewe am 08 März 2018, 19:55:19
@Ralf9 oder Sidey
Die Signalduino.pm aus dem heutigen fhem-update funktioniert bei mir nicht mehr mit dem Maverick.
Die letzte Version von Ralf9 wieder kopiert und es lief dann sofort wieder...

Wenn Du in der Protokolldefinition 47 die Zeile 1018 löscht, müsste es funktionieren. 
Zeile 1018   polarity => 'invert'

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Wuehler

Hallo,

Ich möchte die deutsche und englische commandref zum Modul SD_WS_Maverick glattziehen, sowie die Temperaturen bei Inaktivität auf -1 setzen.
@Ralf9: Ein paar Fragen:
1. Wem soll ich patches zur Verfügung stellen? Dir oder laut maintainer.txt eher Sidey79 (=Sidey?)?
2. Wenn ich es richtig sehe ist das Modul rein für die beiden Grillthermometer 732 und 733, und nicht wie in der englischen commandref auch für Eurochron EAS800z und Technoline WS6750/TX70DTH (sieht nach einer Kopie vom SD_WS07 aus). Korrekt? Dann passe ich die commandref entsprechend an.
3. Ausserdem gibt es wie in der commandref eigentlich beschrieben auch keine Device-ID, oder? Die wird vom Thermometer ja bei jedem Neustart zufällig gesetzt. Daher ist es auch nicht möglich zwei Maverick-Funkthermometer parallel an fhem anzubinden, oder liege ich da falsch? Würde dann auch dazu etwas in die commandref aufnehmen.
4. Laut commandref gibt es das Attribut model, setzbar ist es aber nicht. Würde das dann entfernen.


@Papaloewe: Bei meinem 732er werden nur temp1 und temp2 übertragen. Du hast ja das 733 wird da auch der Batteriestatus und ein channel übertragen? Die Luftfeuchte deines Grills wie in der commandref dokumentiert wird bestimmt nicht vom 733 bereitgestellt, oder?
Als neues Attribut habe ich inaktivityInterval eingeführt (Defaultwert ist 5 Minuten, das passt dann auch zu dem beim define gesetzten event-min-interval).

Ich habe alle (angenommenen) Änderungen in die Version im Anhang übernommen.

Viele Grüße,
Dirk

Papaloewe

#88
Hallo Dirk,

Zitat@Papaloewe: Bei meinem 732er werden nur temp1 und temp2 übertragen. Du hast ja das 733 wird da auch der Batteriestatus und ein channel übertragen? Die Luftfeuchte deines Grills wie in der commandref dokumentiert wird bestimmt nicht vom 733 bereitgestellt, oder?

Auch bei meinem ET733 wird nur temp1 und temp2 übertragen.

Gruß
Thomas


Ich sehe gerade da ist auch noch das Reading "MessageType" (59).
Keine Ahnung was das sein soll, zumal es auch noch im State auftaucht. Warum?
state  T1: 24 T2: 25 S: 59

Sidey

Hi Wuehler,


Am einfachsten ist es, wenn Du mit einen Pull Request auf Github mit deiner Änderung einstellst.

Alternativ gehen auch Patches, aber die kann man dann nicht Inline kommentieren.

Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker