MonoPrice 6 zone Whole home amp Driver

The only time I ran in to an issue if I miswired the cat5. Other than that, no issues.

No issue there either you probably got a bad amp
Where you able to control the zone with the driver or the phone app?

Didn't get that far :slight_smile:
The amp is on its way back to Monoprice. Hopefully the new one will install without a hitch and then I'm going to try your magical work via the RS232 port!

did you get it working with the new amp?

Haven’t received replacement from Monoprice yet :disappointed:

Edit: Received today, will install tomorrow. Plan to work on the HE integration this week!

So, I have been lurking this thread for a while and thought I would add something that I have been working on for this system. I really want to have HE do tts to the PA function of the amp. That way I have it play everywhere in the house. I tried and tried to do it via the serial commands but it doesn't seem that the PA function can be controlled.

Because of this I built a little box that will do the tts functions. It is simply a microcontroller that can recieve a mp3 url (from bigtalker2) and play it. The microcontroller also triggers a relay that is connected to 12v. That 12v is connected to the PA 12v trigger on the back of the amp.

Parts I am using so far are a 12v to 5v buck converter (to power ESP32 from 5v and relay w/ 12v), an Adafruit ESP32 Featherboard (any ESP32 dev board will work), and 3.3v relay. All said you could build this for about $25.

So the way it works is this: Bigtalker2 sends a url to the ip address of the microcontroller. The microcontroller then triggers the 12v relay which activates the "PA" mode of the Monoprice amp. It then plays the mp3 url provided through it's internal DAC to channel 1 RCA on the amp (as this is the PA source channel). After the mp3 is done playing (however long it is) the microcontroller then turns off the relay.

That way if people are watching/listening to stuff on different channels in the house it will temp turn on PA for the announcement, then turn off the PA and everything resumes like normal.

This is step 1. I am now going to work on getting the ESP32 to control the rs232 as well so it would be a single box for the PA controls as well as the rs232 commands.

For now I am just sending the microcontroller regular GET commands via the browser while developing, so the code will change to fit the bigtalker2 communication scheme when I implement it. I also built a very simple driver so the system will be seen as a mediaplayer by HE and Bigtalker2.

Once I get it fully operational I'll post the code for the microcontroller and driver for anyone here to use.

2 Likes

Setup my rpi today, installed this code, and it worked the first time without a hitch! Love love love this!

Damn, now I'm going to have to buy another MonoPrice 10761 to cover the whole house because this works so well.

What I did for the PA is I plugged a 12v transformer in to a Zwave plug which triggers the PA port on the Monoprice. I setup a rule for that outlet to only trigger from 9am-9pm. I have a Zigbee doorbell module so if the doorbell rings, that outlet will fire for 10 seconds and Hubitat will make an announcement on the Chromecast Audio that is on input 1 "Someone is at the front door."

Anyone used this device handler for multiple 10761s? The documentation suggests that “Number of Amps” doesn’t work yet.

sorry for the miss lead I don't know where you read that i need to change it i already implemented 2 and 3 amps I only own 1 but I believe someone already got 2 working on this driver

@curtman3, @joshrperson how exactly the PA work? I got the feeling I could make something via parent driver that simulate the same effect?

I use it with two amps and it works great!

@martinez.mp3 We have small children so the wife had me put contact sensors on all the doors so it will announce throughout the entire house when a door is opened so she knows the kids have escaped.

I have tried and modified other libraries to control the serial port and could not get it to trigger the PA function on the amp. I then tried to hack together just turning on all the channels and setting the volume then switching them all to a single channel (that the tts would play on) and the switching them all back to where they were before. It was too slow and too complex and hard to time with the tts start/stop.

The amp has a 12v trigger for the PA. Just give that trigger 12 volts and it will set all channels to on (if they are off) and in “PA mode”. Then anything can be played on channel one RCA input and it will play in all 6 zones. Remove the 12v from the PA trigger and everything goes back to the way it was.

I messed with building my own thing on the pi a bunch of different ways and decided it was overkill for this. That is why i switched to the ESP32 microcontroller. Cheaper and lower power with much less code complexity to mess with as you dont have to deal with a full OS.

I currently have it working for the PA portion on a breadboard. I am now making everything more permanent on a pcb. I am leaving it open to also add in a tcp/ip to serial converter which will act exactly like the python code on the pi you guys are using...so it should be plug and play for your drivers in HE. I am more than happy to write the mediaplayer portion of the driver (i already have it roughed out) and just merge it with your driver.

If you ever get telnet working on esp32 send me a copy of the code I try to make a wireless controller for the amp but look like the wifi library for arduino have a bug and only connect for a few seconds then drop I ran out of time and put the project in the back for a while
I'm assuming you are working with arduino c++
I also try with micropython with no success ider

@martinez.mp3 will do. I may even try to add in a usb to ethernet bus on it so i can run rj45 instead of wireless as i like to avoid wifi wherever possible.

I don’t know how to give you access to the git hub of the driver so you could change the driver with your modification I believe will be better if we combine this in to something better for everyone

According to the manual, "PA" is used for PA control (just like "PR" is used to control power). Maybe there's a way to do it via telnet...

Helpful to know. Do you create a separate HE device for each amp, or would you able to create a single virtual device for all ~12 zones across both amps?

@martinez.mp3 ill just pull your driver and modify it offline. If i get it working ill just hand it over or submit a pull request.

After a brief look, it appears that doing telnet to serial is straightforward on the ESP. I will just have to modify my server code to run asynchronous as i currently cant have anything in my loop that is blocking as it effects the mp3 playback.

Ill keep you posted.

@randper you would think that from looking at the docs, but it seems to be a read-only element. I tried a million ways to trigger it to no avail.