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

Ahh, ist interessant, "Olly" hat es auch bei 0x40202e61 zerlegt.

Zitat von: oli82 am 13 November 2015, 14:33:38.............
Exception (0):
Das sieht so aus, als ob er nach dem erfolgreichen Verbinden mit dem konfigurierten wlan stirbt.
Ich nehme mal in der Version für morgen noch MDNS und das Bereitstellen des OTA Ports raus, um das als Ursache auzuschließen.
............. bedeutet, dass er nach 6,5 Sekunden eine Verbindung hatte.
Einen DHCP-Server habt ihr ja laufen, nehme ich mal an?
Weil, wenn er sich auf eurem AP anmelden konnte, aber dann keine IP bekommt, läuft vermutlich auch noch einiges aus dem Ruder.

Zitat von: oli82 am 13 November 2015, 14:33:38EDIT:
Nun habe ich mal ein RFM69 Modul angeschlossen:

Nach dem Programmstart und eintragen meiner WLAN Zugangsdaten folgt dann:

.............
Exception (0):
epc1=0x40202e61 epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000


Verstehe ich das richtig, dass der crash nur mit dem RFM69 kommt und nicht mit dem RFM12?




Es bleibt dabei, mit der Version morgen haben wir mehr logging und sehen, wo es stirbt.

oli82


Wzut

@HCS, womit erstellt du die .bin Datei bzw. was benutzt du aktuell an Quellcode ?
K.A. wieviel Arbeit du bis jetzt investiert hast, aber wäre die Arduino 1.6.5 IDE nicht eine Alternative ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

BlackFlag

Zitat von: HCS am 13 November 2015, 16:38:49
Ahh, ist interessant, "Olly" hat es auch bei 0x40202e61 zerlegt.
Das sieht so aus, als ob er nach dem erfolgreichen Verbinden mit dem konfigurierten wlan stirbt.
Ich nehme mal in der Version für morgen noch MDNS und das Bereitstellen des OTA Ports raus, um das als Ursache auzuschließen.
............. bedeutet, dass er nach 6,5 Sekunden eine Verbindung hatte.
Einen DHCP-Server habt ihr ja laufen, nehme ich mal an?
Weil, wenn er sich auf eurem AP anmelden konnte, aber dann keine IP bekommt, läuft vermutlich auch noch einiges aus dem Ruder.

Verstehe ich das richtig, dass der crash nur mit dem RFM69 kommt und nicht mit dem RFM12?




Es bleibt dabei, mit der Version morgen haben wir mehr logging und sehen, wo es stirbt.


Also ich habe einen RFM12 dran und habe genau den gleichen Stacktrace. Außerdem scheint der ESP noch nach einer IP zu fragen bevor er stirbt. So sieht es im syslog aus:

Nov 13 00:10:07 neon dhcpd: DHCPDISCOVER from 5c:cf:7f:xx:xx:xx via local
Nov 13 00:10:07 neon dhcpd: DHCPOFFER on 192.168.1.26 to 5c:cf:7f:xx:xx:xx (ESP_XXXXXXX) via local
Nov 13 00:10:08 neon dhcpd: DHCPDISCOVER from 5c:cf:7f:xx:xx:xx (ESP_XXXXXX) via local
Nov 13 00:10:08 neon dhcpd: DHCPOFFER on 192.168.1.26 to 5c:cf:7f:xx:xx:xx (LaCrosseGateway) via local

Ein DHCPACK kommt nicht mehr.

HCS

Zitat von: Wzut am 13 November 2015, 18:05:41
@HCS, womit erstellt du die .bin Datei bzw. was benutzt du aktuell an Quellcode ?
K.A. wieviel Arbeit du bis jetzt investiert hast, aber wäre die Arduino 1.6.5 IDE nicht eine Alternative ?
Genau damit entwickle ich es. Mit dem "Arduino core for ESP8266".
Nur so konnte die ganzen Libraries für RFM, LaCrosse, EMT7110, WSxxx usw. gemeinsam für den Arduino-LaCrosse Sketch und hierfür verwenden.
Ich werde auch irgendwann den Quellcode veröffentlichen und die Entwicklungsumgebung beschreiben (für die Arduino IDE).
Allerdings kommt es da drauf an, dass man die exakt passenden Libraries aus dem "Arduino core for ESP8266" Projekt verwendet und sonst noch einiges in der Entwicklungsumgebung wirklich passt. Vorerst will ich aber vermeiden, dass zusätzliche Rätsel durch unterschiedliche Entwicklungsumgebungen entstehen, die sich unterschiedlich verhaltende Firmwares produzieren. Als Entwicklungsumgebung verwende ich Visual Studio mit dem "Visual Micro" Plugin das die Arduino 1.6.5 toolchain verwendet.

@All:
Nun zur Version 1.04, die ich gerade an den ersten Beitrag oben gehängt habe:
Wichtig: Das Speichern der Settings im EEPROM hat sich geändert (u.A. wg. dem Passwort, das 63 Zeichen lang sein darf).
Das führt leider dazu, dass die bisher gespeicherten Settings nicht mehr funktionieren. Nach dem flashen der 1.04 wird das LGW (ab sofort die Abkürzung für LaCrosseGateway) also erst mal in den AP Modus gehen, und man muss auf der Setup-Page SSID und Passwort nochmal setzen. Wenn man das speichert, dann macht das LGW einen Reset. Das klappt aber (vermutlich wegen Problemen, die es noch in der API gibt) häufig, aber leider nicht immer. Darum ggf. den ESP einfach danach mal von der Spannungsversorgung trennen und wieder verbinden, dann macht er garantiert einen reset.

Um zu verfolgen, was beim Start des LGW passiert, protokolliert man die Ausgaben auf der seriellen Schnittstelle mit 57600 Baud mit.
Die könnt ihr dann mal posten, um zu schauen, wo wir stecken bleiben.
Passwort und ggf. SSID in dem Log vor dem posten anonymisieren, die wollen wir ja nicht publik machen. Vorher aber mal schauen, ob sie mit dem, was auf "/setup" eingegeben wurde, übereinstimmen.

Wenn das LGW sich auf den konfigurierten AP verbinden kann, sieht das Log so aus:
This is line 5 of void setup(void)
Read settings
Settings are:
Key:ctSSID  Val:mySSID
Key:ctPASS  Val:myPassword
Starting wifi
Trying to connect to an AP
......
connected :-)
SSID: mySSID
IP: 192.168.31.126
OTA running on port 8266
Searching RFMs and BMP
First RFM found: RFM69
Sending init String to FHEM

[LaCrosseITPlusReader.Gateway.1.04 (RFM69 f:868300 r:17241) {IP=192.168.31.126}]
Setup completely done
OK 9 38 1 4 86 70
OK 9 45 130 2 219 125


Wenn es keine Verbindung bekommt, dann so:
This is line 5 of void setup(void)
Read settings
Settings are:
Key:ctSSID  Val:mySSID
Key:ctPASS  Val:WrongPassword
Starting wifi
Trying to connect to an AP
..............................
We got no connection :-(
Starting Access point
Access point running: LaCrosseGateway_15936302
Searching RFMs and BMP
First RFM found: RFM69
Sending init String to FHEM

[LaCrosseITPlusReader.Gateway.1.04 (RFM69 f:868300 r:17241) {IP=192.168.222.1}]
Setup completely done
OK 9 2 1 4 176 106
OK 9 48 1 4 162 65
OK 9 45 1 4 173 106


Ich habe dann noch getestet, ob das LGW auch ohne RFM läuft (auch wenn es keinen Sinn macht, außer man will nichts empfangen sondern nur einen BMP180 draufpacken).
Bei mir geht das.



Wzut

Zitat von: HCS am 14 November 2015, 12:08:41
Ich werde auch irgendwann den Quellcode veröffentlichen und die Entwicklungsumgebung beschreiben
Sehr schön, freue mich schon darauf das nach meinem Urlaub auch mal von Grund auf zu testen. 
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Olly

Hallo,

Hört sich gut an mit der neuen Firmware. Werde sie heute Abend mal ausprobieren und mein Log dann posten.

Gruß

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

BlackFlag

#67
Bei mir läuft der ESP jetzt mit der 1.04. Allerdings wurde ich nicht nach neuen Setup-Einstellungen gefragt, sondern er hat sich direkt mit den alten Einstellungen mit meinem AP verbunden.
Das kam auf der seriellen raus.

This is line 5 of void setup(void)
Read settings
Settings are:
Starting wifi
Trying to connect to an AP
..
connected :-)
SSID: XXXX
IP: 192.168.1.26
OTA running on port 8266
Searching RFMs and BMP
Sending init String to FHEM

[LaCrosseITPlusReader.Gateway.1.04 {IP=192.168.1.26}]
Setup completely done

Ich habe zwar einen RFM12B dran, aber den scheint er nicht zu finden. Vielleicht habe ich den auch falsch verdrahtet. Hat jemand einen Link auf ein Bild wie ich den richtig mit dem ESP verdrahten muss?

EDIT: Beim 2. Neustart des ESP hat er dann auch den RFM12B gefunden und sofort irgendwas auf der seriellen geloggt.

OK 9 8 1 4 73 106
OK 9 8 1 4 73 106
OK 9 8 1 4 56 106
OK 9 8 1 4 73 106
OK 9 8 1 4 56 106
OK 9 8 1 4 73 106
OK 9 8 1 4 56 106

Olly

Hallo,

ich kann mit der Version 1.04 auch einen Teil-Erfolg melden.
Verbindung zu meinem Gastnetzwerk funktioniert:

This is line 5 of void setup(void)
Read settings
Settings are:
Key:ctSSID  Val:xxxxxxxx
Key:ctPASS  Val:yyyyyyyy
Starting wifi
Trying to connect to an AP
.....
connected :-)
SSID: xxxxxxxx
IP: 192.168.179.22
OTA running on port 8266
Searching RFMs and BMP
Sending init String to FHEM

[LaCrosseITPlusReader.Gateway.1.04 {IP=192.168.179.22}]
Setup completely done

Beim Versuch mich mit meinem "normalen" WLAN zu verbinden hängt es noch etwas. Habe aber den Grund wohl schon gefunden. Mein Passwort enthält das Zeichen "#" als Sonderzeichen, das mag der ESP wohl in der momentanen Version noch nicht. Im Log wird das Zeichen als %23 angegeben, so wird es vom Browser wohl auch übermittelt.
Hab mal als Gegentest das Passwort ohne das Sonderzeichen gesetzt, dann klappt die Verbindung (sogar zum versteckten Netzwerk).
Liegt das jetzt speziell am #-Zeichen, oder gibt es generell noch Probleme mit Sonderzeichen?

Gruß

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

HCS

Prima, langsam kommen wie in die Spur.

Zitat von: BlackFlag am 14 November 2015, 16:14:01Allerdings wurde ich nicht nach neuen Setup-Einstellungen gefragt, sondern er hat sich direkt mit den alten Einstellungen mit meinem AP verbunden.
Das kam auf der seriellen raus.
Interessanterweise verbindet sich der ESP wieder auf den AP, mit dem er zuletzt verbunden war, wenn man der API SSID und Passwort leer rein gibt, und genau das passiert, wenn man noch die alten Settings im EEPROM hat. Solltest sie trotzdem mal neu speichern.

Zitat von: BlackFlag am 14 November 2015, 16:14:01
OK 9 8 1 4 73 106
OK 9 8 1 4 73 106
Dann solltes Du eigentlich jetzt mit
define myJeeLink JeeLink 192.168.1.26:81
ein JeeLink device anlegen können und in FHEM Daten empfangen.

Zitat von: Olly am 14 November 2015, 21:49:03
[LaCrosseITPlusReader.Gateway.1.04 {IP=192.168.179.22}]
Brauchst halt noch einen oder zwei RFM und wenn Du Lust hast einen BMP180

Zitat von: Olly am 14 November 2015, 21:49:03Liegt das jetzt speziell am #-Zeichen, oder gibt es generell noch Probleme mit Sonderzeichen?
Sonderzeichen in den Settings gehen generell noch nicht, da bin ich gerade dran.

Wie es weiter geht: Sonderzeichen in Settings, Hostame konfigurierbar und optional statische IP anstatt DHCP.

Olly



Zitat

Wie es weiter geht: Sonderzeichen in Settings, Hostame konfigurierbar und optional statische IP anstatt DHCP.

Hallo,

erst mal einen riesigen Dank für deine geleistete Programmierung!!!
Dann warte ich mal auf deine weiteren Versionen. Statische IP und die Sonderzeichen sind das, was mir dann noch fehlen.
Vielleicht schaffe ich es ja auch dann mal einen RFM an den Start zu bringen.

Gruß

     Olly

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

PeMue

Hallo,

bin gerade über diesen Thread gestolpert: sehr interessante Sache. Muss ich mir mal anschauen.

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

BlackFlag

Zitat von: HCS am 15 November 2015, 08:47:34
Dann solltes Du eigentlich jetzt mit
define myJeeLink JeeLink 192.168.1.26:81
ein JeeLink device anlegen können und in FHEM Daten empfangen.
Device anlegen ging auch. Habe dann ewig gesucht, bis ich herausbekommen habe, dass empfangene Sensoren nur hinzugefügt werden, wenn man LaCrossePairForSec auch mal auf 120 setzt. Dann hat FHEM einen Temperaturfühler gefunden. Der wechselt jetzt ständig (quasi im Sekundentakt) zwischen 2 Temperaturen hin- und her. Kann es sein, dass ich zufällig 2 mit der gleichen ID habe?

BlackFlag

Zitat von: HCS am 15 November 2015, 08:47:34
Prima, langsam kommen wie in die Spur.
Interessanterweise verbindet sich der ESP wieder auf den AP, mit dem er zuletzt verbunden war, wenn man der API SSID und Passwort leer rein gibt, und genau das passiert, wenn man noch die alten Settings im EEPROM hat. Solltest sie trotzdem mal neu speichern.

Wie soll ich denn die Settings neu speichern? Das Setup kommt ja gar nicht mehr, weil der ESP nicht als AP startet. Kann man den Konfigurationsspeicher des ESP löschen (mit esptool evtl.)?

Olly

Zitat von: BlackFlag am 15 November 2015, 12:47:10
Wie soll ich denn die Settings neu speichern? Das Setup kommt ja gar nicht mehr, weil der ESP nicht als AP startet. Kann man den Konfigurationsspeicher des ESP löschen (mit esptool evtl.)?
Hi,

du kannst dich doch auch mit dem konfigurierten Gateway verbinden. Einfach die per DHCP erhaltene IP /setup im Browser aufrufen, dann kommst du doch auch auf die Konfigurationssite und kannst SSID und Passwort noch mal eingeben.

Gruß

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