Perhaps someone with Python experience could write a pyanthem program that can be communicated between Home Assistant and Anthem receivers.
Even if I do decide to write a Python script, I don’t have $1,300 for MRX-520 to test it with. At least Anthem receivers do not have a lot of bells and whistles such as AirPlay which I like.
And just a minor note, I might have a tendency to get mixed up with Share Your Projects and Future Request forums. Usually the Future Request forum is below the Configuration forum, but then Share Your Projects seems to be more popular and I might accidently click in that forum to post a feature request. To me, that’s just logic and has nothing to do with vision problems (yes I am visually impaired).
Update: Oh, wait! Anthem has the IP/Serial Commands document in XLS format. UGH! Dang… I need to download LibreOffice…
Update 2: For almost every row in the spreadsheet, the words get cut off at the end of the line. For that, I used an XLS (Excel) to PDF converter:
I have a MRX500 that I have made a cutsom media player for. I use it with a iTach ip to serial which from what I understand behave much the same as the later ip controlled anthem relievers.
I will put it up on GitHub soon. Modifying it for the 520 should be pretty straight forward as it much the same protocol just slightly different commands.
I have made the component with the following features:
updates every 10s (media player default I think)
volume slider range able to be limited to specific volume levels.
volume up and down currently at intervals of 1, but might make it customisable
zone selection. different media player for each zone is how I have it.
source select is working but needs some refinement. Maybe allow inclusion/exclusion options and possible friendly source names.
power on and off
mute toggle
My code is not pretty, I made the component and learned the component build process by pulling apart other component and then trial and error until I had something working smoothly.
At the moment the code opens the connection, sends the command, waits for the response and then closes the connection. I have other code/devices the open a connection and monitor it all the time. I may change that later but the 10s delay is fine for me at the moment.
What I could do is break up the code for the Anthem commands and make the make the model selectable. This could then pick the correct commands. From my brief overview of the Anthem serial commands in the past, if you exclude all the fancy commands (e.g. AVM50) and focus on the features I have implemented above then there seems to be only two types of serial commands.
One thing I learned from a previous coding project for my anthem is to never have music playing while testing… I found that mistakes in the volume commands can set the volume to 0db!!!
Nice to have you in the HA community to write a component for Anthem. Will you be making a pull request for including in Home Assistant?
It would be nice to ask people in AVSForum and Audioholics who might have Anthem receiver to test out your component in Home Assistant, although I’m unsure if that would be constituted as advertising.
I haven’t been on those other forums in a long time. I would think that if you are sharing integration and control tips and tools that shouldn’t be advertising. But, I do know some forum are very particular about these things.
I hadn’t even considered additional testers yet. I developed this component for me and then thought maybe someone else might be interested. Only then did I find this post. Probably should have looked on the forum first just in case someone had already done it.
As for doing a pull request, that is something i will probably do but i am really busy over the next couple of weeks so it may not be for a few weeks.
I have uploaded what I have got to GitHub so that you can have a look. github link
This was included with yesterday’s 0.37 release of Home Assistant. It’s a proper asyncio local push implementation which has been tested with the MRXx20 and AVM60. Should also work for the older MRXx10 models, but definitely not the x00 models. The underlying Anthem Python library is at https://github.com/nugget