-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NEW Features I want to add and other enhancements #49
Comments
Hope you don't mind me just commenting the code here, I've never done a PR before 😆 I have the IR blaster working on mine. There's 2 caveats:
First I added a switch for the IR Receiver. I reckon it should be set to ALWAYS_ON, but likely there's a better way of doing this.
Add this as well. If you don't need to see the received IR codes in the logs, you can remove the
My use case for this was toggling a fan and TV that's close to my desk (where the Box S3 sits). I didn't incorporate learning or anything, just created buttons that send the commands.
To get the codes, start viewing the logs in ESPHome, then just point your remote at the receiver and hit the button you'd like the code for. It does all work, however the blaster is so weak it's practically useless. I'm not sure if there's a way to increase it's power? |
Hi, All the best |
Add easy firmware upgrades from within the ESPHome Dashboard( straight from within the S3-Box3 card) I would really love this! 😊 Notes from HA release 2024.7.3 "Besides the new logo, ESPHome has added a new feature that works with this release of Home Assistant: The ability for makers of ready-made devices or projects running on ESPHome, to provide updates for their devices directly to Home Assistant. This means that if you have a device that is powered-by or Made for ESPHome, and the maker of that device provides updates for it, you can now update that device directly from Home Assistant; without the need for you to build, adopt, or set up the ESPHome software yourself! 😎" |
This is included in number 1 in the todo list ;) It will happen ... just will take time as it is not a quick straightforward thing for me to implement. I am also providing support and replying to questions etc which all takes time :) But one thing for sure... IT WILL HAPPEN ;) |
After a little research this morning, one limitation with enabling OTA updates is that 50% of the total flash size of the device has to be reserved for the OTA image. This will greatly reduce the amount of available flash for the actual config. Currently the flash size required is around 42% of the available 16mb so enabling OTA updates will greatly limit the available space for developing the config further. |
is possible to add option to play sound audio response to any chromecast speaker. i know this can be done with editing the yaml but very cool if it is can be done from UI? |
Just so I am clear. Would you like an option 'switch' that you can tap to change if the audio is outputted to the internal speaker or to an external HA media player ? |
yup. that would be cool |
OK! thanks for confirming, I will see if there is a way to make that happen 👍 Thanks for the suggestion. |
Any chance of adding continued conversation mode al la |
It's something that I can look into, I am conscious of the available flash space on the device and still have a few things that need adding. But I will add it to the list and see what can be done. Or if anyone else wants to try and incorporate it then feel free ;) and raise a PR |
i had an idea about the upgradeability, if we use packages on the endpoints with substitutions it could just point back to the repo. wed just need to specify the mandatory substitutions on the end user end. I'm running like this rn actually. |
if this is something that you currently have running, at the end of a compile it will show a percentage of flash used. what is yours showing ? as it is my understanding that even with the use of packages etc these are still pulled and compiled into the firmware. therefore still taking up flash space. Unless I am misunderstanding what you mean :) |
heres my output `INFO ESPHome 2024.7.2
|
and how im applying it substitutions:
wifi: |
so this likely wont save space but endusers could use the above config and anytime the repository is updated an enduser could just re run the install instead of copy and pasting and recustomizing |
ah get you now , yes this is what i am looking to do soon, and to add substitutions for each entity in the same config file and then just have all the core no-need to edit stuff in the package. I do need to figure out though why, even when i remove the ota: component completely and flash over serial it is not allocating the full 16mb flash. I was under the assumption that ota reserved 50% flash for the ota image so if it failed it would always use the previous image that is stored in flash and therefore very hard to 'brick' the device... but thinking about it... that may be something to do with safe mode.. i need to research a little more. But to summarise... yes.. you are spot on with what we should do. :) |
Hi Bob I don't really mind what you do but the install process really is confusing and time consuming and if it has to be done from scratch each time it is a nightmare for people like me who have moved to OSX and don't have an old computer with direct USB and a https HA webserver. Trust me I know I am now trying a new install from scratch and am having problems again due to the above constraints of ESPHome. There are also so many hidden steps with trial and error and no manual for the device itself what to do how to reboot etc. swapping between cables, wifi not knowing whether the screen is blank because its not rebooting or because it;s being swtiched off - Trust me this is not a project for the masses, not even boffins like me who have a fair bit of practical knowledge with both HA, networks, computers etc what to do, right now. I just can;t seem to get yr firmware easily onto the device. Not yr fault mate. The whole device itself (having to be flashed by USB) and ESPhome for me totally sucks! Cheers |
Thanks for all the efforts Bob...ok so I am up and running (again)- you know what the problem/s combined were? 1/old drivers in the mac that contained USB (most macs don't now) - PS who wants to add a driver from the PRC that is blocked by OSX? (Not me!) 2/ The USB cable shipped with the device not 100% suitable for data. I say 100% because the 1st time it may have worked maybe not - I think I recall I got it to load via wifi but not this time I compiled then loaded yr program with a different USB cable I knew was data OK (past experience with Junkies Ulanzi clock build) and then uploaded it to the SBox 3 direct off my HA running linux server and all was good. Trial and error figuring out what the bottlenecks were and pathways to use I guess - See what I mean Bob? Anyway now I have a reliable way of uploading yr updated YAML file all will be good until you find a quicker and easier pathway to firmware upgrades ( which would be needed for mere mortals Bob! ) Just MO! |
HI, Thank you for your patience and understanding and I hope that despite the hiccups, you will find the project more useful than the device being 'just a voice assistant' Best Wishes |
Rob, The discord invite has expired. Can you sent out a fresh one? |
I have added a new link , I didn't realise there was a time expiry. The new link should stay permanently active. https://discord.gg/U3SRYCG6Kp cheers for letting me know, |
Works like a charm. Thank you. |
Would you accept a PR to allow the Status bar to work everywhere or have a internal toggle for fullscreen apps? |
I'm not quite sure what you mean by to have it work everywhere? it should show on all normal operation pages and be able to tap for info etc.. if it isn't then i can fix it. But if you could explain in a bit more detail that would be great |
Currently when for example the wifi page is shown you can't switch to the timer page. |
ah ok ... i get you ... by all means if you wanted to make a PR i will certainly take a look. it's a good idea 👍 |
The status bar could also be put into a script so the config is not as big |
I'm open to any suggestions and contribution . I am not a dev or coder so have done everything with the limited knowledge I have |
can s3b_import.yaml be deleted can't see it mentioned anywhere? |
it is the config that is imported after flashing from the web installer - i'm currently changing the way that is organised |
It is the same as s3b.yaml so you could just point to that. |
yes, i am in the middle of re-organising i am just having a few hours off from it today :) it is all in hand. The manifest is pointing to import and will be changed in the next day or so. |
I am currently in the progress of displaying the sensor version text when the package is imported. have a look at the progress: https://github.com/archef2000/ESP32-S3-Box3-Custom-ESPHome |
sorry - i'm being stupid... what should i be looking at 🤣 |
WIP so just this currently as I am experimenting with the universal config. |
ok i'm with you now, users will need to be able to have access from the dashboard to the following: substitutions: |
How should I go about adding the universal file?
|
They will have access to all except the
|
I need to sit down and properly look and go through it, as I am also creating separate web installers for the different versions. I will hopefully have some time tomorrow to have a proper look and test. |
The s3b_universal.yaml now has the display script and package import. I only have the 3B version so please test it with your sensors. |
Hi, |
Hi @BigBobbas , I would like to share a suggestion; but I'm not sure where to speak about it. So I try here; but let me know if you think this is out of scope of this thread or this repo :) I'm planning to use several esp32-s3-box3 in my house. They will all use the same wakewords list and they will be located in several rooms. My question: do you have any plan for adding some kind of "anti-concurrency" mechanism in your firmware ? Concurrency problem I have in mind:
Example of problems I have in mind:
I'm wondering if some kind of "clustering/quorum" feature could maybe help us solving this problem ?
I would be glad getting your feedback guys :) Is this question relevant ? Is this thread/repo the right place to talk about it ? Thank you for your feedback |
My first instinct would be to not call the "turn on"/"turn off" functions.. but to call a custom script that checks if it has been toggled in the last second.. and if not? then do it. That would probably stop 2 devices doing the same thing at the same time. |
@BigBobbas I have now fixed the compilation errors. It is not the cleanest but the python script befor the compiler is complaining about the missing ID's so the no sensor version needs dummies. explained here I would like it if you could test it on your side and then I would clean the repo and make a PR. |
Hey there! First of all, let me say that I bumped into this project because I was frustratingly looking for a semi-pre-built-but-customizable solution, and this was the best one I could find. I will keep an eye on this repo, and provide some feedback/contribution when I feel like I have something useful to share. Now, to comment on @jerome83136 question:
I'm also interested in this, so I decided to comment here because, before finding this repo, I found this other project called Willow, which sounded a lot more complicated for what I wanted initially. It seems like that project was able to implement the "device concurrency" by using a central controller (which they call Willow Application Server), so I have a feeling this would be a little hard for @BigBobbas to implement. But hope is never lost, and I'm willing to be corrected. Just thought about sharing what I have seen out there to see if it helps with the discussion. Keep up the good work! |
Here is a list of things I want to add or change - but haven't had time to complete. Some may not be possible ... but can't hurt to try. This is my 'to do' list. Please feel free to comment or even take on a task and contribute ;) Without the input of you guys this would be a very boring project.
If you would like to contribute at all , please use the dev branch and make a PR with any proposed changes. The 2 files to look at are the sensor version
no sensor version
These are in no particular order of priority, just straight out of my head.
create a package with core config - giving users less YAML to have to scroll through to make their own tweaks and customisations.
also use more substitutions etc.
use subs for adding entities.
look into using ota updates to just update changes - recently added to ESPHome but haven't had the time to investigate how it all works
Create a web installer for non-sensor version
Create a DND option to turn off screen and mute mic / speakers - preferably with a time from - until selection from the device
Add visuals for additional timers and also naming of timers
Add user configurable 'time out' duration for screen saver and brightness to dim toto be releasedadd colour selector for backgrounds - would need to be a set number of colours but would like to do this from the device.
Pull in calendar events from HA as visual notifications.
change interval method for screen brightness... don't like having to run it continually every 1 secadded condition to check current stateremove unnecessary entities in HA for the device.entities tidied and re-vamped - TBRUpdate guides and add an operation guide.
add additional sounds with option to select for wakeword
add IR blaster config
fix mute!!! STILL 🙃re-written and now working~~ TBRadd STT and TTS text sensor. Add spoken text as sensor #50✅Add switch to change audio from internal speaker to external media player. as per feature requestimplemented and TBRadd continued conversation as per this request
add switch for continued conversation as per request from Sir_Hartley on discord here
The text was updated successfully, but these errors were encountered: