Comments (12)
Hallo zusammen,
ich habe jetzt mal einen pull request mit meinen Änderungen / Ergänzungen gestellt.
Das Problem mit der WebApi liegt vermutlich an dem "alten Linux System" meines Entwicklungsnotebooks.
Es scheint so, wenn ein Browser kein oder nur ältere Versionen von JavaScript unterstützt, dann ist die Kommunikation nicht vollständig und der "ESPAsyncWebServer" oder "AsyncTCP" hängt sich auf.
Das führt dann unweigerlich zum WDT und reboot.
Mal schauen, ob ich in den nächsten Tage Zeit finde, das Ganze mal genauer zu analysieren.
Mit neueren Browsern ist es kein Problem und läuft tadellos.
Viele Grüße
Klaus
from opendtu.
Habe da nochmal drüber nachgedacht. Selbst wenn der Client kein JS unterstützt sollte er ja die .js Datei laden. Ob er den Code dann ausführt ist eine andere Sache. Generell darf ein fehlgeschlagener Download den Webserver nicht zum crashen bringen. Werde mal versuchen da heute Abend drüber zu schauen.
from opendtu.
Ja, ist schon komisch.
Ich werde in den nächsten Tagen mal mit "Wireshark" schauen, welche Unterschiede es in der Kommunikation gibt...
from opendtu.
Hallo zusammen,
einen Fehler konnte ich leider nicht finden jedoch ein wenig eingrenzen.
In den Wireshark Logs ist nichts Auffälliges zu finden, die Kommunikation hört plötzlich auf.
Verbunden ist das Notebook über das interne Ethernet-Interface.
Als nächstes habe ich das eingebaute WiFi-Interface und einen externen USB-Ethernet-Adapter getestet.
Da läuft alles einwandfrei und ohne Probleme.
Selbst in der VirtualBox mit einem neueren Linux, hatte ich per eingebautem Ethernet-Interface das Problem.
Es scheint also ein Problem HW- oder Treiber-Problem zu sein, dass hoffentlich nur auf meinem alten Notebook besteht.
VG
Klaus
from opendtu.
Hallo Klaus,
ich habe auf Basis deines PR selbst schon einen Branch mit Ethernet Unterstützung lokal am laufen. Bisher konnte ich keine Probleme feststellen. Habe ein paar Dinge etwas anders Implementiert. Für den MQTT Support fehlen mir noch ein paar Anpassungen aber dann kann ich das mal freigeben.
from opendtu.
Hallo Klaus,
die letzten Commits von heute haben ein neues Environment hinzugefügt "olimex_esp32_poe".
(Dies kann in VSCode in der Statusleiste umgeschaltet werden. Achtung, es gibt dafür separate Port Einstellungen)
Das Umschalten zwischen WiFi und Ethernet klappt auch schon Problemlos (hoffe ich).
Was ich heute noch nicht ganz geschafft habe ist die Darstellung in der WebGUI. IP usw. werden vom korrekten, aktiven Interface angezeigt.. Jedoch ist noch nicht ersichtlich welches Interface aktiv ist.
Es ist zur Zeit so implementiert, dass bei aktivem Ethernet das WiFi immer deaktiviert wird bzw. anders herum.
from opendtu.
Hallo Thomas,
vielen Dank für das Integrieren in dein Projekt.
Es mach sehr viel Arbeit gewissenhaft die Änderungswünschen einzubauen.
Das ist nicht selbstverständlich...
Ich hoffe, dass ich zukünftig noch etwas mehr zum openDTU beitragen kann.
Am Wochenende werde ich mal den Code zusammenführen und testen.
Viele Grüße
Klaus
from opendtu.
@klahus1 habe mir das Issue mal aufmerksam durchgelesen.
Hier die Punkte die mir spontan dazu einfallen:
-
einige der Seiten in der OpenDTU nutzen m.W. WebSocket für aktuelle Daten, hier haben evtl. ältere Browser Patchbedarf und lassen eine Verbindung offen ?
Oder AsynTCP und ESPAsyncWebServer kommen mit ein paar TCP Signalen SYN, ACK, etc. nicht klar die hier vom Browser nach einer evtl. veralteten WebSocket Spec verwendet wurden/werden. -
Dein TCPDump mit Wireshark deutet für mich darauf hin, dass der ESP (openDTU-eth.fritz.box 192.168.1.39 ?) seinen ARP Cache aktualisieren möchte um die IP 192.168.1.211 bzw. 192.168.1.111 (Notebook ?) zu erfahren.
Das Notebook antwortet auch mit der MAC Adresse 08:62:66:b6:20:b7 für 192.168.1.111.
Die anderen Source / Destinations sind nur als Namen angegeben das macht es etwas schwierig das wirklich nachzuvollziehen.
Warum gibt es zwei IP Adressen ..211 und ..111 ?
Was macht der TCP Stack auf dem Olimex ETH Device (Version?) bzw. dem ESP WiFi zu diesem Zeitpunkt -> Serial Logs ?
Eventuell hat der ESP auch eine Verbindung mit WiFi und ETH gleichzeitig hergestellt und er muss plötzlich als Bridge arbeiten ?
@tbnobody kannst Du das Problem bei Dir mit Deiner Hardware überhaupt nachstellen ?
from opendtu.
Habe hier das gleiche Olimex Board und habs mit mehreren Browsern (allerdings alles neue Versionen) getestet. Konnte keine Fehler feststellen bisher.
from opendtu.
@klahus1 kannst Du mal Deine Browser Version posten oder willst Du das Issue als Browser abhängig schließen?
Wie gesagt ich könnte mir auch noch vorstellen dass Dein ESP Irgendwie in den Bridge Modus geraten ist und das Routing nicht mehr klappt ?
from opendtu.
Hallo zusammen,
da ich das Problem nur auf einem alten Notebook (Linux) habe, kann ich gerne das issue schließen.
from opendtu.
Noch ein kleiner Nachtrag,
- Warum gibt es zwei IP Adressen ..211 und ..111 ?
...111 ist mein Notebook, ...211 ist der MQTT-Broker.
Da ich nur den Traffic meines Notebook lokal mitgeschrieben habe und nicht remote auf den Switchen / Routern "sieht" mein Notebook zwar den ARP Request des ESP, jedoch keinen weiteren TCP/IP Traffic der anderen Teilnehmer.
from opendtu.
Related Issues (20)
- half of API missing after update to v24.2.16 HOT 2
- Nach Update < 24.1.26 keine "aktuelle Anzeige" HOT 2
- ESP32-S3 keine PSRAM Anzeige HOT 2
- Yield Day is Not correct when inverter got. to „sleep“ after sundown HOT 5
- DTU hängt sich auf HOT 5
- New 2,4inch OLED display - flipped/shifted HOT 5
- MQTT only working after Enable/Disable HOT 12
- Missing inverter data in /api/livedata/status HOT 2
- Typo in German language HOT 3
- API does not show panel data HOT 2
- Inverter poolt Nachts HOT 5
- [Request] turn off automatic check of update of firmware HOT 5
- Total Yield Day is partly not visible when value is > 10.0000Wh. HOT 7
- [Request] Add description for error 152 HOT 5
- Add Dates in event log in Live-View HOT 6
- [Request] Add library.json files to private libraries in lib/ folder
- Hardware-Model unknown HOT 7
- add AC yieldtotal in HA like sensor and enable expiration for a part of sensor [Request] HOT 4
- [Request]Add Support for remote Syslog
- [Request]Add Support for a second MQTT Service HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from opendtu.