ahoy
ahoy copied to clipboard
Feature Request: Documentation: WT32-ETH01 support LAN Port in Settings
Hardware
- [ ] ESP8266
- [x] ESP32
- [ ] Raspberry Pi
Modelname: WT32-ETH01 Retailer URL: WT32-ETH01
nRF24L01+ Module
- [x] nRF24L01+ you verified this is a Plus model capable of the required 256kBit/s mode
- [ ] square dot indicates original Nordic Semicon chip
- [ ] round dot indicates copy-cat / counterfeit SI labs chip
Antenna:
- [x] circuit board
- [ ] external antenna (SMA)
Power Stabilization:
- [x] 100uF Electrolytic Capacitor connected between +3.3V and GND (Pin 1 & 2) of the NRF Module
- [ ] Voltage stabilizing motherboard
Version / Git SHA:
Version: 0.6.0 Github Hash: _______
Build & Flash Method:
- [x] AhoyDTU Webinstaller
- [ ] VSCode - Platform IO
- [ ] Arduino
- [ ] ESP Tools
Debugging:
- [ ] USB Serial Log (attached)
- [ ] Setup settings (use our templates ... to be added)
Hallo, ist die Implementierung einer Konfiguration eines LAN Port möglich? ähnlich wie bei OpenDTU
gruß matten matten
EDIT PINOUT
In openDTU sieht es in der WebUi wie folgt aus.
Kann man die fehlende Reaktion auf diese Anfrage so interpretieren, dass es sonst kein Interesse von anderen Usern besteht und diese Anfrage nicht umgesetzt wird?
Ich brauch das auch demnächst, könnte auch den Code beisteuern da bei meiner Anlage kein WLan möglich ist. Das dauert aber
Also ich hätte auch Interesse, bringe mich gerade im PlatformIO um... Bei uns is Nachts WLAN aus^^
I am also interested in. Alternatively connecting to a wiz5500/ wiz5100 could even do the job and I could keep the esp8266 based Wemos D1.
ist schon in der Pipeline, habe leider aktuell aber nicht allzu viel Zeit. Ich hoffe es sehr bald veröffentlichen zu können
Would be great! Actually I'm working with WIFI for testing but in the planned installation LAN would be preferred :-)
hier die erste Version, ist auch im Branch eth
als source verfügbar.
Edit: diese Version ist fehlerhaft, repariert in nächstem Beitrag 230509_ahoy_0.6.12_eth.zip
Update, die erste Version war fehlerhaft, leider falsch benannt, sollte 06.12 heißen
WT32-ETH01 ist bestellt :-)
@lumapu, danke für die erste vorab version, ich hab die bin via webinterface geupdatet, leider verbindet der esp sich nicht mit dem Netzwerk. weder WIFI noch Ethernet.
Ich muss mal schauen das ich den via serial neu flashe.
Edit: Via serial die stable Version auf den ESP32 ETH geflasht und er ist wieder erreichbar.
Ist die 0.6.12_ETH auch für den ESP32 ?
Gruß matten matten
So, der WT32-ETH01 ist gekommen.
Leider bei mir auch keine Verbindung: weder WLAN noch ETH.
Hab die (falsche) 0.5.12 und die (richtige) 0.6.12 probiert.
Mit der stable und der Dev 0.6.12 geht zumindest eine Verbindung mittels AP AHOY-DTU, allerdings schaffe ich es nicht mit meinem Netz zu verbinden (in dem Fall nicht wichtig, Ziel ist ja LAN aber wollte es mal "fallen lassen"). Es wird zwar gemeldet, dass die Einstellungen gespeichert wurden aber nach dem Neustart (auch schon "hart" probiert), trotzdem keine Verbindung...
Hmm, eben noch mal probiert, weil ich mal die Console (USB) mitlaufen lassen wollte und: jetzt habe ich ihn zumindest mittels WLAN ins Netz bekommen. Also die 0.6.12_eth Ich bin verwirrt.
Ich teste dann mal noch mal mit LAN und USB-Console... ...vorher mal noch mit WLAN OHNE USB-Console.
Also: per WLAN geht wohl. Ich musste nach dem Speichern der WIFI-Daten mein Notebook "zwangsweise" mit meinem Netzwerk verbinden, sonst wurde wohl immer mit dem AP AHOY-DTU verbunden und der ESP probiert dann gar nicht mit dem eingestellten WLAN zu verbinden? Wenn ich vor dem (Re)Boot (nach WIFI-Einstellungen) mein WLAN ändere, geht es.
Leider (weiterhin) keine Verbindung mit LAN :-
Auch nach Factory-Reset nicht (weil ich hatte ja WLAN schon konfiguriert, nicht dass das "reinspuckt")...
In der Console erscheint auch nichts was auf LAN (Probleme) hindeutet.
EDIT: ich werde dann mal ein NRF-Modul dranbasteln... Welche Pins sollte ich nehmen? Aktuell würde ich die von OpenDTU (da gibt es eine config-json) nehmen: https://github.com/tbnobody/OpenDTU/blob/master/docs/DeviceProfiles/wt32-eth01.json EDIT: ok, grad gesehen, ist wie "oben" ;-) EDIT: per WLAN läuft :-) (jetzt hoffe ich nur, ich hab auch die richtige Version aufgespielt, wobei ich es ja extra noch mal per OTA-Update gemacht habe und schon sehr sicher die 0.6.12_eth genommen habe / weil mich wundert, dass es "plötzlich" [zumindest per WLAN] geht / gibt es eine Möglichkeit das herauszufinden? Weil die Version heißt in der Oberfläche auch "nur" 0.6.12 Dev)
Danke für die Mühe!
Kann ich sonst was tun?
Gruß, Joachim
ich habe es selbst noch nicht testen können und plane einen Aufbau mit W5500 an einem ESP32, evtl. gibt es hier Erkenntnisse die dir weiterhelfen
Zu der Frage nach dem Interesse: ich hätte es ;-) Da bei mir im Haus alle Infrastruktur-Technik grundsätzlich über LAN/Cat6 läuft, ist mir die WLAN-Geschichte beim ansonsten genialen AhoyDTU ein echter Dorn im Auge. Das Olimex-Board habe ich gerade bekommen, wollte eigentlich OpenDTU drauf flashen - aber jetzt warte ich erst einmal die Entwicklung hier ab. Bin nur Anwender und Bastler, aber kein Entwickler. Insofern profitiere ich von den genialen Codern, die solche Dinge der Allgemeinheit zur Verfügung stellen. An dieser Stelle einen herzlichen Dank dafür ;-)
Hab soeben erfolgreich getestet. Source eth kompiliert für lolin32 lite. Zusammengesteckt mit einem W5500 gemäß config.h. Zugriff via Ethernet klappt. Debug vom serial monitor schaut so aus:
ets Jun 8 2016 00:22:57
rst:0x1 (POWERON_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:1184
load:0x40078000,len:13192
load:0x40080400,len:3028
entry 0x400805e4
I: Initializing FS ..
I: .. done
[ 44][E][vfs_api.cpp:105] open(): /littlefs/settings.json does not exist, no permits for creation
W: failed to load json, using default config
I: Settings valid: false
I: RF24 Amp Pwr: RF24_PA_I: LOW
I: Radio Config:
SPI Frequency = 1 Mhz
Channel = 3 (~ 2403 MHz)
Model = nRF24L01+
RF Data Rate = 250 KBPS
RF Power Amplifier = PA_LOW
RF Low Noise Amplifier = Enabled
CRC Length = 16 bits
Address Length = 5 bytes
Static Payload Length = 32 bytes
Auto Retry Delay = 1000 microseconds
Auto Retry Attempts = 15 maximum
Packets lost on
current channel = 0
Retry attempts made for
last transmission = 0
Multicast = Disabled
Custom ACK Payload = Disabled
Dynamic Payloads = Enabled
Auto Acknowledgment = Enabled
Primary Mode = RX
TX address = 0xe7e7e7e7e7
pipe 0 (closed) bound = 0xe7e7e7e7e7
pipe 1 ( open ) bound = 0x0807988601
pipe 2 (closed) bound = 0xc3
pipe 3 (closed) bound = 0xc4
pipe 4 (closed) bound = 0xc5
pipe 5 (closed) bound = 0xc6
I: mEth setup...I: [ETH]: Register for events...
I: [ETH]: begin...
[ETH]: Got event...
ETH Started
done...
I: (#0) resetPayload
I: (#1) resetPayload
I: (#2) resetPayload
I: (#3) resetPayload
I: (#4) resetPayload
I: (#5) resetPayload
I: (#6) resetPayload
I: (#7) resetPayload
I: (#8) resetPayload
I: (#9) resetPayload
I: (#0) resetPayload
I: (#1) resetPayload
I: (#2) resetPayload
I: (#3) resetPayload
I: (#4) resetPayload
I: (#5) resetPayload
I: (#6) resetPayload
I: (#7) resetPayload
I: (#8) resetPayload
I: (#9) resetPayload
D: regularTickers
E (1219) gpio: gpio_install_isr_service(449): GPIO isr service already installed
[ETH]: Got event...
ETH Connected
[ETH]: Got event...
ETH MAC: FE:ED:DE:AD:BE:EF, IPv4: 192.168.0.110
FULL_DUPLEX, 100Mbps
D: onNetwork
D: regularTickers
D: updateNtpTime
ETH.linkUp()=down
ETH.localIP()=192.168.0.110
Go on? Yes...
D: updateNtpTime: checking udp "connection"...
D: updateNtpTime: About to (re)connect...
D: updateNtpTime: Connected...
D: updateNtpTime: prepare packet...
D: updateNtpTime: send packet...
D: updateNtpTime: about to handle ntp packet...
I: [NTP]: 2023-05-18 18:45:20 UTC
Ntp sync wollte noch nicht klappen. Tiefer habe ich bisher nicht getestet. Wenn ich den Code richtig verstehe, ist alles auf den Wiz5500 ausgelegt (https://github.com/khoih-prog/AsyncUDP_ESP32_W5500). Das WT32-ETH01-Board funktioniert damit nicht (?). Vielleicht hilft das weiter 😀
habe auch gesehen, dass das WT32 einen anderen LAN Chip verwendet, aber das kann man bestimmt auch integrieren.
[ 44][E][vfs_api.cpp:105] open(): /littlefs/settings.json does not exist, no permits for creation W: failed to load json, using default config I: Settings valid: false
das ist komisch, ich sehe es bei mir auch. Man kann keine Einstellungen speichern. Was ich noch nicht verstehe wie das mit Ethernet zusammenhängt
Im Framework vom esp32 kommt die ETH.h mit, welche sich um die LAN-Chips kümmert (per default LAN8720). Aber W5500 ist nicht dabei. Für den Esp8266 dürfte das deshalb generell nicht nützen. Ist wahrscheinlich einiges an Arbeit nötig, um die möglichen Konstellationen dann zu abstrahieren (Esp32 mit LAN8720, ESP32 mit W5500, Esp8622 mit W5500 etc.).
Wegen Settings hab ich an der settings.h ein paar Kleinigkeiten testweise auskommentiert, aber war anscheinend nix dabei, was die Ursache trifft.
In den Sourcen steckt enorm viel Arbeit drin. Ich steig da leider nur schwer durch. Sorry 😀
mal wieder eine neue Version (Änderungen aus dev03 branch gemerged). Um den Settings load failed Fehler zu umgehen habe ich gemerkt, dass man einfach zuerst das Release aufspielen kann, einmal mit dem Wifi verbindet und speichert. Dann per Update das ETH Package drauf und alles funktoniert 😀
Eben ausprobiert aber ist wohl nur der w5500 Chip "aktiviert"... Der ist (wohl) im WT32-ETH01 nicht drin (?)... :-\
In der Console bekomme ich folgende Ausgabe:
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0018,len:4 load:0x3fff001c,len:1044 load:0x40078000,len:8896 load:0x40080400,len:5828 entry 0x400806ac E (472) esp_core_dump_flash: No core dum���ѥѥ���found! E (472) esp_core_dump_flash: No core dump partition found! I: Initializing FS .. I: .. done I: Settings valid: true I: RF24 Amp Pwr: RF24_PA_I: LOW I: Radio Config: SPI Frequency = 1 Mhz Channel = 2 (~ 2402 MHz) Model = nRF24L01+ RF Data Rate = 2 MBPS RF Power Amplifier = PA_LOW RF Low Noise Amplifier = Enabled CRC Length = 8 bits Address Length = 5 bytes Static Payload Length = 32 bytes Auto Retry Delay = 250 microseconds Auto Retry Attempts = 3 maximum Packets lost on current channel = 0 Retry attempts made for last transmission = 0 Multicast = Disabled Custom ACK Payload = Disabled Dynamic Payloads = Disabled Auto Acknowledgment = Enabled Primary Mode = TX TX address = 0xe7e7e7e7e7 pipe 0 ( open ) bound = 0xe7e7e7e7e7 pipe 1 ( open ) bound = 0xc2c2c2c2c2 pipe 2 (closed) bound = 0xc3 pipe 3 (closed) bound = 0xc4 pipe 4 (closed) bound = 0xc5 pipe 5 (closed) bound = 0xc6 I: mEth setup...I: [ETH]: Register for events... I: [ETH]: begin... E (1200) w5500.mac: w5500_reset(301): Read MR failed E (1201) w5500.mac: emac_w5500_init(827): Reset w5500 failed E (1201) esp_eth: esp_eth_driver_install(214): init mac failed esp_eth_driver_install failed done... I: added inverter HM114183712345 I: (#0) resetPayload I: (#1) resetPayload I: (#2) resetPayload I: (#3) resetPayload I: (#4) resetPayload I: (#5) resetPayload I: (#6) resetPayload I: (#7) resetPayload I: (#8) resetPayload I: (#9) resetPayload I: (#0) resetPayload I: (#1) resetPayload I: (#2) resetPayload I: (#3) resetPayload I: (#4) resetPayload I: (#5) resetPayload I: (#6) resetPayload I: (#7) resetPayload I: (#8) resetPayload I: (#9) resetPayload W: WARNING! your NRF24 module can't be reached, check the wiring E (1269) gpio: gpio_install_isr_service(449): GPIO isr service already installed
Habe auf bereits laufendem ESP (Dev 0.6.12? oder stable 0.6.0?) per Web aktualisiert und auch mal per ESP-flasher.
Bin jetzt wieder auf 0.6.12 dev und warte... ...oder kann ich was tun? (außer programmieren, dazu steige ich [noch] zu wenig durch :-\ )
EDIT: Alternative: wie müsste ich denn ein W5500-Modul an einen ESP32 DEVKIT o.ä. (habe da ja noch welche) anschließen? Oder was gibt es da "fertig"?
Der ist (wohl) im WT32-ETH01 nicht drin (?) ... EDIT: Alternative: wie müsste ich denn ein W5500-Modul an einen ESP32 DEVKIT o.ä. (habe da ja noch welche) anschließen?
Das WT32-ETH01-Board hat meist den LAN8720. Den wiz5500 m.W.n. generell nicht. Ich hab nur das Lolin32-lite-Board - Anschluss müsste mit Devkit analog klappen (dürfte ja mehr GPIO rausgeführt haben, als mein lite-Dingens).
Folgende Pin-Map habe ich verwendet:
ESP32 (Lolin32 lite) | NRF24L01 | W5500 |
---|---|---|
Vcc 3.3V | Vcc 3.3V | Vcc 3.3V |
GND | GND | GND |
GPIO05 | CS | |
GPIO16 | IRQ | |
GPIO17 | CE | |
GPIO18 | SCK | |
GPIO19 | MISO | |
GPIO23 | MOSI | |
GPIO04 | INT | |
GPIO12 | MISO | |
GPIO13 | MOSI | |
GPIO14 | SCLK | |
GPIO15 | SCS |
Edit: Pin-Map u. Grafik korrigiert
@roobbb: DANKE! Ich hab mal so W5500 bestellt, mal sehen...
So, habe es mal schnell verdrahtet... ...und geflasht. Er meldet in der Console "ETH connected" und ich sehe auch MAC im NW auftauchen. Leider keine IP... Sollte das mit DHCP gehen? Sollte da mehr auftauchen?
Allerdings wird der NRF auch nicht erkannt, evtl. doch was an der Verkabelung?
Muss jetzt allerdings erst mal (wieder) pausieren... :-\
Ich habe auch mal ein ESP32,W5500 und NRF verbunden (PINS wie von roobbb beschrieben). Firmware 0.6.9 geflasht NRF erfolgreich geprüft. Mit 230527_ahoy_eth_esp32_0.6.15 upgedatet. Console zeigt
21:19:56.406 -> [ETH]: Got event... 21:19:56.406 -> ETH Connected 21:26:56.396 -> [ETH]: Got event... 21:26:56.396 -> ETH Disconnected 21:26:58.399 -> [ETH]: Got event... 21:26:58.399 -> ETH Connected
wenn ich das LAN Kabel stecke/ziehe/stecke.
Keine IP. Auch nicht im DHCP Server zu sehen.
Noch eimal die 0.6.9 aufgespielt. Statische IP eingestellt. Wieder mit 230527_ahoy_eth_esp32_0.6.15 upgedatet. Keine Veränderung.
Update: Ich habe noch einmal in die config.h geschaut. Firmware 0.6.9 geflasht, NRF CE von PIN 4 auf 17 geändert. Mit 230527_ahoy_eth_esp32_0.6.15 upgedatet. W5500 INT von PIN 22 auf 4 geändert. 16:07:06.965 -> [ETH]: Got event... 16:07:06.965 -> ETH MAC: FE:ED:DE:AD:BE:EF, IPv4: 192.168.176.90 16:07:06.965 -> FULL_DUPLEX, 100Mbps 16:07:06.965 -> ETH.linkUp()=down 16:07:06.965 -> ETH.localIP()=192.168.176.90 16:07:06.965 -> Go on? Yes... 16:07:06.965 -> I: [NTP]: 2023-06-22 14:07:06 UTC
Webserver ist über LAN erreichbar. Kommunikation zum WR läuft. Daten gehen auch zum MQTT Broker.
Mal schauen ob es stabil bleibt. Limit habe ich nicht getestet.
@xFvPx : Danke für Deine Rückmeldung. Die config.h hatte ich auch konsultiert. Ich hab nochmal bei meinem Aufbau geschaut und mit Schrecken bemerkt, dass ich beim Malen von Schaubild + Map tatsächlich die Pins verwechselt habe 😱. Sorry für die Verwirrung. Kann leider nicht sagen, wie ich das wieder geschafft habe 🙄. Hab beides korrigiert, damit keiner mehr drüber stolpern muss. Hoffe, ich hab keinen neuen Bock drin ...
Also WT32-ETH01 geht noch nicht? Aber W5500 geht? Dann bestell ich mir den mal.
Ich meine, der WT32-ETH01 klappt noch nicht, weil dazu noch Anpassungen im Code nötig wären. W5500 ist aber im Branch "eth" bereits vorgesehen. Im Versuchsaufbau hat das auch geklappt mit obiger Einschränkung:
Um den Settings load failed Fehler zu umgehen habe ich gemerkt, dass man einfach zuerst das Release aufspielen kann, einmal mit dem Wifi verbindet und speichert. Dann per Update das ETH Package drauf und alles funktoniert
Zu tieferen oder längeren Tests bin ich leider nicht mehr gekommen. xFvPx ist da bereits weiter.
WT32-ETH01 habe ich nicht getestet. W5500 läuft seit gestern. Bis jetzt absolut stabil.
eine Kleinigkeit:
die beiden MQTT states sind nicht ok:
So habe es nun auch hinbekommen...
Bei mir kam hinzu, dass das NRF-Modul für diesen Aufbau defekt war :-|
Langzeittest muss noch ein wenig warten... :-|
Hab es mal auf Lochraster aufgebaut und läuft seit einigen Tagen problemlos :-)
Mit dem WT32-ETH01 wäre es zwar kompakter aber so ist das auch ganz nett... ...und für das WT32-ETH01 findet sich bestimmt eine Aufgabe ;-)
DANKE!! :-)
Einen ganz herzlichen Dank!!
Dank Euch bin ich jetzt einen ganzen Schritt weitergekommen, und für ahoyDTU nicht mehr auf WLAN angewiesen. Das "Rattennest" als Versuchsaufbau funktioniert, und wird jetzt auf einer Lochrasterplatine ordentlich aufgebaut.
Eine kleine Anmerkung hätte ich aber noch:
Obwohl ich im Web-Interface immer eine statische IP-Adresse vergebe (mit DNS, submask und gateway) zieht sich der ESP32 beim Booten immer eine Adresse vom DHCP-Server. Das ist jetzt zwar kein Beinbruch, denn ich kann ihm ja routerseitig eine feste IP4-Adresse zuweisen. Aber offenbar wird die IP-Konfiguration von der Weboberfläche nicht für LAN übernommen. Dies nur als Hinweis - ich könnte den Code ja selber korrigieren, aber dafür reichen meine Fähigkeiten leider nicht ;-)