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

Wzut

Zitat von: HCS am 22 November 2015, 20:09:55
Hast Du evtl. etwas anderes erwartet  ;D ;D ;D
*Hust*  .... frag lieber nicht oder willst du belogen werden ?
Ich habe deinen LaCrosse Sketch auf den ESP gehauen, leider hängt der Watchdog dann schon beim Init in einer Resetschleife fest, daher werde ich jetzt langsam Stück für Stück das Ganze aufbauen und sehen ab wann es wo klemmt.
Was mir aber noch aufgefallen ist : Nach deiner Zeichnung ist ja der Interrupt Ausgang des RFM gar nicht mehr verbunden, kommst du nun ganz ohne Interrupt Verarbeitung aus ? 
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

HCS

Zitat von: Wzut am 23 November 2015, 14:32:54
Ich habe deinen LaCrosse Sketch auf den ESP gehauen, leider hängt der Watchdog dann schon beim Init in einer Resetschleife fest, daher werde ich jetzt langsam Stück für Stück das Ganze aufbauen und sehen ab wann es wo klemmt.
Wie ich schon geschrieben hatte, der LaCrosse Sketch läuft nicht grad mal so auf dem ESP. So kompatibel ist die API dann doch nicht.
Darfst aber gerne die Nummer, bis das geht, auch mal durchmachen ...  :D :D :D


Zitat von: Wzut am 23 November 2015, 14:32:54
Was mir aber noch aufgefallen ist : Nach deiner Zeichnung ist ja der Interrupt Ausgang des RFM gar nicht mehr verbunden, kommst du nun ganz ohne Interrupt Verarbeitung aus ?
Ja, das war im LaCrosse Sketch schon so und ist beim LGW auch so. Das funktioniert ohne Interrupts.

Omega-5

Hallo HCS,

ich habe mir testhalber auch mal ein LGW zusammen gestöpselt. NodeMCU Dev. Amica und RFM69H gerade aus CN bekommen.
Was soll ich sagen, Software v1.05 drauf, Setup auf feste IP und es läuft.  :)
Vorhandene JeeLink vom Raspi-2 entfernt, DEV in IP:81 geändert und in FHEM läuft alles wie vorher (TX29).
Was du vieleicht noch in den ersten Post schreiben solltest, den Datenport 81 nicht versuchen im Browser (FireFox) zu öffnen, das hat mir zweimal die Settings zerschossen.  :(

Gruß Friedrich
RaspberryPi2, nanoCUL, 3x DS18B20, FS20: 4x Funk-Schalter ST-4, LaCrosseGW,
HomeMatic: HMLAN, HM-WDS10-TH-O, HM_MYS_RelaisBoard,
I2C: HYT221 über modifiziertes Modul I2_I2C_SHT21.pm (Q&D),

HCS

Zitat von: Omega-5 am 23 November 2015, 16:36:50
ich habe mir testhalber auch mal ein LGW zusammen gestöpselt. NodeMCU Dev. Amica und RFM69H gerade aus CN bekommen.
Was soll ich sagen, Software v1.05 drauf, Setup auf feste IP und es läuft.  :)
Vorhandene JeeLink vom Raspi-2 entfernt, DEV in IP:81 geändert und in FHEM läuft alles wie vorher (TX29).
Das freut mich. Danke für die Rückmeldung.
Mit welchem Tool hast Du geflasht?

Zitat von: Omega-5 am 23 November 2015, 16:36:50
Was du vieleicht noch in den ersten Post schreiben solltest, den Datenport 81 nicht versuchen im Browser (FireFox) zu öffnen, das hat mir zweimal die Settings zerschossen.  :(
Ohh. OK muss ich mal ausprobieren, da bin ich noch garnicht drauf gekommen, das man das machen würde...
Ich habe es in Beitrag #1 reingeschrieben und werde aber mal schauen, warum das passiert und versuchen, es zu verhindern.

Omega-5

#109
Zitat von: HCS am 23 November 2015, 17:07:33
Mit welchem Tool hast Du geflasht?

Unter Windows 7 mit ESP8266Flasher.exe (Win64).
https://github.com/nodemcu/nodemcu-flasher

Gruß Friedrich

PS: 5 mal editiert Link klappte nicht.
RaspberryPi2, nanoCUL, 3x DS18B20, FS20: 4x Funk-Schalter ST-4, LaCrosseGW,
HomeMatic: HMLAN, HM-WDS10-TH-O, HM_MYS_RelaisBoard,
I2C: HYT221 über modifiziertes Modul I2_I2C_SHT21.pm (Q&D),

Wzut

Zitat von: HCS am 23 November 2015, 15:45:44
Darfst aber gerne die Nummer, bis das geht, auch mal durchmachen ...  :D :D :D
Ach was bist du heute wieder so gut zu mir .... wie die Mutter ohne Brust  :P
by the way , gerade aus dem Seriellen Monitor meiner mini Version geholt :
End receiving, HEX raw data: 9F C6 10 6A CB AA AA 0 0 7F FF FF FF FF FF FF
OK 9 63 1 4 186 106
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

HCS

#111
Version 1.06
Hier: http://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/FHEM/firmware/LaCrosseGateway.bin
Ab morgen nach einem FHEM-Update auch lokal in <FHEM-Installations-Verzeichnis>/FHEM/firmware/JeeLink_LaCrosseGateway.bin

Neuerungen:

Port 81
Wenn man den Port 81 im Browser öffnet, wurden die gespeicherten Settings zerschossen. Ist nun verhindert.

Optische Darstellung der Initialisierung
Beim Start und der Initialisierung wird nun mit der Board-eigenen LED signalisieren, was gerade passiert
- 5 schnelle blinks direkt nach dem Start, als Zeichen, dass ein Reset stattgefunden hat
- Blinken im Sekundentakt, während versucht wird, sich mit einem wlan zu verbinden.
- Dauerleuchten, wenn kein Connect zu einem wlan möglich war und der AccessPoint geöffnet wurde.
- LED aus, wenn der Connect zu einem wlan geklappt hat und dann vereinzeltes Blinken, wenn Daten an FHEM übermittelt werden

FramesPerMinute
Es gibt einen neuen Statuswert "FramesPerMinute". Dieser gibt an, wie viele frames von Sensoren in der letzten Minute erfolgreich empfangen, dekodiert und verarbeitet wurden.
An ihn kann man eine Überwachung dranhängen, die alarm schlägt, wenn weniger als ein Grenzwert empfangen wird, dann ist nämlich was faul.
Ein Beispiel, wie dieser Wert einen Tag lang geloggt aussieht, habe ich angehängt.
Danke AxelSchweiss, für diese geniale Idee.
ReceivedFrames gibt an, wie viele seit dem Start des LGW empfangen wurden.

Statuswerte abrufen:
Mit <IP-des-LGW>/state können die Statuswerte, die das LGW-Frontent anzeigt, als XML zur Weiterverarbeitung abgerufen werden.
Beispiel, was man zurückbekommt:
<LGW>
  <Info Key="UpTimeSeconds" Value="107086"/>
  <Info Key="UpTimeText" Value="1Tg. 5Std. 44Min. 46Sek. "/>
  <Info Key="WIFI" Value="NeverTellThem"/>
  <Info Key="MacAddress" Value="18:FE:34:9A:6D:48"/>
  <Info Key="ChipID" Value="10120520"/>
  <Info Key="ReceivedFrames" Value="93593"/>
  <Info Key="FramesPerMinute" Value="52"/>
</LGW>


LGW-WebFrontend:
Hat eine Navigation bekommen
Die Setup-page hat neue Eigenschaften bekommen

Statuswerte als KeyValueProtocol
Entsprechend der vorgenommenen Konfiguration auf der Setup-page sendet das LGW (default alle 10 Sekunden) seine Statuswerte an FHEM.
Dort werden sie von dem neuen Modul "KeyValueProtocol" als readings angezeigt. Sobald das LGW das erste Mal (also ab V1.06) Statuswerte schickt, wird bei aktivem AutoCreate automatisch das device angelegt. Siehe angehängtes KVP.png (Nachtrag: das doppelte UpTime reading bitte übersehen, ist noch eine Altlast)

OTA-Firmware-Update
Wem der Begriff fremd ist: OTA steht für "Over-The-Air" und ermöglicht es, die Firmware des LGW über das wlan zu aktualisieren, anstatt es per USB zu flashen.
Das ist noch fühes Stadium, aber wenn man es nicht rausgibt, treten auch keine Fehler auf  :)
Um ein OTA-Update zu ermöglichen, benötigt man einen WebServer, der die Firmware (JeeLink_LaCrosseGateway.bin) bereitstellt. Das kann jeder beliebige WebServer sein, auf den man die .bin legen kann.
Was sich anbietet: FHEM dafür verwenden. In FHEM kann man HTTP-Server definieren.
Beispiel:
define firmware HTTPSRV firmware FHEM/firmware firmware
Ob die Firmware korrekt bereit gestellt wird, kann man einfach im Browser testen.
Mit http://<IP des FHEM-Servers>:8083/fhem/firmware/JeeLink_LaCrosseGateway.bin muss man einen Download angeboten bekommen.

Auf der Setup-Page des LGW konfiguriert man dann im Abschnitt "OTA update" diesen Server.
OTA-Server: <IP des FHEM-Servers>
OTA-Port: 8083
OTA-url: /fhem/firmware/JeeLink_LaCrosseGateway.bin
"Save and restart" nicht vergessen.

Danach kann man dann auf der Seite "OTA-Update" des LGW zukünftig das Update ausführen.
Falls das OTA-Update fehlschlägt und die Firmware auf dem LGW zerschossen hat, kann man das LGW dadurch retten, dass man es wie bisher per USB flasht.

Sorry, viel getan, also muss man auch viel beschreiben  ;)

Olly

Wow,

da hat sich ja wieder eine ganze Menge getan. RESPEKT!!!!
Werde die neue Firmware dann mal probieren.
Mittlerweile ist mein RFM-MODUL auch angekommen, muss es nur noch verkabeln und anschliessen.

Danke für die tolle Entwicklung und Gruß

      Olly
BananaPi 1GB;NetCSM 868MHz, miniCUL 433MHz, LaCrosseGateway, 2x SignalESP; FHEM 6.2

HCS

Zitat von: Olly am 28 November 2015, 10:40:00
Werde die neue Firmware dann mal probieren.
Ja, unbedingt, ich will ja wissen, ob es funktioniert  ;D

@All: Tip der Woche: nach dem Speichern der Settings oder einem OTA-Update nicht den Browser mit F5 aktualisieren, sonst läuft es gleich nochmal ab, sondern mit "Zurück" wieder auf die vorhergehende Seite gehen.

Wzut

Mein Devkit 1.0 ist inzwischen da, habe nun damit auch deine neue Version getestet, allerdings wieder mit dem Fehler das die Einstellungen nicht gespeichert werden und das ding immer als AP läuft. Hier die Ausgabe auf der Konsole :
OK VALUES LGW 455198 UpTimeSeconds=207,UpTimeText=0Tg. 0Std. 3Min. 27Sek. ,WIFI=---,MacAddress=5C:CF:7F:06:F2:1E,ChipID=455198,ReceivedFrames=0,FramesPerMinute=0
OK VALUES LGW 455198 UpTimeSeconds=217,UpTimeText=0Tg. 0Std. 3Min. 37Sek. ,WIFI=---,MacAddress=5C:CF:7F:06:F2:1E,ChipID=455198,ReceivedFrames=0,FramesPerMinute=0
OK VALUES LGW 455198 UpTimeSeconds=227,UpTimeText=0Tg. 0Std. 3Min. 47Sek. ,WIFI=---,MacAddress=5C:CF:7F:06:F2:1E,ChipID=455198,ReceivedFrames=0,FramesPerMinute=0
OK VALUES LGW 455198 UpTimeSeconds=237,UpTimeText=0Tg. 0Std. 3Min. 57Sek. ,WIFI=---,MacAddress=5C:CF:7F:06:F2:1E,ChipID=455198,ReceivedFrames=0,FramesPerMinute=0
OK VALUES LGW 455198 UpTimeSeconds=247,UpTimeText=0Tg. 0Std. 4Min. 7Sek. ,WIFI=---,MacAddress=5C:CF:7F:06:F2:1E,ChipID=455198,ReceivedFrames=0,FramesPerMinute=0
Key:ctSSID  Val:xxx
Key:ctPASS  Val:xxx_xxx
Key:staticIP  Val:192.168.0.111
Key:staticMask  Val:255.255.255.0
Key:staticGW  Val:192.168.0.253
Key:HostName  Val:LaCrosseGateway
Key:KVInterval  Val:10
Key:otaServer  Val:
Key:otaPort  Val:
Key:otaURL  Val:
!
J�J!!�H��
1�8��ֈK�S��kH
ʄ ̇ֈ��!�n:�!H�:��

This is line 5 of void setup(void)
LaCrosseITPlusReader.Gateway V1.06
Read settings
Settings are:
Starting wifi
HostName is: LaCrosseGateway
Using DHCP
Trying to connect to an AP
..............................
We got no connection :-(
Starting Access point
Access point running: LaCrosseGateway_455198
Searching RFMs and BMP
Sending init String to FHEM

[LaCrosseITPlusReader.Gateway.1.06 {IP=192.168.222.1}]
Setup completely done
OK VALUES LGW 455198 UpTimeSeconds=17,UpTimeText=0Tg. 0Std. 0Min. 17Sek. ,WIFI=---,MacAddress=5C:CF:7F:06:F2:1E,ChipID=455198,ReceivedFrames=0,FramesPerMinute=0
OK VALUES LGW 455198 UpTimeSeconds=27,UpTimeText=0Tg. 0Std. 0Min. 27Sek. ,WIFI=---,MacAddress=5C:CF:7F:06:F2:1E,ChipID=455198,ReceivedFrames=0,FramesPerMinute=0
OK VALUES LGW 455198 UpTimeSeconds=37,UpTimeText=0Tg. 0Std. 0Min. 37Sek. ,WIFI=---,MacAddress=5C:CF:7F:06:F2:1E,ChipID=455198,ReceivedFrames=0,FramesPerMinute=0
OK VALUES LGW 455198 UpTimeSeconds=47,UpTimeText=0Tg. 0Std. 0Min. 47Sek. ,WIFI=---,MacAddress=5C:CF:7F:06:F2:1E,ChipID=455198,ReceivedFram
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

HCS

Zitat von: Wzut am 29 November 2015, 19:14:56
Mein Devkit 1.0 ist inzwischen da, habe nun damit auch deine neue Version getestet, allerdings wieder mit dem Fehler das die Einstellungen nicht gespeichert werden und das ding immer als AP läuft.
Gibts doch nicht. Hast Du etwas Besonderes in SSID oder Passwort drin?
Versuch mal test / test, kann zwar dann nicht verbinden, aber um zu sehen, ob die Settings gespeichert werden.

Olly

Hallo,

ich habe jetzt auch meine nodemcu mit dem RFM69 verheiratet und die 1.06er Firmware installiert.
Die vorher eingestellte Werte wurden übernommen und die Verbindung mit dem WLAN  klappt. RFM69 wird erkannt.
Auf der seriellen Konsole tauchen dann fast im Sekundentakt Zeilen mit OK und Zahlen auf.
Jeelink habe ich dann in FHEM definiert, wird auch richtig erkannt.
TOLL!!!!
Aber wie mache ich jetzt weiter?
Hab ein

set myLeeLink LaCrossePairForSec 120 ignore_battery

abgesetzt, aber es werden keine Devices angelegt (autocreate ist an). Was fehlt mir noch??

Gruß

      Olly
BananaPi 1GB;NetCSM 868MHz, miniCUL 433MHz, LaCrosseGateway, 2x SignalESP; FHEM 6.2

Wzut

Zitat von: HCS am 29 November 2015, 19:33:55
Hast Du etwas Besonderes in SSID oder Passwort drin?
Versuch mal test / test
Auch das habe ich breits erfolglos in den beiden Spielarten DHCP und Fixe IP hinter mir.
Inzwischen ist auch der RFM69 angeschlossen und wird erkannt, einziger Unterschied ist  das nun die LaCrosse "OK 9" Meldungen zusätzlich noch im seriellen log erscheinen.
Da aber wohl nur ich mit diesem Problem kämpfe sollte ich den Hebel vllt. an der Stelle ansetzen wo mein Handeln von dem der anderen User abweicht und da fällt mir spontan nur der Flashvorgang als solcher ein. Ich werde heute Abend mal schauen welche anderen Programme ich jetzt mit den Devkit unter Linux noch benutzen kann.
Vorbereitung zum flashen beim Devkit ist doch Flash Taste drücken und halten und dann einmal kurz Reset ?   
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Olly

Hallo,

@Wzut: Ich verwende unter Windows den NodeMCU Flasher (github.com/nodemcu/nodemcu-flasher). Da stelle ich einfach den richtigen COM-Port ein, wähle die. bin-Datei aus und klicke auf Flash. Die Buttons auf der NodeMCU brauche ich gar nicht zu drücken, das geht so.

Gruß

    Olly
BananaPi 1GB;NetCSM 868MHz, miniCUL 433MHz, LaCrosseGateway, 2x SignalESP; FHEM 6.2

Omega-5

Hier ist meine Feststellungen in Bezug auf ein Update von 1.05 auf 1.06.
Unter Windows 7 mit  ESP8266Flasher.exe (Win64) Version 1.06 geflasht, dazu musste auch kurz die Flashtaste gedrückt werden.
Danach Putty über die COMx mit 57600baud gestartet. Dabei kamen zuerst einige unlesbare Zeichen, dann aber
This is line 5 of void setup(void)
LaCrosseITPlusReader.Gateway V1.06
Read settings
usw.

mit den alten Daten,  nach dem Connect ein Absturz, Reboot und dann wieder von vorne mit anscheinend leerem Flash und als AP.  :(
Nach Neueingabe über das Webinterface und Neustart --> alles O.K.  :)
Ich habe noch kein OTA Update probiert. Kommt beim nächsten mal.

Gruß Friedrich

RaspberryPi2, nanoCUL, 3x DS18B20, FS20: 4x Funk-Schalter ST-4, LaCrosseGW,
HomeMatic: HMLAN, HM-WDS10-TH-O, HM_MYS_RelaisBoard,
I2C: HYT221 über modifiziertes Modul I2_I2C_SHT21.pm (Q&D),