Hallo, ich habe Mal die ki gefragt. Leerzeichen im Hostnamen sind auch nicht zulässig. Gibt's denn hier niemand der einen eco tacker hat. Ich habe das Mal in einem Venus Forum in Facebook gefragt aber keine Antwort bekommen. Ich wollte Mal bei marstek nachfragen ob man nicht den Tasmota mit Restapi unterstützen möchte.
D0 Zähler SML auslesen mit Tasmota
-
Thomas -
18. Oktober 2018 um 18:50 -
Erledigt
-
-
-
Das wäre das einfachste, dann müsste man nur die IP von Tasmota angeben
-
lt. Chatgpt:
Gute und sehr technische Frage! Systeme wie NOAH Solarspeicher oder andere Smart-Home-Systeme erkennen den everHome EcoTracker IR typischerweise nicht per zufälligem Hostnamen wie ecotracker.local, sondern über eine der folgenden Mechanismen:✅ 1. UPnP, SSDP oder mDNS (Bonjour)
Viele moderne Geräte mit ESP32/ESP8266 (wie der EcoTracker) könnten mittels Multicast DNS (mDNS) oder SSDP (Simple Service Discovery Protocol) im lokalen Netzwerk „sichtbar“ werden.
Aber:
Laut bisheriger Dokumentation scheint der EcoTracker IR von everHome kein mDNS oder SSDP zu senden – das heißt: NOAH muss aktiv nach ihm scannen oder ihn durch Benutzerhilfe finden.
✅ 2. Netzwerkscan durch die App (Layer 2 Broadcast / Ping Sweep)Wenn du in der NOAH App oder bei der Konfiguration „EcoTracker suchen“ auswählst, passiert meist Folgendes:
Schritt Beschreibung 1. Die NOAH App scannt dein lokales Netzwerk (z. B. Subnetz 192.168.178.0/24) 2. Dabei sendet sie HTTP-Anfragen an bekannte Ports/IPs, z. B. http://192.168.x.x/v1/json 3. Die Antwort enthält typische JSON-Daten vom EcoTracker (z. B. aktuelle Zählerstände) 4. Anhand dieser Antwort erkennt NOAH den EcoTracker ➡️ Also: Es wird gezielt nach der EcoTracker-REST-API gesucht.
✅ 3. MAC-Adress-Präfix-ErkennungNOAH könnte auch anhand der MAC-Adresse oder des Herstellers (OUI) den EcoTracker identifizieren. Typisch wäre:
MAC-Präfix 84:0D:8E → Espressif Inc. (ESP32-basiert)
✅ Fazit
- NOAH erkennt den EcoTracker nicht über einen festen Hostnamen, sondern durch:
- Netzwerkscan nach der REST-API
- Analyse der JSON-Antwort
- Ggf. MAC-Adresse / Port-Signaturen
- Wenn du möchtest, kann ich dir ein Skript schreiben, um im eigenen Netz nach dem EcoTracker zu suchen oder ihn manuell einzubinden.
-
habe UDP RPC im scripter eingebaut.
Damit kann man jetzt den Shelly richtig emulieren.
#define USE_SCRIPT_GLOBVARS muss definiert sein.
unten das rudimentäre script dient erst mal dazu zu sehen was der Marstek an den Shelly schickt
neue Befehle:
res=udp(0 port) öffnet UDP Listener auf port
str=udp(1) liest ankommende Strings auf dem Port
res=udp(2 str) sendet den String str als Antwort
res=udp(3 url port payload) sendet einen UDP String an die url mit port und payload
Code
Alles anzeigen>D 40 res=0 str="" >B ->sensor53 r ; add handler is only called on tasmota restart ; so when editing have to restart ; up to 3 handlers >ah ; add handler #1 won(1 "/v1/json") ; open udp port 1010 res=udp(0 1010) >on1 print here comes the request 1 wcs so(4) wcs HTTP/1.1 200 OK\r\n wcs Content-type: application/json\r\n\r\n wcs {"Einspeisung": %sml[1]%} wcf >S ; check for incomming udp on port 1010 str=udp(1) if str!="" { ; hier kommen die UDP RPC Anforderungen print payload=%str% } ; OBIS Einspeisezähler (nur Einspeisung) >M 1 +1,10,o,0,9600,OBIS -1,1-0:2.8.1*255(@1,Einspeisung,KWh,Total_out,4 -1,=d 1 10 @1,Aktuelle Einspeisung,W,Power_curr,0 -1,1-0:0.0.0*255(@#),Zähler Nr,,Meter_number,0 -1,0.1.2*11(@1,test,T,zeit,0 #
-
Ist das (wirklich) für Shelly oder für den ecotracker?
Und die von dir angehängte Datei: ist das einfach nur das Skript Modul oder etwas besonderes für diese Aufgabenstellung?Wenn man deinen Fork nimmt, braucht man die Datei nicht, korrekt?
Oder wie genau würde man die Datei einbinden?
Danke für die Hilfestellungen! -
Nur für Shelly
-
Ich finde Shelly genauso gut,die meisten Akkus unterstützen auch Shelly, ich dachte nur das Ecotracker leichter zu emulieren wäre.
Vielen Dank für deine Mühe.
-
Ich werde die Tasmota Images mit der neusten Änderung von gemu2015 erstellen, allerdings bekomme ich beim Kompilieren noch ein Fehler. Wenn der behoben ist, stelle ich sie hier zur Verfügung.
Update:
Hier sind die neuen Tasmota Images.Zitat von gemu2015res=udp(0 port) öffnet UDP Listener auf port
str=udp(1) liest ankommende Strings auf dem Port
res=udp(2 str) sendet den String str als Antwort
res=udp(3 url port payload) sendet einen UDP String an die url mit port und payloaddas ist alles nur für Strings implementiert da es sich hier immer nur um JSON Payloads handelt
-
Der Everhome ECO Tracker für den Venus E kann prinzipiell auch ohne die Everhome Cloud betrieben werden, wenn Sie die REST API direkt ansprechen. In diesem Fall erfolgt die Suche bzw. Identifizierung des Trackers üblicherweise über den festgelegten Hostnamen im Netzwerk. Bitte beachten Sie jedoch, dass manche Funktionen oder automatische Aktualisierungen möglicherweise nur über die Cloud realisiert werden können. Daher empfiehlt es sich, in Ihrem konkreten Anwendungsfall zu prüfen, ob alle benötigten Funktionen auch im reinen REST API-Betrieb verfügbar sind.
Mit freundlichen Grüßen,
Marstek Team
Kannst du das Team mal nach dem Hostnamen fragen?
-
Habe ich angefragt
-
Ich habe auch bei Everhome angefragt, entgegen der Aussage von Marstek soll es nicht ohne Cloud funktionieren.
Support Anfrage 46126: ECO Tracker ohne Cloud
Ich
Ist es möglich den Ecotracker ohne ihre Cloud zu betreiben? Gibt es einen externen IR Lesekopf oder eine externe Antenne für den Fall, das im Zählerschrank kein Wifi ist?
04.07.2025 09:03
[Blockierte Grafik: https://everhome.cloud/res/img/everhome.svg]
everHome
Hallo, es ist aktuell nicht möglich den EcoTracker ohne everHome zu betreiben. Ein Zählerschrank schirmt weniger stark ab, als man zunächst annimmt. Wenn dein Smartphone im Zählerschrank WLAN-Empfang hat, hat der EcoTracker dies ebenfalls. Beste Grüße Daniel everHome
-
Ich habe auch bei Everhome angefragt, entgegen der Aussage von Marstek soll es nicht ohne Cloud funktionieren.
...everHome
Hallo, es ist aktuell nicht möglich den EcoTracker ohne everHome zu betreiben. Ein Zählerschrank schirmt weniger stark ab, als man zunächst annimmt. Wenn dein Smartphone im Zählerschrank WLAN-Empfang hat, hat der EcoTracker dies ebenfalls. Beste Grüße Daniel everHome
Die Antwort von Everhome scheint veraltet zu sein, da es eine lokale REST API im Ecotracker gibt, die zudem in der App auch für jeden sichtbar aktiviert werden kann (habe ich so gelesen). Es passt auch nicht zur Funktionsweise der Marstek App, die bei Auswahl vom "Ecotracker(Beta)" keine Cloud-Zugangsdaten erfragt. Das könnte so wie Everhome sagt gar nicht funktionieren.
Könntest du im Everhome-Chat noch mal auf diesen Widerspruch hinweisen?
-
joela Hast du Mal probiert ob der elmulierte Shelly gefunden wird? Wäre ja auch gut.
-
-
Das ist die Antwort von Everhome:
Hier muss differenziert werden. Die everHome App ist immer notwendig. In dieser wird der EcoTracker in Betrieb genommen. Das Auslesen von Marstek zu EcoTracker erfolgt lokal. Aufgrund eines Firmware-Fehlers kommt es aktuell zu einem Ausfall der lokalen Schnittstelle des EcoTrackers bei Internetausfall - das ist temporär, wir arbeiten aktuell an der Behebung.
-
Die Marstek App findet den emulierten Shelly Pro 3EM mit dem UDP-Skript und neuer UDP Tasmota-Firmware beim CT-Scan nicht.
Nach ca. 40 Sekunden Scan erfolgt nur ein Timeout. Die UDP Debug-Message payload ist in der Tasmota-Console nicht geloggt.
Ein Webbrowser-Aufruf der Rest-API unter <Tasmota-IP>/v1/json wird aber beantwortet mit {"Einspeisung": -1870.00} und findet sich im Log unter here comes the request 1.
Soweit ich gelesen habe, wird für die Discovery des Shellys mDNS verwendet. Danach wird ein Remote Procedure Call mit UDP auf die gefundene IP ausgeführt. Ich denke es scheitert hier an der Discovery des Shellys. -
Auch im Unimeter Forum hat man wohl noch ähnliche Probleme aber ich habe da leider keine Ahnung von.
Emulation shelly/ecotracker for growatt noah2000 · Issue #160 · sdeigm/uni-meter
Ich habe es als statische Datei auf dem Host meines Docker-Containers eingestellt. Danach war ich in der Lage, uni-meter als Ecotracker mit dem NOAH zu verbinden._everhome._tcp.local
Eigentümer
Danke, das waren die fehlenden Informationen. Ich werde die mDNS-Registrierung in der nächsten Version aktualisieren.
-
#define MDNS_ENABLED true
Sollte mdns in Tasmota erlauben
#define MDNS_ENABLED false // [SetOption55] Use mDNS (false = Disable, true = Enable) -
#define MDNS_ENABLED true
Sollte mdns in Tasmota erlauben
#define MDNS_ENABLED false // [SetOption55] Use mDNS (false = Disable, true = Enable)Nachdem was ich gelesen habe, kann man damit nur den Tasmota-Hostnamen per mDNS publishen.
Es lässt sich damit kein anderer Hostname wie "Shelly..." publishen. -
_shelly._tcp.local. unter wifi Hostname geändert
INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"xshelly.-tcp.local.","IPAddress":"192.168.178.59",
-