alternative zu esp-link?

Begonnen von Ralf9, 15 August 2020, 08:48:41

Vorheriges Thema - Nächstes Thema

habeIchVergessen

Zitat von: Ralf9 am 25 Oktober 2020, 22:28:07
Kann es sein, daß die Wifi konfig von ESPEASY verwendet wird?

Beim handleInput ist mir dies nicht klar, ich habe die Kommandos "u" und "v" gesendet, aber keine Antwort erhalten.
wie oben bereits geschrieben, werden die ssid und psk von WiFi.begin in den eeprom geschrieben. Dort bleiben sie so lange, die ein neues begin sie überschreibt. Eventuell löscht ein explizites disconnect die Daten.

anbei noch ein Screenshot von der Konsole (Kommando u+v).

Namen der Inlcudes: hast du unter linux kompiliert? Das habe ich noch nicht getestet.

Ralf9

Ja, ich habe unter Linux kompiliert.
Wird demnach unter Windows die Groß- und Kleinschreibung bei includes nicht beachtet?

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

habeIchVergessen

NTFS liefert die Datei unabhängig von der Schreibweise.

Ralf9

#18
Zitatanbei noch ein Screenshot von der Konsole (Kommando u+v)
wenn ich das richtig sehe, wird dies nur in der debug Konsole ausgegeben.

Beim Kompilieren mit der Arduino IDE bekomme ich einige warnings:
In file included from /sketchbook/EspSerialBridge/EspSerialBridge.ino:28:0:
sketch/EspConfig.h:35:17: warning: ignoring packed attribute because of unpacked non-POD field 'String EspConfig::ConfigList::name' [enabled by default]
     String      name, value;
                 ^
sketch/EspConfig.h:35:23: warning: ignoring packed attribute because of unpacked non-POD field 'String EspConfig::ConfigList::value' [enabled by default]
     String      name, value;
                       ^
sketch/EspConfig.h:37:3: warning: 'typedef' was ignored in this declaration [enabled by default]
   };
   ^


In file included from /sketchbook/EspSerialBridge/EspSerialBridge.ino:29:0:
sketch/EspDebug.h:87:30: warning: passing NULL to non-pointer argument 1 of 'WiFiServer::WiFiServer(uint16_t)' [-Wconversion-null]
     WiFiServer m_DbgServer = NULL;
                              ^
In file included from /home13_1/ralf/sketchbook/EspSerialBridge/EspSerialBridge.ino:30:0:
sketch/EspSerialBridgeImpl.h:53:31: warning: passing NULL to non-pointer argument 1 of 'WiFiServer::WiFiServer(uint16_t)' [-Wconversion-null]
     WiFiServer m_WifiServer = NULL;
                               ^
/sketchbook/EspSerialBridge/EspDebug.ino: In destructor 'EspDebug::~EspDebug()':
/sketchbook/EspSerialBridge/EspDebug.ino:9:15: warning: passing NULL to non-pointer argument 1 of 'WiFiServer::WiFiServer(uint16_t)' [-Wconversion-null]
   m_DbgServer = NULL;
               ^
/sketchbook/EspSerialBridge/EspSerialBridgeImpl.ino: In destructor 'EspSerialBridge::~EspSerialBridge()':
/sketchbook/EspSerialBridge/EspSerialBridgeImpl.ino:9:16: warning: passing NULL to non-pointer argument 1 of 'WiFiServer::WiFiServer(uint16_t)' [-Wconversion-null]
   m_WifiServer = NULL;
                ^



/sketchbook/EspSerialBridge/FlashATMega328Serial.ino: In member function 'bool FlashATmega328::stkLoadAddress(uint16_t, bool)':
/sketchbook/EspSerialBridge/FlashATMega328Serial.ino:247:55: warning: narrowing conversion of '(((int)mAddress) & 255)' from 'int' to 'uint8_t {aka unsigned char}' inside { } [-Wnarrowing]
   uint8_t cmd[4] = { stkRequestLoadAddress, (mAddress & 0xFF), (mAddress >> 8), stkRequestCrcEOP };
                                                       ^
/sketchbook/EspSerialBridge/FlashATMega328Serial.ino:247:74: warning: narrowing conversion of '(((int)mAddress) >> 8)' from 'int' to 'uint8_t {aka unsigned char}' inside { } [-Wnarrowing]
   uint8_t cmd[4] = { stkRequestLoadAddress, (mAddress & 0xFF), (mAddress >> 8), stkRequestCrcEOP };
                                                                          ^



Dann kommen noch einige warnings mit deprecated. Dies bedeutet dann wohl, daß es in einer zukünftigen Kompiler Version nicht mehr funktionieren könnte.
/sketchbook/EspSerialBridge/EspTools.ino: In function 'void setupEspTools()':
/sketchbook/EspSerialBridge/EspTools.ino:11:11: warning: 'BUILTIN_LED' is deprecated (declared at /home/ralf/.arduino15/packages/esp8266/hardware/esp8266/2.7.4/variants/d1_mini/../generic/common.h:79): use LED_BUILTIN [-Wdeprecated-declarations]
   pinMode(BUILTIN_LED, OUTPUT);
           ^
/sketchbook/EspSerialBridge/EspTools.ino: In function 'void setLed(bool)':
/sketchbook/EspSerialBridge/EspTools.ino:16:16: warning: 'BUILTIN_LED' is deprecated (declared at /home/ralf/.arduino15/packages/esp8266/hardware/esp8266/2.7.4/variants/d1_mini/../generic/common.h:79): use LED_BUILTIN [-Wdeprecated-declarations]
   digitalWrite(BUILTIN_LED, !on);
                ^


dann kommen noch einige warning mit "warning: 'SPIFFS' is deprecated"
/sketchbook/EspSerialBridge/EspConfig.ino:13:20: warning: 'SPIFFS' is deprecated (declared at /home/ralf/.arduino15/packages/esp8266/hardware/esp8266/2.7.4/cores/esp8266/FS.h:269): SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
   mSpiffsMounted = SPIFFS.begin()


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

habeIchVergessen

welche ESP8266-SDK-Version verwendest du?
mit Arduino IDE 1.6.13 und ESP8266-SDK 2.4.1 unter Windoof sehe keine Warnings.

Ralf9

Ich verwende die Arduino IDE 1.8.10 und "esp8266 by SparkFun Electronics Version 2.7.4"
Compiler-Warnungen Standard
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

habeIchVergessen

bekomme auch die Warnungen, wenn ich sie einschalte.

Ralf9

Diese beiden warnings würde ich gerne wegbekommen, kann mir da jemand helfen?

In file included from /sketchbook/EspSerialBridge/EspSerialBridge.ino:28:0:
sketch/EspConfig.h:35:17: warning: ignoring packed attribute because of unpacked non-POD field 'String EspConfig::ConfigList::name' [enabled by default]
     String      name, value;
                 ^
sketch/EspConfig.h:35:23: warning: ignoring packed attribute because of unpacked non-POD field 'String EspConfig::ConfigList::value' [enabled by default]
     String      name, value;
                       ^
sketch/EspConfig.h:37:3: warning: 'typedef' was ignored in this declaration [enabled by default]
   };
   ^


Mir ist hier nicht klar was "NULL" bedeutet
In file included from /sketchbook/EspSerialBridge/EspSerialBridge.ino:29:0:
sketch/EspDebug.h:87:30: warning: passing NULL to non-pointer argument 1 of 'WiFiServer::WiFiServer(uint16_t)' [-Wconversion-null]
     WiFiServer m_DbgServer = NULL;
                              ^
In file included from /sketchbook/EspSerialBridge/EspSerialBridge.ino:30:0:
sketch/EspSerialBridgeImpl.h:53:31: warning: passing NULL to non-pointer argument 1 of 'WiFiServer::WiFiServer(uint16_t)' [-Wconversion-null]
     WiFiServer m_WifiServer = NULL;
                               ^
/sketchbook/EspSerialBridge/EspDebug.ino: In destructor 'EspDebug::~EspDebug()':
/sketchbook/EspSerialBridge/EspDebug.ino:9:15: warning: passing NULL to non-pointer argument 1 of 'WiFiServer::WiFiServer(uint16_t)' [-Wconversion-null]
   m_DbgServer = NULL;
               ^
/sketchbook/EspSerialBridge/EspSerialBridgeImpl.ino: In destructor 'EspSerialBridge::~EspSerialBridge()':
/sketchbook/EspSerialBridge/EspSerialBridgeImpl.ino:9:16: warning: passing NULL to non-pointer argument 1 of 'WiFiServer::WiFiServer(uint16_t)' [-Wconversion-null]
   m_WifiServer = NULL;
                ^
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

habeIchVergessen

das erste Warning bekommst du weg, wenn du attribute(packed) aus dem typedef entfernst.
für das zweite habe ich noch keine Idee. Eigentlich wird der Initialisierungswert im Code nicht verwendet/geprüft. Somit ist es entbehrlich. Wenn nur die Variable in der Klasse definiert wird, dann wird eventuell schon der Konstruktor aufgerufen. Dieses wollte ich mit "= NULL" vermeiden. Da bin ich mir nicht sicher!

Ralf9

WiFiServer m_DbgServer = NULL;
WiFiServer m_WifiServer = NULL;

Anscheinend muß was zugewiesen werden.
WiFiServer m_DbgServer;
ergibt eine error Meldung.

Da es nur warnings sind und es trotzdem funktioniert, kann es wahrscheinlich ignoriert werden.
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

Ralf9

hier sind die Anpassungen die ich vorgenommen habe
https://github.com/Ralf9/EspSerialBridge/commit/85f1337e345c05f663b52744ae541fbcc2e2344a

Passt die boardkonfig für den Wemos D1 mini in der Anlage?
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

habeIchVergessen

SSL habe ich nicht wirklich auf dem Schirm.

der Rest sieht gut aus.

Das Changeset werde ich mir bei Gelegenheit anschauen.

gloob

Ich bin auch gerade an einem Projekt dran, wo ich eine Serial Bridge benötigen könnte. Wie sieht denn das Protokoll auf der Gegenseite aus? ESP->Bridge ist klar.
Wie bekommt man aber die Daten Bridge->".Net" zum Beispiel hin?

Ist das eine Socket Verbindung über TCP oder UDP oder was wird da genutzt?
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

habeIchVergessen

der ESP startet einen TCP-Server auf Port 23. auf Port 9001 läuft die Debug-Konsole (auch TCP)