Thank you for working on this, Brad! It sounds wonderful.
I did try to give your code a go, but unfortunately could not get it to work. When I followed the instructions, from what I could see HA simply loaded the previous Monoprice integration (i.e., not the one with your updates). I tried disabling the prior Monoprice integration, deleting it, and making changes to configuration.yaml, but results were still the same (i.e., the prior Monoprice integration loaded each time). Do you have any suggestions? I would love to incorporate these new features into my setup.
Dang, sorry to hear that. This is my fist integration I have created that overrides a core integration. I will do my best to have a fix out today. I will post a message here one I have it fixed. Thanks for letting me know.
Thanks, Brad. If I am understanding this correctly, I can use the files I downloaded from github previously, but should rename init.py as you have indicated above.
I tried this approach as well. I should note that I also have a folder called translations under the monoprice folder. It is still a no-go (loads previous integration). As with the last time, I also tried disabling and deleting my prior Monoprice integration, and still no luck.
Also, I should note that–to understand whether this works–what I am doing is checking to see if there are any new services associated with the monoprice integration, and I also try to see what happens when I add a media control card (I am expecting to see the sound mode feature to become available on the media card).
Sorry I fixed my comment above for the correct __init__.py, the translation folder is also correct.
What version of Home Assistant are your on, I have only tested this on mine: Docker Install: 2022.4.6
You should see some items in the log about the Monoprice Integration. can you post those here?
@DaveW42 I have updated the repo the custom integration will no longer override the core integration.
I hope this fixes it for you. Before you add it, be sure to disable the core integration.
Please let me know how this works for you.
The new integration name is: Monoprice 6-Zone Amplifier Custom
Unfortunately still no luck. It keeps going to the original integration. I downloaded all of your github files again, including the py cache directory. I tried adding the integration with and without adding " - platform: monoprice_custom" to my configuration file (plus the corresponding port configuration line). I am running HA 2022.4.6 on a raspberry pi4 with Hass OS 7.6 and supervisor-2022.04.0 (i.e., the latest versions of each). After trying this in several ways, I then restore my HA instance to what it was before we started trying the new integration (i.e., it should provide a fresh start each time).
Just to confirm, when I choose to add your custom integration, should I be clicking the green add integration button at the bottom right of the configuration screen, and then selecting monoprice from the options presented? That’s what I have been doing. I did look to see if you placed this in HACS but i didn’t see it there. Additionally, even though the files are in the /config/custom_components directory, HA does not auto-discover the custom integration.
If there is anyone else out there who wants to give this a try that might be helpful too (in case I am missing something).
Lastly, is the DSStore file needed? I’ve seen some weird behavior with that file. In my previous tries I’ve included it certain times (I’ve tried running the code 10+ times), but I also noted that the file didn’t appear in your list above. The last time around it copied fine, but this time around–just before I posted this message–I tried things from scratch again and the file wouldn’t extract from the zipfile when I downloaded it using the “Download Code” option in github.
Just wanted to say thanks. I originally made this request in 2020.
I got it up and running, and as I had a lot of automations setup using the original integration, I had to first change the entity ids of the original integration zones, then rename the custom ones.
I’ll continue to test, but so far things seem to be fine once I changed the entity ids back to what they were.
Question: Is it possible to have UI sliders/controls for bass and treble? I see that we can set specific levels, but obviously this isn’t convenient for quick on-the-fly changes.
Thanks again, this is great even if we can’t get sliders.
Great to hear you got this going! Could you perhaps talk about what you did to get it going, that might have differed from what I was doing? I’ve probably run through the steps 15+ times at this point.
With regard to this, I have some specific questions as well:
How did you add this integration to your system?
Did you make any changes to configuration.yaml, to get it to work?
Did you disable or delete your prior Monoprice configuration?
DId you do anything with the DSStore file?
What is your setup (e.g., docker, raspberry pi with HA OS, etc.)
Any insight you might be able to share would be great, as I have been trying just about everything I could think of.
I agree as well that it would be really nice to see sliders if at all possible.
Thanks for your feedback, I am glad it is working for you! I will continue to work on the integration, I agree sliders would be a good idea. I will have to do some research and see if this is possible.
To be honest I didn’t do any yaml config changes, etc.
All I did was…
copy the “monoprice_custom” folder into my “custom_components” folder
disabled my Monoprice 6-Zone Amplifier integration in the config/integrations
restarted home assistant (not sure if it’s necessary)
clicked “add new integration” in config/integrations – selected the monoprice custom one
then set my input names and ports (same as the previous one)
finally, in order to avoid having to redo all my previous automations/scripts/etc, I renamed all the old monoprice entities by adding a “_old” to the end, and then renamed the new entities to what the old ones were
Support has been added for Balance, Bass, Treble Slider entities. There are also now 3 sensors per zone for PA, Do Not Disturb & Keypad connection status.
Just did it…did not need to re-setup the integration.
However, I noticed that it obviously added a whole lot more entities as expected. However, when I first installed the custom integration, the 2nd and 3rd set of zones (if you had 3 units daisy-chained together) were automatically disabled by the integration. But when all the new entities were added, they were not automatically disabled for those disabled 2nd and 3rd sets.
Not a big deal as I selected all of them and disabled them manually.
Haven’t played around with any of the settings, but I’m assuming that there may be a way now, to utilize the PA sensor to trigger a broadcast based on an event?
Thanks again for the amazing work updating this integration, and quickly making enhancements.
The balance might be better if the range was -5 to +5, where middle was 0.
Not sure if this is possible as I suspect the monoprice control is dictating that, but thought I’d ask.
This might be bigger, but currently when you turn on the zone in the UI, the volume slider is visible. But once you turn off the zone, the volume slider is not longer visible. Is it possible to do the same for the Bass/Treble/Balance sliders?
Thanks again, looking forward to anything new you can think up.
Unfortunately this is a limitation of the amp, however a workaround could be changing the step amount from 1 step to 2. Doing this will make movement of the slider for effective with less movement. What do you think?