NEWS
[ESPHome] Beta release
-
@dutchman auf das Dashboard könnte ich notfalls auch verzichten .
Das hatte ich früher ja auch nicht.
Habe da ja auch alles auf meinem PC gemacht.
Leider übersetzen meine bisherigen Yaml nicht mehr. Kennen den ESP32 nicht mehr so richtig. -
@klassisch sagte in [ESPHome] Beta release:
Leider übersetzen meine bisherigen Yaml nicht mehr. Kennen den ESP32 nicht mehr so richtig.
wo genau gehts schief ?
-
@dutchman Danke, es entgleist beim Übersetzen des yaml
d:\USER\JS\SONSTIGE\ESPHome> esphome d:\USER\JS\SONSTIGE\ESPHome\CO2Sensor_ESP32\CO2Sensor.yaml run ←[33mWARNING You're using ESPHome with python 2. Support for python 2 is deprecated and will be removed in 1.15.0. Please reinstall ESPHome with python 3.6 or higher.←[0m ←[32mINFO Reading configuration d:\USER\JS\SONSTIGE\ESPHome\CO2Sensor_ESP32\CO2Sensor.yaml...←[0m ←[32mINFO Generating C++ source...←[0m ←[32mINFO Compiling app...←[0m ←[32mINFO Running: platformio run -d 'd:\USER\JS\SONSTIGE\ESPHome\CO2Sensor_ESP32\co2sensor01'←[0m Processing co2sensor01 (board: wemos_d1_mini32; framework: arduino; platform: espressif32@1.12.1) ----------------------------------------------------------------------------------------------------------------------- PlatformManager: Installing espressif32 @ 1.12.1 Error: Detected unknown package 'espressif32'
unknown package espressif32
im yaml
esphome: name: co2sensor03 platform: ESP32 board: wemos_d1_mini32
Hat schon mal erfolgreich übersetzt. Jetzt leider nicht mehr.
-
@klassisch sagte in [ESPHome] Beta release:
You're using ESPHome with python 2.
welche Python haste du drauf ? denke mal liegt daran ?
-
Danke nochmals!
@dutchman gefühlt viele, weil mit verschiedenen Programmpaketen verschiedene Python versionen kamen. Wenn ich in der Dosbox python aufrufe kommt Python 2.7.13 raus.
Wenn ich mich recht erinnere, war das u.a. für die ESP-Flasherei wichtig.
Mit Libreoffice kam noch python 3.7 und ich habe irgendwo noch python 3.8.Das kann ich auch öffnen.
Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 22:39:24) [MSC v.1916 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>>
Aber das scheint nicht mit dem ESPHome verbunden zu sein.
-
@klassisch sagte in [ESPHome] Beta release:
Aber das scheint nicht mit dem ESPHome verbunden zu sein.
diese Meldung sagt was anderes
You're using ESPHome with python 2.
-
@dutchman Ja, ich bezog das auch auf die gezeigte 3.8. Die kann ich aufrufen. Aber ESPHOme hält sich an die 2.7
-
@klassisch sagte in [ESPHome] Beta release:
@dutchman Ja, ich bezog das auch auf die gezeigte 3.8. Die kann ich aufrufen. Aber ESPHOme hält sich an die 2.7
und genau da geht es schief er braucht naemlich 3.7
In der package mache ich keine links fuer python 2.x"python": { "execPath": [ "python3.8", "python3.7", "python3", "python" ],
-
@dutchman ok, und wie bekomme ich das hin, so daß 2.7 und 3.3 nutzbar sein können?
-
@klassisch sagte in [ESPHome] Beta release:
@dutchman ok, und wie bekomme ich das hin, so daß 2.7 und 3.3 nutzbar sein können?
gute frage wie lauten deine Pfade fuer python ?
@dutchman sagte in [ESPHome] Beta release:
"python"
eventuell kommt er durch diesen Eintrag die 2.7
-
@dutchman
directories sehr strange: c:\Users\JS\AppData\Local\Programs\Python\Python38-32\und c:\Python27\
Und wenn ich in der Konsole "path" eingeben, dann ist dort
C:\Python27;C:\Python27\Scripts;C:\Windows\system32;enthalten.
Also man Path austauschen? -
@klassisch sagte in [ESPHome] Beta release:
Und wenn ich in der Konsole "path" eingeben, dann ist dort
also nimmt er standard die 2.7, schau dir das hier mal an um das auf die 3.7 um zu leiten
https://stackoverflow.com/questions/5087831/how-should-i-set-default-python-version-in-windows
-
@dutchman herzlichen Dank für Deine Geduld und Deine Tipps.
Habe jetzt alles neu auf Basis python 3.8 aufgebaut, upgedatet - auch platformio. Habe gelernt, daß mein ESP Flashtool nicht mehr funktioniert, die neue espHome-Plattform das jetzt aber auch kann.
Und daß man seine degub-Änderungen auch wieder rückgängig machen sollteJetzt ist das Gerätchen wieder online und liefert neben den MQTT-Daten auch noch die API-Daten direkt in Deinen Adapter.
Flashen ota scheint auch zu funktionieren - zumindest von esphome aus.
Hinterlegen der credentials, incl. api credentials in einem zentralen file für alle Sensoren auch.
Klasse!
-
@klassisch sagte in [ESPHome] Beta release:
Flashen ota scheint auch zu funktionieren - zumindest von esphome aus.
sind die Geräte per mdns erreichbar, also im selben Subnetz ?
@klassisch sagte in [ESPHome] Beta release:
Hinterlegen der credentials, incl. api credentials in einem zentralen file für alle Sensoren auch.
wie meinst ?
-
@dutchman sagte in [ESPHome] Beta release:
sind die Geräte per mdns erreichbar, also im selben Subnetz ?
die sind alle im selben Netz. Bin Netzwerklaie und verwende eine Fritte. Und halte es einfach - so lange es geht.
@klassisch sagte in [ESPHome] Beta release:
Hinterlegen der credentials, incl. api credentials in einem zentralen file für alle Sensoren auch.
wie meinst ?
So ein file, in dem ich die ganzen IP Adressen, Passwörter, SSID und das was alle meine Sensoren gemeinsam haben, zusammenfasse und welches dann im yaml mit
<<: !include includes.yaml
referenziert wird.
-
vielleicht noch eine Frage: Wie viel Ressourcen braucht ein solches Dashboard? Habe noch einen NUT-Server auf einem OPI plus 2e und armbian laufen. Allerdings nur 1GB RAM,. Passt das da noch drauf? Das Teil idled sonst nur rum.
-
@klassisch sagte in [ESPHome] Beta release:
vielleicht noch eine Frage: Wie viel Ressourcen braucht ein solches Dashboard? Habe noch einen NUT-Server auf einem OPI plus 2e und armbian laufen. Allerdings nur 1GB RAM,. Passt das da noch drauf? Das Teil idled sonst nur rum.
Nicht so viel sollte passen
-
Vielen Dank! Auf dem SBC sind die falschen python Versionen drauf. 2.7 als default und dann noch eine 3.5. Das lasse ich mal lieber, am Ende runiere ich noch den NUT Server... Bin Linux Laie und schaffe es nicht einmal ein Linux Mint ordentlich mit Remote Desktop zu connecten.... Und auch der OPi hatte nach der letzten Neuinstallation von armbian nur noch 1GB statt 2GB RAM.
-
Wie erfolgt die Benennung der einzelnen Datenpunkte?
Die Frage stellt sich im Zusammenhang mit mehreren gleichartigen Sensoren und Skript.
Die Id eines States scheint beim ESPHome mit einer random number verbunden zu sein, was die Behandlung gleichartiger Sensoren erschwert, weil man dann immer alle Datenpunkte einzeln eingeben muß.
Nehmen wir als Beispiel einen aufsummierenden pulsecounter, wie er als S0 oder Wasseruhrzähler eingesetzt wird.
Mich interessiert der state "S0-heating total" und "S0-heating-delta" sowie uptime sensor
Die ID der einzelnen states scheint aber nicht aus der ID des Sensors ableitbar zu sein, wie das z.B. bei ESPEasy, zigbee, HM etc ist. Beispiel EPSEasy
Beim pulse counter kann ich die Ids aus der ID des Sensors ableiten. Ein anderer pulse counter vergibt die Namen nach dem gleichen Schema
Das ist natürlich in Skripten viel praktischer.
-
@klassisch sagte in [ESPHome] Beta release:
Wie erfolgt die Benennung der einzelnen Datenpunkte?
Die Struktur ist :
Adapter.Instance.Geraet.SensorType.Entitaet.>wert<
Der name kommt aus der yaml und wird vom code so übernommen, kannst mir deine mal zeigen was da definiert ist ?Um es ein wenig übersichtlicher zu machen kommt im niesten update die option den ordner "SensorType" weck zu lassen, löst aber nicht das problem deiner frage.
@klassisch sagte in [ESPHome] Beta release:
Die ID der einzelnen states scheint aber nicht aus der ID des Sensors ableitbar zu sein
Korrekt, daran kann ich leider nichts ändern jeder sensor Eintrag in der yaml erstellt deine Entität (das ist diese id).
Ich brauche das auch in den states um es unterscheiden zu können, sonst haben wir das Risiko das anderen Sensoren mit gleichen Namen die selben Datenpunkte bekommen daher ist innerhalb einer device diese id vorhanden.@klassisch sagte in [ESPHome] Beta release:
Beim pulse counter kann ich die Ids aus der ID des Sensors ableiten. Ein anderer pulse counter vergibt die Namen nach dem gleichen Schema
ist halt wie ESPHome es bereitstellt
Schau so sieht aus was ich reinbekomme (zufällig n pulse counter auch hier fuer die Wasseruhr :))
Eerst die device (alzo info zum ESP)
{ "usesPassword": true, "name": "testnodemcu", "macAddress": "2C:F4:32:79:FA:8E", "esphomeVersion": "1.19.4", "compilationTime": "Jul 5 2021, 15:32:14", "model": "PLATFORMIO_NODEMCUV2", "hasDeepSleep": false }
Dan bekomme ich die so genannten Entitäten :
{ "objectId": "waterverbruik_in_liters", "key": 725167390, "name": "Waterverbruik_in_liters", "uniqueId": "testnodemcusensorwaterverbruik_in_liters", "icon": "mdi:water", "unitOfMeasurement": "l/h", "accuracyDecimals": 1, "forceUpdate": false }
Der KEY hier ist wichtig und siehst du auch zurueck in deinen baum Strukturen, jede eint die ich reinbekomme wird so verarbeitet.
Danach kommen nur noch die werte rein :
{ "key": 725167390, "state": 0, "missingState": false }
Ergo, ich muss jede Entität separieren sonst koennen Sensoren sich überlappen, der name des ordner kommt aus dem Namen hier welche in der yaml hinterlegt ist
sensor: - platform: pulse_meter pin: D6 name: "Waterverbruik_in_liters" id: water_usage icon: "mdi:water" unit_of_measurement: 'l/h' accuracy_decimals: 1 timeout: 60sec total: id: sensor_pulse_meter_total name: "Water Total verbruik" icon: "mdi:cube-outline" unit_of_measurement: "m³" accuracy_decimals: 3 filters: - multiply: 0.001