How I got Home Assistant to work with the Monoprice 6-Zone Amplifier

Well it took a bit of time, but I figured out how to configure and control the 6-Zone Amplifier from Home Assistant. Works well…so far.

I added my notes to my website if you want to read through them.

https://homeassistant.jongriffith.com/Tutorials/Whole-House-Audio/Setting-Up-Monoprice-6-Zone-Amplifier/

1 Like

I followed your writeup. While I was able to get the amp seen by HA, all of my media_player entities don’t do anything. I’m not able to turn them on, off, switch inputs or anything. I saw some issues with the cable so I used putty from my laptop and using a USB to Serial cable and was able to run serial commands to manipulate the zones and sources directly.

I can see HA logged into the USR-TCP232-302 but all of my commands are timing out. Did you run your TCP232-302 as a TCP Client/Server, UDP?

I’m running it as a server and can delete and recreate the integration without problems. I’m a bit stumped on how to test serial commands sent via the IP-Serial box to test.

I’m in the exact same boat… I have the amp seen by HA and all appears well there, but entities aren’t working.

Did either of you end up getting past this issue? I’ve run into the same thing and haven’t figured anything out yet

1 Like

I abandoned the USR-TCP232-302. I’m running HASS on a virtual machine in VMWare and passed the USB-Serial adapter through the host to the VM.

Not sure what your specific setup is, but my VMWare settings look like this:


I had to create the USB Controller first and then save my settings. You end up seeing the /dev/ttyUSB0 device in the OS:

image

My USB-Serial adapter is a Prolific brand so that’s what you can see in the dmesg output.

Everything works pretty well now. I configured my two inputs (5 and 6) and renamed the outputs accordingly. The integration creates all 18 outputs if you ever choose to chain the 3 amps together, so just disable those. But you can see here I have my output, can select my input and then I just use my app (typically Spotify) to throw the music to that destination and rock out with my c…I mean, party.

Hopefully that helps.

I know this is an old thread, has anyone attempted to power on one of the Monoprice Whole House zones at a certain time of the day (for example as a morning alarm) and start playing one of the streaming (Chromecast)? I can power on a zone and control it with media control card, but having difficulty figuring out how to intergrate that into a timer or automate this setup (just started to learn HA) thought I ask here. Thanks in advance.

@spillins
I didn’t do much with it afterwards and I have rebuilt the server since and havne’t redone this. The automation to turn a device on at a specific time is pretty easy. One of these days I’ll get to the more complex automations.

Hey Shaun, I took another wack at and figured it out, so easy with “Call Service and media player: turn on”. I guess I just needed that extra push to try again, feel bad now even asking about prior to trying again. Thanks again!

No worries. I may reach out and see what you’ve done once I have time to take another swing at my setup.

Any luck getting this working? I’m having the same issue.

How do you know what port id to enter for the USB-Serial Adapter? Mine shows its on USB 2-1.

Not sure about a USB serial adapter. I’m using an ethernet to rs232 serial adapter which means I need to point to the : which is set in the configuration for the serial device, which has a web interface.

My setup is at 192.168.1.74, so when I login to that and look at the serial settings page, there’s a port number setting there.

Thus, the config is socket://192.168.1.74:8235.

Not sure how the USB adapter works, but according to the docs, it doesn’t specify that a port is required when not using the IP type of connection. :man_shrugging:

Are you talking about the “Port ID” field within the integration setup after you add it?

I went to Settings → System → Hardware → All Hardware (Version 2023.11.1) and scrolled down to ttyUSB0.
I copied the entire ID string:
/dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0

This is what I used for the ‘Port’ field in the integration.

I spent more time than I care to admit trying to get this to work… answer was a NULL MODEM CABLE. Sharing to save others their precious weekend time.

TLDR, I had previously been on RPi using both a USB to serial adapter and a serial cable, all parts I had lying around the house. That setup used the above noted /dev/ttyUSB00 or whatever USB number it was. Worked great. When I moved my setup to a server running Proxmox, every attempt I had at using the USB adapter failed. After passing the USB through it would never get listed as ttyUSB but instead something to the effect of /dev/bus/usb/002/002 and the monoprice setup just wouldn’t accept it. I ended up buying the exact ethernet to serial converter mentioned in this post. Following the guide, it was online, the monoprice configure saw it and finished the integration. However, all zones were unknown. Using the web gui for the converter I could see that it was receiving requests from HA but never transmitting information back. Since it’s been a long time working with serial cables on any project nothing jumped out at me. After many many many google searches I found deep in the bowels of another forum someone with the same issue on this converter and the responding post were like use a null modem cable my dude. duh! Apparently that USB to serial converter I had previously did the null modem pin swap for me.

I think the difference is that on my system I used an ethernet to serial, not USB to serial, so there wasn’t a need for any hardware passthrough to the VM.

Thanks - that was a typo (corrected my post). I too bought the ethernet to serial device you had listed. So you are correct nothing to pass through to vm related to that. It was my attempts with the old USB one that passthrough wouldn’t yield useful results. Thanks for this post btw!