How do you use TTS?


Just to be sure... You did add the App from post 3, and are running it to perform the Discovery process, correct? I just wanted to make sure you aren't on the HE Devices page and have clicked Discover Devices on that page. That is only for Zigbee and Z-Wave devices... :wink:


Yes, running the app - it didn't work in Firefox, as firefox kept popping up a dialog box every time the page refreshes, so I had to use Chrome to use the app. It refreshes the page every 5 seconds or so, but still nothing in the device list.


I just opened the app (first time since May) and it immediately found one of my five speakers, but not the other 4? I let it run just a few minutes then backed out. My speakers are working so I don't really want to mess them up by proceeding any further in the app.


Can you paste the Device Network ID of one of your speakers? I am thinking of adding the device manually, but am not certain what the ID format is. From scanning the code, I think it is IP address followed by a colon (":") and then the port number. But I don't know what port number Fabriq uses.

Of course, this may not work anyways, if the Media Renderer connect app needs to generate the list for its own use (ie. IP address change detection).


Is this what you want? The 'dni' is the device network ID.

Create Time 2018-05-04 19:01:35 MDT
Last Update Time 2018-06-20 19:24:30 MDT
Last Activity At 2018-07-24 21:35:02 MDT
Data * rceurl: /upnp/event/rendercontrol1
  • avtcurl: /upnp/control/rendertransport1
  • avteurl: /upnp/event/rendertransport1
  • peurl:
  • pcurl:
  • rccurl: /upnp/control/rendercontrol1
  • model: WONDERS Player
  • dni: C0A800D9:c000|

I believe the driver uses the device UUID to find it in the network (which I delete because I don't know if I should show that in a public thread). The UUID is formated like this: FF999999-E9E9-9FC9-99FF-9999FF999999 (I changed all the numbers to 9's in this example). For the dni, All of my Fabriq speakers have a unique value up to the colon, then they all end in c000.


Okay - looks like I cannot add the device manually - there is no way for me to add those fields in the Data section of your post except DNI.

I am pretty sure something is broken in the Hubitat or the code you posted - I installed SSDPTester app on my Android tablet, and it can see all the DLNA devices (I also have Emby Media Server installed and a Yamaha A/V Receiver), including the Fabriq speakers.

If you point your browser at the IP address of your speaker, and add port 49152, then description.xml into the URL, you will see all the data.

I wonder if I can hack the MediaRenderer app to force my speakers' IP addresses into it...


I updated my Hubitat to Still no change.

I suspect that this line in the app:

sendHubCommand(new hubitat.device.HubAction("lan discovery urn:schemas-upnp-org:device:MediaRenderer:1", hubitat.device.Protocol.LAN)) broken somehow. The locationHandler function is never called. (EDIT: Actually, I think it is getting called - the logs just took a while to update)

I also tested by using a Samsung Connect Home router, attaching my Hubitat and a Fabriq speaker to it, and it still could not find it. The SSDPTester android app had no problem discovering it.

Could another app be messing up the hub discovery command somehow?

I have the following apps running:

  1. Rules Machine
  2. Lutron Integrator
  3. Hubitat™ Dashboard
  4. Hubitat™ Simple Lighting
  5. Mode Manager
  6. Motion Lighting Apps


I found a bug in the MediaRenderer code - line 252 has this:

parsedEvent = ["hub":hub]

This should be removed or commented out, otherwise it will NEVER find any devices.

Now I can see my Fabriq speakers...and my AV receiver and my media server!~

Networked Speaker Driver

I just got a Fabriq RIff. Nice little affordable Wifi speaker. Has good sound. Installed the Media Render driver and send Message Central messages to it, mostly. I'll be getting more of these speakers.


I've acquired a couple more Fabriq speakers. While they are great in solo mode, there is an option in the app to group them. In this configuration they absolutely suck, clipping, cutting out and sometimes not at all playing.

The parent speaker seems to work decently with just clipping, while the child speakers barely play anything.
Anyone have experience with this?

I thought I'd mention it here since 9 days ago I endorsed them.


Are you using VLC Player for TTS with these?


I had the same issues with grouping ‘jam wifi’ speakers
Individually they work perfectly with media renderer



No, I use MediaRenderer and the DLNA Player driver.
It's not a Hubitat issue. The Fabriq app can play media directly, it suffers the same problem.


I want to be notified when a agenda point is starting or starting in x minutes. I'm using google agenda, anyone got this working?


Wow you all rock with TTS! I just have the announcement of security doors opening/closing, when the ring door bell is pressed "There is someone at the front door." Soon I will have laundry, Dishwasher and HSM going as soon as I get the locks over to HE. I love the list and ideas too btw! Thank you all for sharing!!


Are you a French speaker? You say Google Agenda, so I assume you mean Google Calendar, One way to do it would be to use IFTTT where you can specify the number of minutes before an event starts and then the trigger fires. Don't think using that method there's a way to pass the event detail onto HE, so your notifications would be generic (i.e. "You next event will start in 15 minutes").


Haha no im dutch but yes i meant calendar. Yea i saw that possibility but i want to announce what the event is


You might be able to port GCal Search and modify it to what you're looking for. I don't believe it has that capability right now, just fires pistons, similar to what you can do with IFTTT. But the foundation is there.

You honestly will probably get further with Google Home and eventually Alexa. What you want could be accomplished with Google Assistant Relay right now. May already be a native capability of Google Home, I'm not sure though as I don't use Google Home in that way. However, I do know that you can use IFTTT to trigger an HE switch x minutes before your next event, and setup a rule to silently ask Google for your next event, then get a response via [CCC]Hey Google, what's my next event?


I'm sorry if this has this been already discussed..

Is there a way to trigger TTS in amazon echo? Or even a tablet?

I had ST before and used Big talker and lannoucer to get the tablet to talk.

Currently I have one sonos that is tied to TTS but dont want to buy another Sonos :confused:


Big Talker is ported. I believe Lannouncer is also ported and working.

Alexa TTS is possible, but requires a script running on a separate RPi or PC. And there's a cookie you need to get from Amazon to make it work. Eventually, it should be possible to trigger a virtual device and have Alexa say what you want via an Alexa Routine, but this will require the Hubitat Alexa Skill to be updated as the SmartThings skill is now for contact sensors and motion sensors.