LaCrosseGateway - LaCrosse, PCA301 und EC3000 über wifi mit ESP8266 ohne Arduino

Begonnen von HCS, 07 November 2015, 14:39:36

Vorheriges Thema - Nächstes Thema

HCS

Zitat von: sash.sc am 18 November 2017, 17:10:19
Besteht die Möglichkeit eine Funktion einzubauen, die die empfangenen Daten über MQTT sendet ?
Nein, MQTT wird es nicht geben.

Saharel

Hi,

mir ist aufgefallen das am nextion Display der UpTime Wert nur mit dem letzten Wert der Home Seite des Gateways befüllt wird.
Solange ich die Webseite nicht aufrufe bzw. aktualisiere wird der Wert am nextion nicht aktualisiert.

Ist das so gewollt?

HCS

Zitat von: Saharel am 29 November 2017, 21:48:01
Hi,

mir ist aufgefallen das am nextion Display der UpTime Wert nur mit dem letzten Wert der Home Seite des Gateways befüllt wird.
Solange ich die Webseite nicht aufrufe bzw. aktualisiere wird der Wert am nextion nicht aktualisiert.

Ist das so gewollt?
Das war nicht gewollt. Ich nehme es auf die ToDo-Liste.

PeMue

Hallo HCS,

für die Erweiterung mit SC16IS750 sollte es doch egal sein, welche Daten über die serielle Schnittstelle gesendet werden, oder?
franky08 hat hier ein Problem geschildert, das ich nicht nachvollziehen kann.
Filtert das LGW irgendwelche Sonderzeichen raus? Ist der SC16IS750 besonders dritisch beim Timing (Tx wird wohl nicht übertragen)?
Könntest Du Dir das bitte mal anschauen?

Danke + Gruß

PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

HCS

Zitat von: PeMue am 05 Dezember 2017, 16:27:51
für die Erweiterung mit SC16IS750 sollte es doch egal sein, welche Daten über die serielle Schnittstelle gesendet werden, oder?
So sollte es sein.

Zitat von: PeMue am 05 Dezember 2017, 16:27:51
franky08 hat hier ein Problem geschildert, das ich nicht nachvollziehen kann.
url=http://SC16IS750  ;)
Kannst Du nochmal einen neuen Anlauf mit dem Link machen?

Zitat von: PeMue am 05 Dezember 2017, 16:27:51
Filtert das LGW irgendwelche Sonderzeichen raus?
Nicht dass ich wüsste

Zitat von: PeMue am 05 Dezember 2017, 16:27:51
Ist der SC16IS750 besonders dritisch beim Timing (Tx wird wohl nicht übertragen)?
Wenn man irre schnell Daten füttert (Richtung: serial device ->SC16IS750 -> FHEM ), kann es sein, dass man den recht kleinen fifo des SC16IS750 voll macht und dann Daten verliert.
Das LGW muss die Daten vom SC16IS750 "gelegentlich" aus dem fifo holen und an FHEM senden, kann das aber natürlich nicht hauptamtlich machen, es hat ja noch mehr zu tun.

PeMue

Zitat von: HCS am 05 Dezember 2017, 17:12:33
Kannst Du nochmal einen neuen Anlauf mit dem Link machen?
Ups, sorry. Diesmal nicht mit Edit (hab's aber oben trotzdem korrigiert): https://forum.fhem.de/index.php/topic,80226.msg726351.html#msg726351

Gruß Peter
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

schmadde

Ich habe dank der Platinen von PeMue nun auch ein LacrosseGateway laufen. Die Einbindung des Gateways selbst ging gut und auch meine Lacrosse-Sensoren (TX 29) funktionieren ohne Probleme.

Ich bekomme allerdings meine EC3000 Steckdosen nicht erkannt. Gibt es da irgendeine Magie, die ich in der Doku nicht entdeckt habe die man braucht, um die ans Laufen zu bekommen?

Mein Setup sieht wie folgt aus: NodeMCU/Devkit, 2x RFM69C(W) (der erste im Toggle Mode zwischen 17.241 und 9.579, der zweite exclusiv für EC3000 mit 868300 und 20.000 Data Rate). Ich habe noch per USB einen Jeelink am FHEM Server hängen, mit dem ich die Steckdosen bisher auslese. Der erreicht aber nicht alle Steckdosen, drum wollte ich den durch ein LGW erweitern oder durch zwei ersetzen (sollte ein LGW alle empfangen können natürlich nur eins).

Im Log sehe ich dauernd Einträge, die aussehen als ob sie von den Steckdosen kommen könnten (die ersten zwei Byte in den eckigen Klammern ähneln verdächtig den IDs der Steckdosen) - ich denke also mal, der Empfang klappt. Werden die EC3000 Devices überhaupt per autocreate angelegt? Falls nicht, wie legt man sie an? Falls doch, wie könnte man das Problem einkreisen?


PeMue

Zitat von: schmadde am 06 Dezember 2017, 20:27:30
Ich bekomme allerdings meine EC3000 Steckdosen nicht erkannt. Gibt es da irgendeine Magie, die ich in der Doku nicht entdeckt habe die man braucht, um die ans Laufen zu bekommen?
Schau mal im Wiki nach, siehe https://wiki.fhem.de/wiki/LaCrosseGateway_V1.x#Inbetriebnahme_von_Energy_Count_3000_.28EC3000.29

Gruß PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

schmadde

Zitat von: PeMue am 06 Dezember 2017, 20:35:33
Schau mal im Wiki nach, siehe https://wiki.fhem.de/wiki/LaCrosseGateway_V1.x#Inbetriebnahme_von_Energy_Count_3000_.28EC3000.29
Da steht halt auch nur drin, wie man das Radio konfigurieren muss, um die Daten zu empfangen. Ich glaube aber, dass der Empfang klappt (wenn ich wüsste, wie man die Zeilen im Log dekodiert, wäre ich sicher - aber da die ersten zwei Bytes in eckigen Klammern eigentlich immer eine mir bekannte Steckdosen-ID ist, bin ich recht sicher).

Beispiel: 20:44:24: OK 22 160 82 2 198 163 82 1 68 121 79 0 7 55 25 0 0 94 233 1 0 [A0 52 A3 52 00 00 79 4F 00 00 00 05 76 DB 2B 00 00 5E E9 00 12 06 3D 76 47 82 76 BF E0 2C 60 00 00 00 06 14 40 10 06 7B B7]

A0 52 ist die ID von der Messteckdose an meiner Spülmaschine.

Ich vermute, dass einfach die Devices im FHEM nicht da sind und sozusagen die Verknüpfung fehlt. Da wüsste ich aber nicht wie man das anlegt.

Wäre auch dankbar für einen Hinweis, ob zwei EC3000 Empfänger gleichzeitig überhaupt gehen - egal jetzt ob 2x LGW oder 1x LGW, 1x Jeelink. Die Zuordnung für Devices könnte ich ja dann manuell machen und einen Autocreate-Filter anlegen (den brauch ich sowieso bald, weil ich schon hunderte Geister-EC3000s habe und soweit ich das sehe auch welche vom Nachbarn).

Wie heissen die Devices eigentlich, wenn sie "autocreated" werden? Beim Jeelink immer EC3000_<ID_in_Hex>.

HCS

Zitat von: schmadde am 06 Dezember 2017, 20:42:36
Beispiel: 20:44:24: OK 22 160 82 2 198 163 82 1 68 121 79 0 7 55 25 0 0 94 233 1 0 [A0 52 A3 52 00 00 79 4F 00 00 00 05 76 DB 2B 00 00 5E E9 00 12 06 3D 76 47 82 76 BF E0 2C 60 00 00 00 06 14 40 10 06 7B B7]
Ja das ist eine EC3000

Zitat von: schmadde am 06 Dezember 2017, 20:42:36
Da wüsste ich aber nicht wie man das anlegt.
define Spuelmaschine EC3000 A052

Bei mir werden die aber von autocreate angelegt, sobald sie das erste mal empfangen werden.

Zitat von: schmadde am 06 Dezember 2017, 20:42:36
Wäre auch dankbar für einen Hinweis, ob zwei EC3000 Empfänger gleichzeitig überhaupt gehen
Ja, das geht. FHEM verwirft Daten, die doppelt empfangen wurden, automatisch.


Zitat von: schmadde am 06 Dezember 2017, 20:42:36
Wie heissen die Devices eigentlich, wenn sie "autocreated" werden? Beim Jeelink immer EC3000_<ID_in_Hex>.
Genau so. Dem EC3000 Modul ist es egal, ob das von JeeLink oder LaCrosseGateway kommt.

Das Prinzip ist ja: irgend ein (oder mehrere) IODev (JeeLink oder LGW) empfängt die Daten und gibt sie an das EC3000-Modul weiter.
Ab da ist der weiter Verlauf dann immer gleich.

schmadde

Ah jetzt verstehe ich. Danke @HCS für den Nachhilfeunterricht. Wenn die Devices genau gleich heissen und behandelt werden ist klar, dass sie nicht angelegt werden: es gibt sie ja bereits. Ich habe mal testweise das IODev einer Steckdose von Jeelink auf LGW umgestellt und siehe da: es scheint zu funktionieren.

Nachdem ich jetzt grade 70 (!) Geister-EC3000 aus meiner Config und dem Logverzeichnis getilgt habe, hab ich das Autocreate für alle devices die mit EC3000 anfangen abgeschaltet und werde in Zukunft die Dinger manuell anlegen. 63 haben übrigens noch nie ein Byte Daten empfangen und von den anderen 7 haben 5 nur einmal einen kompletten Datensatz im Log stehen gehabt. Da die Werte teils ziemlich unplausibel waren (>3,5kW Momentanleistung, zig MWh Gesamtverbrauch) denke ich dass es sich um Übertragungsfehler handelt.

Gibts nicht irgendeine Möglichkeit, solche Fehler rauszufiltern, bevor sie entstehen? Also Devices nur anlegen, wenn sie wenigstens einmal, besser zweimal gültige Daten empfangen haben?

HCS

Zitat von: schmadde am 06 Dezember 2017, 23:11:35
Also Devices nur anlegen, wenn sie wenigstens einmal, besser zweimal gültige Daten empfangen haben?
Schau Dir mal das autocreateThreshold attribut von autocreate an

aus der commandref:
ZitatautocreateThreshold
A list of <type>:<count>:<interval> triplets. A new device is only created if there have been at least count events of TYPE type in the last interval seconds.
attr autocreateThreshold LaCrosse:2:30,EMT7110:2:60

Bedeutet: LaCrosse devices werden nur angelegt, wenn der Sensor innerhalb 30 Sekunden zwei mal empfangen wurde.
Für Dich wäre das dann
attr autocreateThreshold LaCrosse:2:30,EC3000:2:30

schmadde


schmadde

Noch ne Frage zum LGW. Ich habe mir ein Display mit SSD1306 Chip bestellt, leider hab ich wohl nicht aufgepasst und eins mit I2C/SPI alternativ bestellt. Da steht was im Wiki von "Platine muss modifiziert werden". Kennt jemand folgende Platine und weiss was man da machen muss? Vermutlich SMD Widerstände umlöten / hinzufügen:

(https://farm5.staticflickr.com/4686/27651693529_b696f6126b_z.jpg)Ssd1306

PeMue

Hallo schmadde,

HCS hat hier mal eine Abhanldung darüber verfasst.

Gruß PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser