(This product is now available for purchase)
Also, check out PART 2, which goes into more details >
Here’s a sneak peak at my latest project — the RNET to Sonos Bridge. All coded using an Arduino and Ethernet Shield. What this little device allows you to do is control a Sonos device using any Russound whole house audio system that supports RNET sources. It allows next, previous, play, pause and I’m working on playlist access and support. Current track metadata gets sent to these keypads as a multi-field message.
I’m pretty much code complete but I’m running into a few memory issues… The Arduino only has <2K of available RAM that I can work with. I have an Arduino Mega (which offers 8K) on order to see if that solves things. I think I can still optimize my code to make it work with the 328.
I’ll post more when I get it 100% stable.
Update: Got it working! With about 500bytes left of RAM on the 328 chipset… this was a fun little project. Below is a video:
Also running on E6 Color Keypads:
View Comments (6)
This is very interesting. Mind posting some more details? How exactly are you interfacing to Sonos? I assume over upnp or something?
Yes, Sonos is uPnP based and I have created a "bridge" from RNET (which is RS232) and I "listen" for keypad events which are setup as an "RNET Peripheral Source (Like the Russound ST (tuners) or iBridge). Essentially, I'm posing as an RNET source. What made me do this was I wanted access to a Pandora source and Sonos was the best system (cost and control). Hence, I developed this little device.
I found my earlier memory leak... now testing edge cases like when network issues happen. I'm using a CAV6.6 for my testing and will be trying it out on the Sphere Controller with color keypads next!
I'd be curious to see how you are interfacing on the sonos side. I am trying to tie my clipsal keypads to sonos to do simple things like control volume / mute / etc. Will you be sharing any of the source for this project? I've never done anything with the arduino but am a java developer and imagine I could get my head around it pretty quickly.
Cool stuff Danny! If you're not going to post source anywhere any chance you'd be available for hire to help me with my sonos integration? Is your arduino plugged into the network somehow? I'd like to try to set up a little testbed curious what pieces I will need to do the arduino > sonos piece?
Hi Anthony,
Now sure if I will release all the source since it has taken me hours of trial and error and I'm an entrepreneur, however, the Sonos uses the standard uPnP spec. This is a great starter post: http://blog.fupps.com/2010/03/16/sonos-pause-sw... which provides code to play/pause a Sono with Arduino. I have done a lot more work to expand on the control (using full uPnP spec) and feedback as well as fit everything onto the 328 chipset + add RNET support. Feel free to ping me offline via email...
Cheers!
Danny
P.S. I'm now thinking of expanding control via a RNET to iTunes remote (via IP)
Hey Danny,
Is the R-net to sons bridge available yet? I saw a 232 box on your we site, but not sure if its the one. I have a customer with a Russound MCA-5 that is controlled via IP from The IRule Application. I was hoping i could seamlessly integrate Sonos for him and your work looks like it may fir the bill. Does the Sonos Bridge have the ability to turn on the russound Zone and throw a pre-set volume?
Matt
Chase Systems, LLC
chaseintegration@gmail:disqus .com