I've seen variations on this question but nothing that ever left me feeling like I had a clear direction I should head in.
I'm looking for a local speaker to use for notifications.
TTS - sure that would be cool. But not worth relying on internet.
LOCAL - Avoiding anything alexa/google/etc..etc...
PLAY FILE - This seems to be my best option. ZOOS Siren has this ability - but it seems like it's unsupported Sound Switch Class.
CHIMES/BELLS - I mean sure - any of the options have this but it's the least important aspects.
PLAY MUSIC - be cool if It could be a good quality speaker I can play music to somehow. I'm still figuring out a lot of this.
This could be a good start... after a google search for NodeMCU play sounds
You could adapt this to start different MP3 files via the Hubduino Driver, you could even record phrases to MP3 with a TTS, Google translate, Siri, etc.
This could be very interesting device.
Or this project for Robot Like TTS...
Some of us just use our home stereo system, my hubitat does all the things you mention through fairly expensive audiophile grade equipment. Since I have the equipment already, I figure I might as well just use it. I do this by integrating a squeezebox with Hubitat (the squeezebox is already integrated into my stereo system).
If you have a squeezebox or are willing to purchase one (they can be found for around a $100.00 sometimes less). This is a great integration:
Note you have to be running the media server on a computer. There are also ways to do it without purchasing or having a squeezebox. This is done through the creation of a virtual player, but the squeezebox makes it easy to connect to your stereo system.
I was thinking of using out home theater as well, but I didn't want to dealing with input being switch while I'm watching TV or such.
The IKEA Symfonisk speaker is a great solution @ $99. It is made for IKEA by SONOS and works with the Sonos phone app, as well as the built-in Hubitat Sonos integration.
It supports Hubitat's built-in TTS engine, which caches the TTS audio clips that it receives from Amazon's Polly TTS engine. So, there is a small cloud component, but only for the first time each TTS request is made (so long as the TTS does not include something like the date/time which is always changing.)
You can also store audio files directly on the Hubitat hub and then have the IKEA/Sonos speaker play from directly from the hub (or any other server on your LAN.)
Here is an example Hubitat Notification that runs each time our mailbox is opened. It plays a Blues Clues "You just got a letter" mp3 file.
And just to add to @ogiewon 's great info, if you have some sort of console (run on a tablet) with Fully Kiosk Browser installed on it you can use that for TTS, using my built in driver. I currently use to that myself. It pretty much does all the same things as the Ikea mention. One thing you can do though is store the sound clips (chimes/sirens) directly on the device and just instruct it to play a specific file. Its much faster than having it play a file over the lan.
TTS will require a small bit of internet connectivity as HE has to translate the text into audio and then send the file to the device.
Here's the link to @gavincampbell's great device driver. I use it on three Fully dashboards (2 Amazon Fire HD8s, and an old cell phone) for all sorts of sounds and announcements including: weather alerts, door open and close, countdown for away arming and much more.
I don't use a speaker, as I play music over speakers, and my rule is "Please Don't Stop The Music" https://youtu.be/C75J03JXz24
What I have is a SonOff, running Tasmota, and rewired to be a "dry contact closure" relay, hooked up in parallel with the very rarely-used rear doorbell button. It ends up being nautical approach, where "two bells" means motion on the front porch without a front doorbell press (lazy ups/fedex/usps/amazon delivery) and any longer series of bells means an alert demanding attention to a dashboard. You can hit the Sonoff just briefly enough to get a nice single "bong" without the prefix "bing", as the solenoid does not move up far enough to hit the upper chime, but still falls back down with enough force to hit the lower chime. So, it is very different from the sound of ringing the rear doorbell with the bell-push. This is much cheaper and simpler than the various speech via speaker approaches.
Awesome thanks! Looking to set this up right now on my MS Pro.
Well now I feel like an idiot trying to figure out how to run fully kiosk on windows.
I thought it would be a chrome extension - but it looks like I have to download an android emulator? I can't find any simple install for it when looking for how to install on windows 10.
FKB is an android app. Installing on windows it will be a pain.
I was reading up last weekend on the forum and decided to try out a Fabriq Riff. It does have Alexa, but you do not have to setup your account with it, and it is NOT always listening (according to the manufacturer. The intent is that if you want Alexa, you have to press the button on the speaker and then it will listen (assuming you have linked your account).
For myself, even the button and not linking my account wasn't enough, so I setup the speaker through the app, let it upgrade the firmware and then went to my router and blocked the IP address of the speaker so that it was still able to use the network, but not reach the Internet.
I have only created a single automation thus far. At night, between 2230 and 0400 I play a white noise mp3. I also added a button to the dashboard so I can start/stop the white noise on my own if I go to bed early. The mp3 file is located on the HE directly, so it does not require any remote servers outside of the house to play the file.
Now that I have gotten this setup complete, I have just ordered another few speakers for the rest of my house and am researching other automations I can perform.
Edit: I neglected to mention, this is a $15 wifi speaker, which is not a bad price at all for wifi.
That's awesome. Thanks !
Could you please help me. I cannot figure out how to get my Fabriq to play an MP3 file saved locally on my hub.
[EDIT] Okay, figured the first part out. Now, can someone explain how to play an MP3 file that's hosted on my PC?
Glad you got it working on the local hub! I literally moved off of my local hub last weekend in favor of playing from my NAS.
The below is a very high level accounting of what I did. There are certainly some gaps, but at least it should get you in the ballpark:
The way I got it to play on my NAS was to have DLNA enabled. Once I had it enabled, I then selected the folder with the specific file I wanted to play. For me, I am using this for white noise at night, so just a single file.
I then went to my PC and opened VLC and, from the menu from the top, selected View > Playlist.
Go down to Universal Plug n' Play and select it. On the right, you should see your DLNA server. Drill down into the folder structure until you find the song you like and right-click, then select Information.
At the bottom you'll see Location. That full string needs to go where you put the local file string in your previous rule.
Dude, you are AWESOME!!! Thank you so much!
So, now that I can play songs hosted on my computer and even my router (music files stored on USB drive), your VLC trick made it very easy to look up the URLs needed for several songs.
So, I created two WC pistons that work together to randomly play a set of songs.
As long as the Random Variable reads 1, the second piston will keep starting a new song after the old one ends. Then I can simply pause and/or skip songs and change the volume on my phone while listening to songs on my patio.
Fantastic! Great work. Very happy to hear you got it working and then grew it into something more complete.