NEWS
[ESPHome] Beta release
-
@johannes-bauerstatter sagte in [ESPHome] Beta release:
@a200 Vielen Dank. War mir nicht bewusst, dass es so einfach ist.
Ja, siehe ich auch so. Manchmal sieht man den Wald nicht! Wenn es dir geholfen hat, dann würde ich mich über eine positive Bewertung meines Beitrages sehr freuen.
-
@e-s sagte in [ESPHome] Beta release:
Ich habe lieber esphome manuell installiert, dadurch bin ich für Updates nicht auf den Adapter angewiesen.
update des dashboards komt als Option in de adapter ohne neue version zu installieren spiele gerade mit der Lösung.
Moechte auch nicht immer ne neue release des adapter machen (jeden Monat) weil es ne neue dashboard version gibt
-
@dutchman Es wäre sehr praktisch. Bis dahin ist eine Reinstallation des Adapters die Lösung. Es wäre gut, wenn du eine Versionsprüfung einbauen könntest. Vielleicht im Footer. Ansonsten bin ich von deinem Adapter begeistert.
-
@a200 sagte in [ESPHome] Beta release:
@dutchman Es wäre sehr praktisch. Bis dahin ist eine Reinstallation des Adapters die Lösung. Es wäre gut, wenn du eine Versionsprüfung einbauen könntest. Vielleicht im Footer. Ansonsten bin ich von deinem Adapter begeistert.
im Layout vom dashboard kan ich leider nix hinzufügen/ändern das kommt 1:1 aus dem ESPHome python dashboard Process.
Wohl könnte ich schaue ob es möglich ist eine log Meldung aus zu geben oder in der Instanz config wen eine neue version verfügbar ist -
Bei mir steigt die Installation an der Stelle aus:
Using cached cryptography-36.0.1.tar.gz (572 kB) Installing build dependencies: started Installing build dependencies: finished with status 'error' host.iobroker Cannot install DrozmotiX/ioBroker.esphome#86201d5e87abede6071e84b38299bb72f699fef0: 1 ERROR: Process exited with code 25` My Python Version is 3.7 NodeJS 14.18
Dazu hab ich aber schon ein github Issue eröffnet.
Was mich aber vorab interessieren würde: Kann ich mit dem Adapter einen Servo steuern? https://esphome.io/components/servo.html
-
@maxpd sagte in [ESPHome] Beta release:
Bei mir steigt die Installation an der Stelle aus:
Using cached cryptography-36.0.1.tar.gz (572 kB) Installing build dependencies: started Installing build dependencies: finished with status 'error' host.iobroker Cannot install DrozmotiX/ioBroker.esphome#86201d5e87abede6071e84b38299bb72f699fef0: 1 ERROR: Process exited with code 25` My Python Version is 3.7 NodeJS 14.18
Dazu hab ich aber schon ein github Issue eröffnet.
Was mich aber vorab interessieren würde: Kann ich mit dem Adapter einen Servo steuern? https://esphome.io/components/servo.html
Hab das issue gesehen konnte es mir nur noch nicht erklären da knallt was bei den Abhängigkeiten
Servo habe ich noch nie probiert eventuell kleine Änderung/Ergänzung nötig im code
-
-
@a200 sagte in [ESPHome] Beta release:
Kommen die states den over den Adapter in ioBroker rein ? Für type Servo hatte ich noch nichts spezifisches programmiert
-
@dutchman Sorry. Da waren die Finger schneller als der Kopf. In meinem Fall habe ich den NODEMCU über Iobroker-Esphome nur programmiert und nur über Buttons auf der Website gesteuert. Nicht direkt vom IoBroker aus. Sorry für die Verwirrung.
Es werden keinen Stats geschrieben!servo: - id: my_servo output: pwm_output output: - platform: esp8266_pwm id: pwm_output pin: D1 frequency: 50 Hz
-
@a200 sagte in [ESPHome] Beta release:
Es werden keinen Stats geschrieben!
dan kommt da aber bestimmt was im. log was man an den developer schicken soll
-
@dutchman - schaue mal, dass ich dir was zusammenstelle. Danke!
-
@a200
Du musst irgendetwas mit name= hinzufügen bevor überhaupt etwas im webif oder an den Adapter übergeben wird.
Ein switch oder sowas in der Art müsste als input dazu. -
@e-s hier komplett:
damit werden entsprechende Buttons von -100 bis 100 und STOP über die Web-GUI verfügbar.web_server: port: 80 button: - platform: template name: "0" on_press: - servo.write: id: my_servo level: 0.0% - platform: template name: "10" on_press: - servo.write: id: my_servo level: 10% - platform: template name: "20" on_press: - servo.write: id: my_servo level: 20% - platform: template name: "30" on_press: - servo.write: id: my_servo level: 30% - platform: template name: "40" on_press: - servo.write: id: my_servo level: 40% - platform: template name: "50" on_press: - servo.write: id: my_servo level: 50% - platform: template name: "60" on_press: - servo.write: id: my_servo level: 60% - platform: template name: "70" on_press: - servo.write: id: my_servo level: 70% - platform: template name: "80" on_press: - servo.write: id: my_servo level: 80% - platform: template name: "90" on_press: - servo.write: id: my_servo level: 90% - platform: template name: "100" on_press: - servo.write: id: my_servo level: 100% - platform: template name: "-10" on_press: - servo.write: id: my_servo level: -10% - platform: template name: "-20" on_press: - servo.write: id: my_servo level: -20% - platform: template name: "-30" on_press: - servo.write: id: my_servo level: -30% - platform: template name: "-40" on_press: - servo.write: id: my_servo level: -40% - platform: template name: "-50" on_press: - servo.write: id: my_servo level: -50% - platform: template name: "-60" on_press: - servo.write: id: my_servo level: -60% - platform: template name: "-70" on_press: - servo.write: id: my_servo level: -70% - platform: template name: "-80" on_press: - servo.write: id: my_servo level: -80% - platform: template name: "-90" on_press: - servo.write: id: my_servo level: -90% - platform: template name: "-100" on_press: - servo.write: id: my_servo level: -100% - platform: template name: "Stop" on_press: - servo.detach: my_servo servo: - id: my_servo output: pwm_output output: - platform: esp8266_pwm id: pwm_output pin: D1 frequency: 50 Hz
-
@a200 said in [ESPHome] Beta release:
entsprechende Buttons von -100 bis 100
wahrscheinlich eignet sich hier ein select template besser anstelle der 20 buttons
-
@opensourcenomad wie sähe es aus, wenn man den servo 1 minute (36000 Grad) am stück laufen lassen möchte und anschließend zurück? Ich denke über die Zeit gesteuert ist das besser als über die Anzahl der Grad?
-
@maxpd said in [ESPHome] Beta release:
wenn man den servo 1 minute (36000 Grad) am stück laufen lassen möchte und anschließend zurück?
Das ist mit Sicherheit was für eine automation , welche wiederum durch einen template button gestartet werden kann wenn gewünscht
-
@opensourcenomad puhh, crazy, viel zu lernen, merci
-
-
Ich hab meinen Servo, der bisher nur die Level Variable hat eingebunden.
Das ist das esp script:
esphome: name: little_wemos platform: ESP8266 board: d1_mini wifi: ssid: !secret wifi_ssid password: !secret wifi_password # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Little Wemos Fallback Hotspot" password: "************" captive_portal: # Enable logging logger: api: services: - service: control_servo variables: level: float then: - servo.write: id: my_servo level: !lambda 'return level / 1000.0;' ota: output: - platform: esp8266_pwm id: pwm_output pin: D3 frequency: 50 Hz servo: - id: my_servo output: pwm_output
Das ist das Debug Log hierzu.
esphome.0 2022-03-17 15:42:40.693 debug Create_state called for : C45BBEDDA7E1.info._online with value : true esphome.0 2022-03-17 15:42:40.661 debug MODIFY to hasDeepSleep: "" esphome.0 2022-03-17 15:42:40.660 debug Create_state called for : C45BBEDDA7E1.info.hasDeepSleep with value : false esphome.0 2022-03-17 15:42:40.660 debug create id C45BBEDDA7E1.info.hasDeepSleep with value false and name hasDeepSleep esphome.0 2022-03-17 15:42:40.598 debug MODIFY to model: "" esphome.0 2022-03-17 15:42:40.597 debug Create_state called for : C45BBEDDA7E1.info.model with value : d1_mini esphome.0 2022-03-17 15:42:40.597 debug create id C45BBEDDA7E1.info.model with value d1_mini and name model esphome.0 2022-03-17 15:42:40.573 debug MODIFY to compilationTime: "" esphome.0 2022-03-17 15:42:40.572 debug Create_state called for : C45BBEDDA7E1.info.compilationTime with value : Mar 17 2022, 15:38:01 esphome.0 2022-03-17 15:42:40.572 debug create id C45BBEDDA7E1.info.compilationTime with value Mar 17 2022, 15:38:01 and name compilationTime esphome.0 2022-03-17 15:42:40.551 debug MODIFY to esphomeVersion: "" esphome.0 2022-03-17 15:42:40.551 debug Create_state called for : C45BBEDDA7E1.info.esphomeVersion with value : 2022.3.0 esphome.0 2022-03-17 15:42:40.550 debug create id C45BBEDDA7E1.info.esphomeVersion with value 2022.3.0 and name esphomeVersion esphome.0 2022-03-17 15:42:40.475 info ESPHome client little_wemos on ip 192.168.178.53 initialized esphome.0 2022-03-17 15:42:40.474 debug 192.168.178.53 client log ListEntitiesDoneResponse esphome.0 2022-03-17 15:42:40.472 debug 192.168.178.53 client data esphome.0 2022-03-17 15:42:40.460 debug MODIFY to macAddress: "" esphome.0 2022-03-17 15:42:40.459 debug Create_state called for : C45BBEDDA7E1.info.macAddress with value : C4:5B:BE:DD:A7:E1 esphome.0 2022-03-17 15:42:40.459 debug create id C45BBEDDA7E1.info.macAddress with value C4:5B:BE:DD:A7:E1 and name macAddress esphome.0 2022-03-17 15:42:40.436 debug MODIFY to name: "" esphome.0 2022-03-17 15:42:40.435 debug Create_state called for : C45BBEDDA7E1.info.name with value : little_wemos esphome.0 2022-03-17 15:42:40.434 debug create id C45BBEDDA7E1.info.name with value little_wemos and name name esphome.0 2022-03-17 15:42:40.430 debug 192.168.178.53 client log ListEntitiesServicesResponse esphome.0 2022-03-17 15:42:40.426 debug 192.168.178.53 client data ) control_servo>�S� level esphome.0 2022-03-17 15:42:40.406 debug MODIFY to usesPassword: "" esphome.0 2022-03-17 15:42:40.405 debug Create_state called for : C45BBEDDA7E1.info.usesPassword with value : false esphome.0 2022-03-17 15:42:40.404 debug create id C45BBEDDA7E1.info.usesPassword with value false and name usesPassword esphome.0 2022-03-17 15:42:40.384 debug 192.168.178.53 client log DeviceInfoResponse esphome.0 2022-03-17 15:42:40.380 debug DeviceInfo little_wemos: {"192.168.178.53":{"ip":"192.168.178.53","mac":"C4:5B:BE:DD:A7:E1","deviceInfo":{"usesPassword":false,"name":"little_wemos","macAddress":"C4:5B:BE:DD:A7:E1","esphomeVersion":"2022.3.0","compilationTime":"Mar 17 2022, 15:38:01","model":"d1_mini","hasDeepSleep":false},"deviceName":"C45BBEDDA7E1","deviceInfoName":"little_wemos","passWord":""}} esphome.0 2022-03-17 15:42:40.378 debug DeviceData: {"usesPassword":false,"name":"little_wemos","macAddress":"C4:5B:BE:DD:A7:E1","esphomeVersion":"2022.3.0","compilationTime":"Mar 17 2022, 15:38:01","model":"d1_mini","hasDeepSleep":false} esphome.0 2022-03-17 15:42:40.378 info ESPHome Device info received for little_wemos esphome.0 2022-03-17 15:42:40.375 debug 192.168.178.53 client data Klittle_wemosC4:5B:BE:DD:A7:E1"2022.3.0*Mar 17 2022, 15:38:012d1_mini esphome.0 2022-03-17 15:42:40.359 info ESPHome client 192.168.178.53 connected esphome.0 2022-03-17 15:42:40.358 debug 192.168.178.53 client log ConnectResponse esphome.0 2022-03-17 15:42:40.356 debug 192.168.178.53 client data esphome.0 2022-03-17 15:42:40.341 debug 192.168.178.53 client log HelloResponse esphome.0 2022-03-17 15:42:40.337 debug 192.168.178.53 client data 4 little_wemos (esphome v2022.3.0)"little_wemos esphome.0 2022-03-17 15:42:40.323 debug 192.168.178.53 client log PingResponse esphome.0 2022-03-17 15:42:40.320 debug 192.168.178.53 client data esphome.0 2022-03-17 15:42:40.286 debug espHomeDashboard_Process {"_events":{},"_eventsCount":0,"_maxListeners":100,"_closesNeeded":3,"_closesGot":0,"connected":false,"signalCode":null,"exitCode":null,"killed":false,"spawnfile":"npm","_handle":{"pid":16308},"spawnargs":["npm","run","-s","nopy","/opt/iobroker/node_modules/iobroker.esphome/python_modules/bin/esphome","dashboard","/opt/iobroker/iobroker-data/esphome.0"],"pid":16308,"stdin":{"connecting":false,"_hadError":false,"_parent":null,"_host":null,"_readableState":{"objectMode":false,"highWaterMark":16384,"buffer":{"head":null,"tail":null,"length":0},"length":0,"pipes":[],"flowing":null,"ended":false,"endEmitted":false,"reading":false,"sync":true,"needReadable":false,"emittedReadable":false,"readableListening":false,"resumeScheduled":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"destroyed":false,"errored":null,"closed":false,"closeEmitted":false,"defaultEncoding":"utf8","awaitDrainWriters":null,"multiAwaitDrain":false,"readingMore":false,"dataEmitted":false,"decoder":null,"encoding":null,"readable":false},"_events":{},"_eventsCount":1,"_maxListeners":100,"_writableState":{"objectMode":false,"highWaterMark":16384,"finalCalled":false,"needDrain":false,"ending":false,"ended":false,"finished":false,"destroyed":false,"decodeStrings":false,"defaultEncoding":"utf8","length":0,"writing":false,"corked":0,"sync":true,"bufferProcessing":false,"writecb":null,"writelen":0,"afterWriteTickInfo":null,"buffered":[],"bufferedIndex":0,"allBuffers":true,"allNoop":true,"pendingcb":0,"prefinished":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"errored":null,"closed":false,"closeEmitted":false},"allowHalfOpen":false,"_sockname":null,"_pendingData":null,"_pendingEncoding":"","server":null,"_server":null},"stdout":{"connecting":false,"_hadError":false,"_parent":null,"_host":null,"_readableState":{"objectMode":false,"highWaterMark":16384,"buffer":{"head":null,"tail":null,"length":0},"length":0,"pipes":[],"flowing":null,"ended":false,"endEmitted":false,"reading":true,"sync":false,"needReadable":true,"emittedReadable":false,"readableListening":false,"resumeScheduled":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"destroyed":false,"errored":null,"closed":false,"closeEmitted":false,"defaultEncoding":"utf8","awaitDrainWriters":null,"multiAwaitDrain":false,"readingMore":false,"dataEmitted":false,"decoder":null,"encoding":null},"_events":{},"_eventsCount":2,"_maxListeners":100,"_writableState":{"objectMode":false,"highWaterMark":16384,"finalCalled":false,"needDrain":false,"ending":false,"ended":false,"finished":false,"destroyed":false,"decodeStrings":false,"defaultEncoding":"utf8","length":0,"writing":false,"corked":0,"sync":true,"bufferProcessing":false,"writecb":null,"writelen":0,"afterWriteTickInfo":null,"buffered":[],"bufferedIndex":0,"allBuffers":true,"allNoop":true,"pendingcb":0,"prefinished":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"errored":null,"closed":false,"writable":false,"closeEmitted":false},"allowHalfOpen":false,"_sockname":null,"_pendingData":null,"_pendingEncoding":"","server":null,"_server":null},"stderr":{"connecting":false,"_hadError":false,"_parent":null,"_host":null,"_readableState":{"objectMode":false,"highWaterMark":16384,"buffer":{"head":null,"tail":null,"length":0},"length":0,"pipes":[],"flowing":null,"ended":false,"endEmitted":false,"reading":true,"sync":false,"needReadable":true,"emittedReadable":false,"readableListening":false,"resumeScheduled":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"destroyed":false,"errored":null,"closed":false,"closeEmitted":false,"defaultEncoding":"utf8","awaitDrainWriters":null,"multiAwaitDrain":false,"readingMore":false,"dataEmitted":false,"decoder":null,"encoding":null},"_events":{},"_eventsCount":2,"_maxListeners":100,"_writableState":{"objectMode":false,"highWaterMark":16384,"finalCalled":false,"needDrain":false,"ending":false,"ended":false,"finished":false,"destroyed":false,"decodeStrings":false,"defaultEncoding":"utf8","length":0,"writing":false,"corked":0,"sync":true,"bufferProcessing":false,"writecb":null,"writelen":0,"afterWriteTickInfo":null,"buffered":[],"bufferedIndex":0,"allBuffers":true,"allNoop":true,"pendingcb":0,"prefinished":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"errored":null,"closed":false,"writable":false,"closeEmitted":false},"allowHalfOpen":false,"_sockname":null,"_pendingData":null,"_pendingEncoding":"","server":null,"_server":null},"stdio":[{"connecting":false,"_hadError":false,"_parent":null,"_host":null,"_readableState":{"objectMode":false,"highWaterMark":16384,"buffer":{"head":null,"tail":null,"length":0},"length":0,"pipes":[],"flowing":null,"ended":false,"endEmitted":false,"reading":false,"sync":true,"needReadable":false,"emittedReadable":false,"readableListening":false,"resumeScheduled":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"destroyed":false,"errored":null,"closed":false,"closeEmitted":false,"defaultEncoding":"utf8","awaitDrainWriters":null,"multiAwaitDrain":false,"readingMore":false,"dataEmitted":false,"decoder":null,"encoding":null,"readable":false},"_events":{},"_eventsCount":1,"_maxListeners":100,"_writableState":{"objectMode":false,"highWaterMark":16384,"finalCalled":false,"needDrain":false,"ending":false,"ended":false,"finished":false,"destroyed":false,"decodeStrings":false,"defaultEncoding":"utf8","length":0,"writing":false,"corked":0,"sync":true,"bufferProcessing":false,"writecb":null,"writelen":0,"afterWriteTickInfo":null,"buffered":[],"bufferedIndex":0,"allBuffers":true,"allNoop":true,"pendingcb":0,"prefinished":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"errored":null,"closed":false,"closeEmitted":false},"allowHalfOpen":false,"_sockname":null,"_pendingData":null,"_pendingEncoding":"","server":null,"_server":null},{"connecting":false,"_hadError":false,"_parent":null,"_host":null,"_readableState":{"objectMode":false,"highWaterMark":16384,"buffer":{"head":null,"tail":null,"length":0},"length":0,"pipes":[],"flowing":null,"ended":false,"endEmitted":false,"reading":true,"sync":false,"needReadable":true,"emittedReadable":false,"readableListening":false,"resumeScheduled":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"destroyed":false,"errored":null,"closed":false,"closeEmitted":false,"defaultEncoding":"utf8","awaitDrainWriters":null,"multiAwaitDrain":false,"readingMore":false,"dataEmitted":false,"decoder":null,"encoding":null},"_events":{},"_eventsCount":2,"_maxListeners":100,"_writableState":{"objectMode":false,"highWaterMark":16384,"finalCalled":false,"needDrain":false,"ending":false,"ended":false,"finished":false,"destroyed":false,"decodeStrings":false,"defaultEncoding":"utf8","length":0,"writing":false,"corked":0,"sync":true,"bufferProcessing":false,"writecb":null,"writelen":0,"afterWriteTickInfo":null,"buffered":[],"bufferedIndex":0,"allBuffers":true,"allNoop":true,"pendingcb":0,"prefinished":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"errored":null,"closed":false,"writable":false,"closeEmitted":false},"allowHalfOpen":false,"_sockname":null,"_pendingData":null,"_pendingEncoding":"","server":null,"_server":null},{"connecting":false,"_hadError":false,"_parent":null,"_host":null,"_readableState":{"objectMode":false,"highWaterMark":16384,"buffer":{"head":null,"tail":null,"length":0},"length":0,"pipes":[],"flowing":null,"ended":false,"endEmitted":false,"reading":true,"sync":false,"needReadable":true,"emittedReadable":false,"readableListening":false,"resumeScheduled":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"destroyed":false,"errored":null,"closed":false,"closeEmitted":false,"defaultEncoding":"utf8","awaitDrainWriters":null,"multiAwaitDrain":false,"readingMore":false,"dataEmitted":false,"decoder":null,"encoding":null},"_events":{},"_eventsCount":2,"_maxListeners":100,"_writableState":{"objectMode":false,"highWaterMark":16384,"finalCalled":false,"needDrain":false,"ending":false,"ended":false,"finished":false,"destroyed":false,"decodeStrings":false,"defaultEncoding":"utf8","length":0,"writing":false,"corked":0,"sync":true,"bufferProcessing":false,"writecb":null,"writelen":0,"afterWriteTickInfo":null,"buffered":[],"bufferedIndex":0,"allBuffers":true,"allNoop":true,"pendingcb":0,"prefinished":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"errored":null,"closed":false,"writable":false,"closeEmitted":false},"allowHalfOpen":false,"_sockname":null,"_pendingData":null,"_pendingEncoding":"","server":null,"_server":null}]} esphome.0 2022-03-17 15:42:40.272 info Native Integration of ESPHome Dashboard enabled esphome.0 2022-03-17 15:42:40.268 info Auto Discovery startet, new devices (or IP changes) will be detected automatically
-
@opensourcenomad hast du das schon umgesetzt? Das letzte Update des Adapters liegt noch vor 12.2021.
Home Assistant Core 2021.12 or higher is required for ESPHome button entities to work.
Und kommt das Template nicht in die configuration.yaml oder template.yaml im Home Assistant? Aber die gibt es im iobroker esphome Adapter nicht. Habe die Ordnerstruktur durchwühlt.