Anyone using Russound RNET component? I could use a walkthrough

As with most multi-zone systems, with the Russound system, you can choose the source for each zone and use the same source for multiple zones. I have two sources, and most times, only use one on multiple zones.

What’s fun with Home Assistant is, if there is a trigger, you can automate the source. For example, when the TV starts playing from Chromecast, the source switches to the TV for specific zones and it does the same when music starts playing with Spotify.

1 Like

I have a CAA66 that can be controlled via the RS232 using RNET. I am trying to get it controlled via HA. Found this thread and made a lot of progress but I may be missing something.
I have gotten this far:

  • Got a Raspberry Pi with ser2net installed in the shelf with the Russound caa66. I connected the RPi to the serial port using a USB to RS232 cable.
  • I opened a terminal window on my Mac and SSH into the RPi. Added the python commands to listen on the incoming commands and redirect to the USB port.
  • Added the platform RNET to the HA config YAML (running on a Synology NAS)
  • Now when I start HA the Russound zones all do show up and can be controlled as expected.

Issues:

  1. Link between HA Synology and the RPi connected to the Russound drop after some time. Also if I close the terminal window on the Mac the connection is lost (I am a novice user when it comes to the terminal).
  2. I tried to have the port listening start up on the RPi with reboot but I cannot seem to get it to work.

Question:

  1. Can I have the RPi start listening on its reboot?
  2. Can HA reconnect to the RPi without having to manually restart HA? Could it be done as a script instead?

I am probably missing something obvious.

Can you walk through your process for getting ser2net working on the PI please? I am trying to use a IP to serial converter and having no luck. Did you need to use a null modem cable into the serial port?

I used pyserial using the following steps

I used a USB to serial cable this one on amazon worked

Install pySerial as root on the RPi

sudo python -m pip install pyserial

Create tcp_serial_redirect.py in /usr/local/bin

cd /usr/local/bin
sudo nano tcp_serial_redirect.py

paste code from: [GitHub](https://github.com/pyserial/pyserial/blob/443e27de14a9a12899c8db600e44428927fc5364/examples/ 11)

Start with this command:

python /usr/local/bin/tcp_serial_redirect.py --rts 1 --dtr 1 -P 1337 /dev/ttyUSB0 19200

If no errors, create systemd service file:

sudo nano /etc/systemd/system/tcp_serial_redirect.service

Add the following to the file

Description=tcp_serial_redirect

Wants=network.target
After=syslog.target network-online.target

[Service]
Type=simple
ExecStart= python /usr/local/bin/tcp_serial_redirect.py --rts 1 --dtr 1 -P 1337 /dev/ttyUSB0 19200
User=pi
Restart=on-failure
RestartSec=15
KillMode=process
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=tcp_serial_redirect

[Install]
WantedBy=multi-user.target

Set to start on boot

sudo systemctl daemon-reload
sudo systemctl enable tcp_serial_redirect.service
sudo systemctl start tcp_serial_redirect.service

Hope that helps. I have found it to be really reliable.

1 Like

So before I start, did you install HA in a docker container on a raspberry pi?. If I ssh into the pi using the regular HA image, sudo causes the response that the command is not found.

Thanks so much. This is super useful. I don’t want to ditch my MCA-C5’s and spend $10K on 88’s just so I can integrate Alexa.

Sorry, I re-read the documentation, I thought for some reason that you had to run it in a docker environment. A simple Python environment is all that is required, I guess for those folks that can’t deal with python, then the Pi image makes sense.

I will take a run at it and let you know how it goes. Once this is up and running I will post a simple Pi3 image that someone can burn. There are many thousand people out there with a CAV for MCA that are looking to integrate their systems with Alexa. The forums are rife with the ask. I think that this would be an excellent solution if we can make sure that it is stable and relatively simple for folks that don’t know how to set things up.

Yes you are correct that you would run the command in any terminal SSH session and not in the docker environment. Sorry just saw the message.
I do agree that this could be more simple. It took me a few months to get things right (kept breaking things walked away for day out of frustration till I got it right). Now it has been rock solid. I actually like the integration which has allowed me to control.
Just added some automations to start piano music in the mornings for the “spa” feel (wife really loves it).

Thanks so much for your help. I did try loading up Debian on a PI and tried to install HA, but it locked up. Any advice? I offered an $800 reward for anyone who could get it running and so far no takers. I even got one of these devices to see if it was my serial interface, and still no joy.

Just about to post a new topic here, to see if anyone who knows this code can get it working. I don’t want to spend 15K on a pair of 88’s just to use Alexa

Here is the post, if you can help please feel free to reach out.

Not sure what your setup is. But here is mine with which I was able to get a stable system.

  • Home assistant is running in docker on a Synology NAS.
  • I have a raspberry Pi 3 running Debian with the this USB to serial cable connected to port 0. The bottom left one closest to the ethernet port. There is no HA running on the RPi.
  • With the RPi 3 I am able to do all of this over Wi-Fi.
  • I am not sure your PUSR is supported (could be wrong, just never tried it).
  • I connected the RPi to a monitor and keyboard to gain access to SSH
  • Once I have access. I disconnected the keyboard monitor and mouse and restarted the RPi now connected via USB-serial to the Russound
  • Then SSH into the RPi via terminal on my Mac (not in HA or on the Synology)
  • Then began to run the commands listed above to install the pyserial to my RPi.
  • Then on my HA install I updated the configuration.yaml to include the RNET integration
media_player:
   - platform: russound_rnet
     host: 10.0.0.228 # <<- IP address of the RPi (do set the RPi to have a static ip on your router)
     port: 1337
     name: Russound CAA66
     zones:
       1:
         name: Kitchen
       2:
         name: Living Room
       3:
         name: Backyard
       4:
         name: Office
       5:
         name: Garage
       6:
         name: Dining
     sources:
       - name: Sonos # << add the names of your inputs. In my case I just have my Sonos attached
  • Restart the HA it should connect to the RPi - you should see a connection message in the terminal (running on my Mac in my case)
  • Once I am sure the commands work I then started the commands as a tcp_serial_redirect.service on the RPi.
  • Restart HA and your zones should show up as media player devices.

This should get you to control the Russound via HA. Mine is now running for weeks without an issue.

Though I do have Alexa integrated into HA, I personally don’t use it to control the Russound. My personal preference is to set up automations and scripts to turn on music based on workday/weekend, at the start of the day (piano music just runs in the background). It turns off then we leave (household “away”) and turns back on when we come home. It also turns off during “quiet hours”. So on, I am sure you get the picture.

So in your scenario, you are using the pi running PiOS 32bit Debian with pyserial running as an IP to serial gateway correct? You are simply putting in the IP address of your PI correct?

What settings are you running with pyserial? How have you configured your Russound? Did you have to change your Russound controller setting (i.e to “firmware” or position #2). Are you having to use a crossover cable or adapter?

Why port 1337?

It seems like the two separate IP to serial gateways that I tried should do the exact same thing. Did you have to open up the same port (1337) on your router?

Yes, I am using the RPi as a serial gateway and using its IP address.

The step by step configuration of the Pi is in my post above. The python command sets the RPi configuration.

No configuration needed on the Russound. Just keep the back switch on #2.

I just used the standard USB serial cable with the FTDI chipset that I linked to in the previous post. Some users have had issues with other chipsets.

With regards to the port 1337, I believe that the pyserial is setup to open that port (I could be wrong). You may be able to use other ports but I stuck with this default and it has been very solid since then.

Though I have not tested it, I understand that the Home Assistant RNET integration is not compatible with other IP-serial boxes such as the Global Cache ip2serial. I have not tried others to confirm or deny that they would work.

All in all the RPi method worked really well for me once I got the configuration correct.

1 Like

I’ve been using ser2net with a serial to usb cable for over a year with my Resound CAV. The integration only supports a single unit at the moment, the underlying library supports multiple units but the HA integration hard codes the unit id to 1. I’ve been meaning to get around to updating it but haven’t had a chance.

I’m currently running my HA on a rpi4 and use the portainer add-on to run a ser2net container to expose my Resound unit.

My /etc/ser2net.conf:

BANNER:banner:\r\nser2net port \p device \d [\s] (Debian GNU/Linux)\r\n\r\n

3333:telnet:0:/dev/ttyUSB0:19200 8DATABITS NONE 1STOPBIT banner

I work with docker on a daily basis so it was easiest for me, have to mount the rpi4 USB device in portainer to /dev/ttyUSB0.

Hi, new to HA and trying to link my HA to Russound. (its an old cam 6.6 w two of them).
having 2 issues -

  1. cant get more than one cam6 (more zones) recognized by HA (successfully added one cam 6.6)
  2. the zones I can add are recognized by HA, but I can only send commands to control power - no volume or source (The entity does not have a unique ID)

my settings -

in my main config.yaml file
media_player:

  • platform: russound_rnet
    host: 192.168.1.166
    port: 4999
    name: Russound
    zones:
    1:
    name: Living Room
    2:
    name: Deck
    3:
    name: ABC1 Room
    4:
    name: Bathroom
    5:
    name: ABC Room
    6:
    name: Guest Bedroom
    7:
    name: Tester
    8:
    name: Zone 8sources:
    • name: Sonos*

cam’s are connected to the network w a serial to ip device by global cache - I know from other integrations, if you have multiple cam’s connected via their rnet connection, a serial to ip connection to one will talk to multiple devices. just don’t know the ha programming for this.

also, running HA supervisor on a vm Debian system

any help much appreciated

Thank you for the great instructions for setting it up. I followed the instructions and it worked perfectly the first time! That’s a rare occurrence for me.

I’ve posted this in other threads. I’m hoping someone can confirm my observation that it seems the bass/treble/balance controls are not implemented in the Russound integration? Is this correct? Anyone know how you’d go about implementing them? The Russound integration is part of the HA core. How do you request a feature upgrade or is it possible to fork and create your own? I’d really like to be able to access the tone controls so I can mess with the different speakers in my house.

That is correct, they are not (I’m just setting up this integration this now for myself).

I would like to see if it’s possible to add the following to the integration:

Unique entity_ids (I’m sure this could be figured out)
UI based Config

controls/attributes
Base
Treble
Balance
Turn on Volume (I really like being able to automate this one!)

I know that there are other options based on teh controller and honestly I don’t know which of these mine supports (CAA6.6)
Loudness
Do Not Disturb
Party Mode
Party Master
Shared Source
Background color

(not sure those are the names, I pulled them from the homeseer plugin which I used previously)