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

PeMue

Zitat von: HCS am 28 Oktober 2016, 09:43:26
Nein.
Wäre es denkbar, diese in der nächsten Firmware Version irgendwo mit aufzunehmen (irgendwo bei RSSI), z.B. Failed connects?

Danke + 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

HCS

Zitat von: PeMue am 29 Oktober 2016, 07:41:48
Wäre es denkbar, diese in der nächsten Firmware Version irgendwo mit aufzunehmen (irgendwo bei RSSI), z.B. Failed connects?
Ich glaube das wird nicht gehen.
Ich habe aber der Ablauf auch nicht korrekt beschrieben.

Das LGW "sagt" dem ESP, dass er eine Verbindung zu einem AP aufbauen soll. Das versucht er dann im Hintergrund so lange, bis es klappt.
Während der Zeit prüft das LGW (aktuell 15 Sekunden), ob inzwischen eine Verbindung da ist und macht erst weiter, wenn sie aufgebaut wurde oder es nach 15 Sekunden beschließt, dass das wohl nichts mehr wird und seinen eigenen AP aufmacht.
Das LGW weiß also nicht, wie und wie oft und wann der Core versucht, die Verbindung aufzubauen.

Aber wozu muss man das eigentlich wissen?

PeMue

Zitat von: HCS am 29 Oktober 2016, 10:47:58
Das LGW "sagt" dem ESP, dass er eine Verbindung zu einem AP aufbauen soll. Das versucht er dann im Hintergrund so lange, bis es klappt.
renemt macht das in der Optolink Software so:
    uint8_t wifiAttempts = 0;
    WiFi.begin(ssid.c_str(), password.c_str());
    while (WiFi.status() != WL_CONNECTED && wifiAttempts++ < 20)
    {
      Serial1.print('.');
      delay(1000);
    }
    if (wifiAttempts == 21)
    {
      Serial1.printf("\n\nCould not connect to WiFi network '%s'.\n", ssid.c_str());
      Serial1.println("Deleting configuration and resetting ESP to return to configuration mode");
      SPIFFS.remove(_configFile);
      yield();
      ESP.reset();
    }

Sprich in Summe wird da für jeden Versuch 1 s gewartet bis zum nächsten Versuch.
Hier hätte ich auch nach der Hälfte der Versuche den delay eingebaut, um bei Stromausfall die Neukonfiguration zu vermeiden.

Zitat von: HCS am 29 Oktober 2016, 10:47:58
Aber wozu muss man das eigentlich wissen?
Als Merkmal, wie gut die Verbindung ist. Aber da kann man auch den RSSI nehmen. Mich hätte halt interessiert, wie lang der Router beim Stromausfall braucht, um wieder WLAN bereitzustellen. Aber deshalb einen Router Reset zu produzieren, ist mir das auch nicht wert ...

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 29 Oktober 2016, 17:07:48
Sprich in Summe wird da für jeden Versuch 1 s gewartet bis zum nächsten Versuch.
Dieser Quellcode macht ziemlich genau das, was ich oben beschrieben habe.
WiFi.begin(ssid.c_str(), password.c_str());
Sagt dem ESP, dass er eine Verbindung aufbauen soll und die Schleife danach schaut nur noch ein mal pro Sekunde, ob es bereits erledigt ist.
Es wird nicht mehrmals ein connect Versuch angestoßen. Das macht der ESP im Core alleine mit sich und den AP aus.

Was aber danach bekannt ist, ist die Zeit, die es gedauert hat, bis die Verbindung aufgebaut war. Die könnte ich auf der Hardware-page mit ausgeben.


PeMue

Zitat von: HCS am 29 Oktober 2016, 21:03:19
Was aber danach bekannt ist, ist die Zeit, die es gedauert hat, bis die Verbindung aufgebaut war. Die könnte ich auf der Hardware-page mit ausgeben.
Das wäre doch was ... Dann stoße ich mal den change request an  ;)

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 29 Oktober 2016, 23:04:31
Das wäre doch was ... Dann stoße ich mal den change request an  ;)
Zu spät. Habes es vor eine halben Stunde eingebaut.  ;D

PeMue

Zitat von: HCS am 29 Oktober 2016, 23:05:32
Zu spät. Habes es vor eine halben Stunde eingebaut.  ;D
Naja, das war eher für unsere Dokumentationsabteilung gedacht  ;D
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

Omega

Nicht wirklich besonders wichtig - und vielleicht auch nur bei mir...
Mein LGW hat sich an der Zeitumstellung "verschluckt".

2016.10.30 02:47:03 2: ZWDongle_1 transmit NO_ACK for CB 16, target ZW_Bodentreppe
2016.10.30 02:00:45 3: Opening LaCrosseGateway device 192.168.0.28:81
2016.10.30 02:00:46 3: LaCrosseGateway device opened
2016.10.30 02:01:49 3: Opening LaCrosseGateway device 192.168.0.28:81
2016.10.30 02:01:50 3: LaCrosseGateway device opened
2016.10.30 02:02:52 3: Opening LaCrosseGateway device 192.168.0.28:81
2016.10.30 02:02:53 3: LaCrosseGateway device opened
2016.10.30 02:03:55 3: Opening LaCrosseGateway device 192.168.0.28:81
2016.10.30 02:03:56 3: LaCrosseGateway device opened
2016.10.30 02:04:59 3: Opening LaCrosseGateway device 192.168.0.28:81
2016.10.30 02:05:00 3: LaCrosseGateway device opened

Um 02:47 noch eine normale Meldung. Um 03:00 dann die Umstellung auf 02:00.
Ab 02:00 dann minütlich ein erfolgloser Verbindungsversuch.


und erst eine Std. später...

2016.10.30 02:59:55 3: Opening LaCrosseGateway device 192.168.0.28:81
2016.10.30 02:59:56 3: LaCrosseGateway device opened

habe ich den letzen - dann allerdings erfolgreichen - Verbindungsversuch.

Auf meiner 2. FHEM-Instanz genau das gleiche Verhalten.

LG
Holger
NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

HCS

Ja, war bei mir auch auf allen FHEMs so. Ich denke, dass da eher das JeeLink- / LaCrosseGateway-Modul schuld ist.
Wenn man das timeout Attribut gesetzt hat, dann überwacht es den readingsTimestamp, ob timeout Sekunden lang vom LGW nichts mehr kam und baut dann die Verbindung neu auf. Und die Zeitumstellung verwirrt da scheinbar ein wenig.

Das Problem sollte sich aber irgendwann (hoffentlich vor der nächsten Zeitumstellung) eh erledigen, weil ich die Überwachung im LaCrosseGateway-Modul auf -> "Lebst Du noch"  <- "Ja" umbauen will.

PeMue

Auch bei mir bei allen drei LGWs so, hätte ich aber vermutlich gar nicht gemerkt ...

Gruß und schönen Sonntag.

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

AxelSchweiss

Bei mir steht im Log immer nur:
LaCrosseGateway2.cyberdyne.de:81 reappeared (LaCrosseGateway2)
Eine Disconnect-Meldung  finde ich nirgends.
Anscheinend hat es auch noch Daten emfangen. Siehe Screenshot.
Daher scheint es wirklich nur die Verfügbarkeitsprüfung zu betreffen.

pc1246

Zitat von: HCS am 27 Oktober 2016, 09:05:21
Da ich gerade den Patch von SusisStrolch für zwei SSIDs übernommen habe, muss man das dann auch berücksichtigen.

Moin
Gibt es das mit den zwei SSIDs schon irgendwie? Ich habe im Keller mit dem Wemos keinen Empfang mehr. Habe da aber noch ein anderes Netz!
Gruss Christoph
HP T610
Onkyo_AVR;3 Enigma2; SB_Server ; SB_Player; HM-USB mit 15 HM-CC-RT-DN, 3 HM_WDS10_TH_O, 6 HM-Sec-SCo, 4 HM-Sec-MDIR-2, 1 HM-Sen-MDIR-O-2, 8 Ferion 5000 OW ; PhilipsTV; 4 harmony hub; Jeelink mit 9 PCA301; Somfy; S7-300; 3 LGW; HUE; HM-IP auf Charly

HCS

V1.23

Entwicklungsumgebung
Aktuelle Entwicklungsumgebung ist: Arduino 1.6.12 / Core 2.3.0

UseWifi
Die Einstellung "UseWiFi" auf der Setup page hat nicht funktioniert

SHT75
Das LGW unterstützt jetzt auch den SHT75
Er kann alternativ zu Radio #2 + Radio #3 verwendet werden.
Anschluss:
D3 (GPIO0) -> SHT75 DATA
D4 (GPIO2) -> SHT75 SCK
Den SHT75 würde ich aber nicht auf die Platine oder in ein Gehäuse mit rein setzen. Das wäre PVDS.
Ich habe ihn in einem Sensorgehäuse abgesetzt als externen Messfühler.

OLED-Konfiguration
Zusätzlich zu der "on/off/..." Konfiguration kann man nun auf der Setup-Page konfigurieren, ob das Display
direkt in einen bestimmten Modus (z.B. thp) gehen soll.

1.3" OLED
Das LGW unterstützt nun auch das 1.3" OLED I2C Display 128x64 Pixel mit SH1106 Chipsatz
Da ich leider keine Möglichkeit gefunden habe, zu erkennen, ob ich mit einem SSD1306 (0.96") oder einem SH1106 (1.3") Controller spreche, die beiden aber etwas unterschiedlich handhaben muss, muss man esauf der Setup-Page konfigurieren (Die Checkbox 1.3" ankreuzen)

Zwei SSIDs
Ich habe den Patch von SusisStrolch (sinngemäß) für zwei SSIDs übernommen.
Wenn man eine zweite SSID konfiguriert hat, dann wird, sofern nach dem konfigurierten Timout die erste nicht erreicht wird, versucht, die zweite zu erreichen.

Connectverhalten auf einen AP
Das ganze kommt aus dem Stromausfall-Thema, bei dem das LGW viel schneller als der AP bereit ist und bereits aufgibt, bevor der AP nach ein bis zwei Minuten bereit ist, einen Connect anzunehmen.
   
Man kann nun auf der Setup-Page für beide SSIDs einen Timeout konfigurieren.
120 bedeutet z.B. dass das LGW 120 Sekunden lang versucht, die SSID zu erreichen.
Diese Zeit war bisher hart in der Frimware auf 15 Sekunden festgelegt.
Dafür kann man dann das Startup-delay wieder auf 0 stellen.

Ich habe "Stromausfall" wie folgt simuliert und getestet:
- AP aus/ein, LGW bleibt an
- LGW aus/ein, AP bleibt an
- LGW + AP aus/ein

In allen drei Fällen kam die Verbindung wieder zustande und nach ein bis zwei Minuten sind wieder Daten in FHEM eingelaufen.

Connect Zeit
Die Zeit, die es gedauert hat, bis das LGW den connect zum AP hatte, wird nun auf der Hardware-Page ausgegeben


Committed ist's, das Update morgen liefert es dann aus oder Ungeduldige holen es sich schon jetzt aus dem Repository.
Anbei ein Schirmschuss von der setup-Page mit den Neuerungen und ein Vergleich 0.96" zu 1.3" OLED.

pc1246

Uuuppss
Ich wollte aber nicht draengeln!
Wo ist denn das Haus auf dem grossen Display?!
Gruss Christoph
HP T610
Onkyo_AVR;3 Enigma2; SB_Server ; SB_Player; HM-USB mit 15 HM-CC-RT-DN, 3 HM_WDS10_TH_O, 6 HM-Sec-SCo, 4 HM-Sec-MDIR-2, 1 HM-Sen-MDIR-O-2, 8 Ferion 5000 OW ; PhilipsTV; 4 harmony hub; Jeelink mit 9 PCA301; Somfy; S7-300; 3 LGW; HUE; HM-IP auf Charly

HCS

Zitat von: pc1246 am 30 Oktober 2016, 12:23:45
Wo ist denn das Haus auf dem grossen Display?!
Beim Erdbeben eingestürzt  ;D ;D ;D

Nee. Als ich das Foto gemacht habe, hatte sich FHEM schlicht noch nicht auf das LGW verbunden. Kam dann kurz nach dem Foto.