RELEASE Generic Media Renderer (DLNA Speakers). Cheap Sonos Alternative (Update V2)

I plugged it into a cheap $2.50 Christmas lights timer from ikea that turns it off/on at 3am in the morning every day. That does the trick.

I’m getting an error as I finish discovery with MediaRendererConnect.

It finds my device (yay) I tap Done & it takes me back a page, then I click Done again.

At that point I get “Failed to save page: MainPage”


Hi @mdawson, Could you share the log when error occurs. Thanks

HI @mdawson, Have you installed the player device type?, remember this project use 2 files, a mediaRenderer connect and the device type.

Installing the device type fixed it. The github instructions need some changing, since they don’t mention this step when explaining the app.

Hi @mdawson, great news, now test it and feedback. Remember to share your MediaRenderer device model if is not in the list

Thanks for your help.

So far ST has found my JBL SoundFly Airplay speaker, but I’m a bit lost about whether I need some other apps/types installed to get notifications working on the speaker, or at least to test it.

Hi @mdawson, you can use any smartapp to sonos , Smartthings have serious problems with text to speach, then I have use some alternatives, if you need messages I suggest you to try the smartapp MediaRenderer Events, and get an account from Voice RSS to get reliable textTospeach, the account its free an its easy to get it.

Indeed, I installed Media Renderer Events, but I can’t get past the final “Done” because it tells me I have some inputs that don’t have a selection. “Oops! Looks like you need to double check some inputs.”

But all inputs are selected or at least enough of them.

I have a play trigger: water sensor wet
I have a stop trigger: water sensor wet (this is odd, it should let me choose “water sensor dry”!
On the chance this was the problem, I also tried a mode change as the stop trigger.

I have an Action: tried both Sound and Message

I have a selected “Sonos” speaker (really my JBL Soundfly.)

I assigned a name. Still, “Oops! Looks like you need to double check some inputs.”

Also, I’m afraid I don’t see any instructions for using VoiceRSS.

Hi @mdawson, If you select the action Message you must to add a message, If you select the action sound, you must select a sound from list.

Yes, I did each of those, thought when I selected “Sound” I think it defaulted to Bell 1.

Still got the “Oops”

Hi all,

I have succesfully set up DLNA on my Raspberry Pi 2 and i am using Sonos Notify with Sound External TTS smartapp.

I can have dogs barking and other preset sounds but no true TTS.

What is wrong? Can someone help?

Thank you very much in advance.

Still lost here with how to get this working.

How do you adjust the delay? Where is this setting?

Would it possible to do more work on this to extend it to find and work with DLNA servers and DLNA Players rather than just DLNA Renderers? The devices I have function as DLNA Servers or DLNA Players.

OK. I dont have any DLNA speakers and so I have been trying to use an IOS App on an old Ipod touch, I can then plug the stereo socket into my hifi amp/speakers.

I have been trying PlugPlayer (which is also available for Android). I have defined the Ipod Touch as the DLNA renderer in PlugPlayer and my Synology NAS as the DLNA Server. Plugplayer is being recognised by the SmartApp. If music is playing when the Smarthings triggers say barking dogs, then the music stops and Plugplayer plays the barking dogs soundtrack. Unfortunately after this it gets stuck and will not continue playing more music. It seems to have switched from the music playlist to the SmartThings playlist and can’t switch back.

Oh also SmartThings can be used to change the volume/mute/stop/play the PlugPlayer Thing.

I am slightly wondering whether you could query the Renderer for the server/playlist before sending the SmartThings soundtrack to it. Then after sending the soundtrack, send the original server/playlist again to reset it back to playing music.

(Oh I tried the Denon App but it doesn’t even find my Synology NAS as the server)

Hi again,

Still experimenting with PlugPlayer.
I can run one instance of PlugPlayer as DLNA Controller to control music from my Synology NAS (defined as the DLNA Server) and have it played on another instance of PlugPlayer running on a different device and specified as the DLNA Renderer. When I try to send sounds using your App I have the following problems:
1,After the sound (barking dogs) plays on the renderer it does not go back under the control of the DLNA controller instance of Plugplayer on the other device. Effectively it gets stuck with the barking dog sound as the only thing in its playlist.
2. The DLNA renderer does not persist as a thing in SmartThings. After use the Thing goes to “not present” and when it is run again it does not become present again. I have to delete it as a thing, delete the MediaRenderer (Connect), recreate the MediaRenderer (Connect), and then rerun it to recreate a new PlugPlayer DLNA renderer thing before I can go again.

Hi , please read about control point in first post, not all control points works to resume, its about how control point its made, most of the Media Renderers do not accept containers, then must to use a in line control point, most of Mediarenderers do not accept pasue , and most of the mediarenderer do not accept suspend , then the music must to stop, play a message and start the song again.


Can anyone help with this error below? Not sure if it’s normal. Noticed while looking for something else. I updated to the latest version. It can find my Kodis and control them so I think the app is working. I haven’t tried sending audio message yet.


java.lang.StringIndexOutOfBoundsException: String index out of range: 184 @ line 273