Open jaymunro opened 7 months ago
I like this.
I think we should move it out of this folder though as it can just be used generically for any s3-box-3 and doesn't need to be for voice-assistants.
Jesse
I and others have had this running for several weeks now with some battery calibration performed from 2 separate users. See https://community.home-assistant.io/t/esp32-s3-box3/638287/146.
I think having it as a package will make it an easy optional addition for those using the sensor dock. Not sure on the best location for it though.
I like this.
I think we should move it out of this folder though as it can just be used generically for any s3-box-3 and doesn't need to be for voice-assistants.
Ah ok. I'll move it to the voice-assistant folder then...
Development recorded here: https://github.com/esphome/feature-requests/issues/2475#issuecomment-1879449021
Screenshot of the device with the additional sensors and configuration options
Presently testing the compile with the yaml:
substitutions:
name: esp32-s3-box-3-5ad0fc
friendly_name: Jarvis
micro_wake_word_model: hey_jarvis
packages:
esphome.voice-assistant: github://esphome/firmware/wake-word-voice-assistant/esp32-s3-box-3.yaml
esphome.voice-assistant-sensor: github://jaymunro/esphome_firmware/voice-assistant/esp32-s3-box-3-sensor.yaml@sensor_dock
esphome:
name: ${name}
name_add_mac_suffix: false
friendly_name: ${friendly_name}
api:
encryption:
key: xxxxxxxxxxxxxxxxxxxxxx=
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
Looking at your comment again @jesserockz, I think battery and radar stuff can be pulled out to an even more generic location (where?), but the Mute when absent
is specific to voice-assistants.
Where ever the others are moved to, the Mute when absent
should either be kept with the voice-assistants or there would need to be some method to automatically only include that toggle if voice-assistant is present. Is there a best practice for doing this?
Ah yes good point.
I think all the actual sensors could go in one file and mute on a sense could just be documented somewhere that people can add to their adopted yaml even alongside the package line they are already adding
I've been looking through the file structure and it seems the only location for box3 firmware is inside the voice-assistant folders. As these sensors only work with the sensor
version of the dock on the box3 (not even the gen1 box), then there would need to be yet another esp32-s3-box3 folder that is not VA related.
TLDNR: Presently there is no generic location that I can see. Is there presently a non VA use for the Box3 with sensor dock in ESPHome?
Perhaps, what could be done is the basic functionality could be modified to be a stand-alone package and go into esp-web-tools
as esp32s3box3sensor
. Is this what you had in mind @jesserockz?
How then could this be made obvious to people setting up a box3 with sensor dock as a VA? Can an alias/link/shortcut to that file be put in the voice-assistant folder? Probably not best though imo as additions to it in the future that would work stand alone without VA, may conflict with VA. I am thinking of the i2c bus for temp and humidity as a very good example (there is a serious conflict with VA).
The resolution then may be just to have two versions, one in web tools, the other in voice-assistant (and maybe another in wake-word-voice-assistant?? So that people going for the micro wake word know that the sensor dock components will be compatible).
I am adding lines at the start to make it stand alone for web tools. I can also add the i2c bus with temp & humidity to it as they work and without VA present, VA will not self destruct.
Thoughts?
My further thoughts are that although adding a generic firmware for the box3 sensor dock could be useful for someone, I actually put the package together for VA based on a number of forum comments requesting the radar sensor so the box:
Can we think about adding it as it is so that people waiting for it can use it now? The addition to web-tools sounds like a whole new project as there are people wanting to add TH and screen interaction that conflicts with VA.
I'm unclear as to what the difference/purpose of the esp-web-tools
folder vs. the esphome-web
, so I have added the sensors as a separate generic yaml in esp-web-tools
.
I have also added comments to the voice-assistant version in the voice-assistant
folder on how to use it and it's purpose.
I would suggest that we create a new firmware folder. Each folder has a purpose and we don't want to mix it up.
I would suggest that we create a new firmware folder. Each folder has a purpose and we don't want to mix it up.
Can you clarify Paulus? Do you mean for the generic firmware or the voice-assistant specific one? Or are you suggesting putting both in a folder like box3-docks
?
@balloob @jesserockz , I have created a new folder esp32-box-docks
that could be used for all the Espressif box docks and their various uses.
I've populated it with 2 yaml files:
If that makes better sense, it should be ready to go.
Please take a look at the requested changes, and use the Ready for review button when you are done, thanks :+1:
@jesserockz, did my last changes meet what you were asking for?
Hey @jaymunro - I'm trying out your custom YAML and so far so good with everything except the battery sensors, I get
collect2: error: ld returned 1 exit status
*** [.pioenvs/esp32-s3-box-3-5a92ac/firmware.elf] Error 1
when trying to compile with those sensors added. Commenting them out allows it to compile again but I recently got a battery and would love it to appear in HA too. Any idea what the issue could be?
To be added as an extra package in addition to the main esp32-s3-box-3.yaml, e.g.
All additions only use GPIO pins. I2C bus is not touched so it is very low resource usage.
Provides
Sensors:
Binary Sensor:
Number:
Switch: