@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
@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.