A few months ago, the ACMA made changes to the amateur LCD that allowed foundation class licensees to operate digital modes.
Excited to get into this in the new year, I begun looking into digital interfaces for the radios I already have. There’s many different ways this can be done, from as simple as not using a cable and relying on microphones and speakers, creating a straight through cable from the PC mic input to the radio speaker output and visa versa, to expensive isolated interface boards custom made in the USA.
I wanted an isolated board, because I have enough trouble with interference and noise in my apartment already, so the first two were out (although I did make a straight through cable for my Baofeng UV-5R for SSTV on 2m/70cm).
So I turned to the expensive isolated interfaces.
There’s plenty to choose from l, with different feature levels and prices! From the $230USD RigBlaster, the $200AUD SignalLink USB, and even the cheapest of the bunch, the Easy-Digi coming in at $30-50AUD shipped with slow shipping…
Naturally being a cheap ass I wasn’t overly satisfied with these options..
Luckily though, the Easy-Digi, saved the day! It’s such a simple design, with a published schematic, that it’s not too hard to roll your own with a few changes!
I jumped into EasyEDA and learnt how to do a basic schematic, then designed the interface circuit for audio using two 600:600ohm isolation transformers, and a PTT circuit using a DB9 rs232 connector because it’s easy, although I plan to replace that with a USB-C connector and a ch340 rs232 IC in a later revision!
I used components that I either already have laying around, or can get easily from JayCar for the most part.
The connectors and transformers I ordered from China at about $4-5 for 10pcs each.
With the layout done, I generated a PCB, and moved components around into a rough layout I was happy with, and hit the autoroute button :^)
I forgot to label the PC side connectors for the first revision, but I imagine there will be plenty of other changes I make anyway.
I uploaded the gerbers to JLCPCB to produce a test run of the PCB, which I should have within 2 weeks with the cheap shipping :^)
So if everything goes according to plan, I cluding parts and PCB manufacturing for 10 boards, I’ll have spend about $30-35 total, and I should be able to sell some of the boards to friends for $5-10 each offsetting my costs even more !
I have had for the last few years, a growing pile of electronics that I called my homelab. It looked a bit sad.
I decided recently that it really deserved some love, and it’s really very rewarding to put in a bit of effort for something that looks good.
So I started looking into ideas on how to clean it up.
Initially I was planning on getting either a 9u or 12u rack/cabinet, and just leaving it in the same place. But as much as I love my servers and gadgets, I don’t think a black metal box in the living room/ kitchen looks great to guests. So I figured I should try something that looks better.
An IKEA lack was off the table, as it’s much too large for something up against the wall in my opinion, so I browsed the website for a while until I came across the TRYSIL. It’s a chest of r draws, that extends a mere 40cm from front to back. Perfect for up against the wall! And at only $129, it was just $4.05 more expensive than a 9u rack.
So I ordered one and picked it up Friday night. Assembly was pretty straightforward, just follow the pictures as you would expect. But what I didn’t do was install the bottom two draws, I left that section completely open.
I purchased two metal strips for.the hardware for about $0.80 each, and laid the two draw fronts together about the correct spacing apart, and bolted them together using the metal strips.
I then measured out and attached two butt hinfes ($4.95 for the pair) to the new door and cabinet.
I had this wall-mount server rack thing left over from a previous intention to wall mount my servers in the garage, and flipping it on its side gave me a perfect 3u mounting space.
I used M5 bolts and some washers to secure it in place, and it’s not going ANYWHERE.
This fits really well, leaving a bit of space on either side for cable management and other things.
I then test fit a PowerPoint art he back and started on my way to cutting out a hole in the base to mount a pair of 200mm fans for airflow.
In Australia you can’t do mains voltage work without a license, so I called over a sparky friend do wire things up for me.
I went out to my local Jaycar to pickup a few things I would need, and while I was there I found a 4 Port USB outlet for only $15! I grabbed this and a mounting box for it as well, this will be useful for odd things like an esp8266 to monitor temperature and drive LEDs, and the Mi-Light wifi bridge.
Now that sparky mate has installed those for me I went back to working on cutting out my hole for the fans. I probably could have cut it out before assembly but I was in the mood to get things done in one day so I didn’t want to trek out to Robots and Dinosaurs with some wood to cut out using their tools!
I cut a hole on the upper left side for a cable feed hole for ethernet connectivity, but I’m thinking I’ll replace this with a 6 way Keystone plate to keep the cabinet modular. I want to move the nbn cable NTD into the roof, so that rather than an RG-6 cable to deal with I just have CAT6…
I also got an IEC socket installed on the back to be fed from the external UPS which is too large to fit inside, this also means it’s relatively simple to unplug and move should I have to do that.
Once I had the holes cut out to my satisfaction, keeping in mind that they won’t really be seen so I wasn’t too fussed, I used cable ties to hold the two 200mm fans together, and screwed them into the underside of the cabinet over the hole.
Once I had mounted and wired up my fans, it was time to start moving my network hardware over.
I started with the switch as it will serve as the shelf for the other hardware. (don’t worry it’s properly bolted in)
I then installed the power distribution bar, NTD and pfsense router. I blacked out the pfsense because it’s a surprise for another post soon.
I affixed the Mi-Light bridge and zigbee2mqtt devices using command Velcro, and screwed in a fan controller harvested from the same PC the fans came from.
I began to test fit the various power supplies inside, there’s a few because I’m using micro PC’s as servers… I’m considering consolidating the Synology units into a single 150w PSU though.
I test fit and began cabling everything in, I have ordered a brushed 1u panel to clean up the wiring a bit more but it will be a few weeks from china.
Once everything was in, I did a final test to make sure I was happy with the airflow and the path the air seems to be taking through the cabinet, which will improve after I install the brushed plate and a blank panel.
With ally tests done and happy, I hooked up the ups and turned on all the servers one after another. I monitored them as they came back online to ensure all VMs and services started correctly, and so far only Wireguard refuses to start! 🙁
Good enough for me!
And with that the move was virtually complete!
I have since added some lights, and a DHT22 temp/humidity sensor inside to keep track of how it’s going, but temps so far seem very acceptable.
The 120mm fans bolted directly to the cabinet are audible so I would like to replace them with noctuas, mounted via rubber or foam dampeners.
Overall I’m super happy with how it turned out, everything fit perfectly, it was fun to work on and build, it looks so much better than an ominous pile of electronics next to the kitchen and dust will hopefully be a bit less an issue now!
Best of all, it looks nothing like a server cabinet!
I recently had the need to connect part of my AV setup to my Home Assistant instance, however to do so I had two options, using the LAN control option built into the device, or via an RS232 serial port.
Naturally I attempted to use the LAN control part first, which involves opening a TCP socket to port 10008 of the device. But I ran into problems as the connection kept wanting a user to login, even though there was no user account, and I was unable to figure out how to pass the login prompt and send commands automatically.
Basically, it converts a TTL level signal to RS232 level signals. I hooked it up to a Wemos D1 Mini, on the ESP, you want to use one of the HARDWARE UART pins, so for me, I went with D4, which is GPIO2 / TXD1.
My equipment had a 3.5mm socket for RS232 control, the manual had a pinout for DB9 to 3.5 so that was a simple cable to make, but your equipment might have something else.
Code wise, this is what ive settled on using and has been working MOSTLY well:
I say mostly, because when the ESP reboots, it sticks some data out of the pin, which the equipment holds in its buffer. So if the ESP has just reboot, and I try and send a command, the unit wont respond, as it gets more data than it thought. 🙂
This can be fixed by including a line break and carriage return at the START of the command, to clear the buffer, or by sending the command twice. but i havent done that yet because i … havent got around to it…
Ill also mention, the TX/RX might be wrong on the Chinese board because ive seen a few different photos, if it doesnt work on TX try RX :^)
Ive ordered a handful of these to test making it smaller (think a cable with a bulge in the middle)
Continuing with the tradition of creating something beautiful and covered in LED lights, this year we have something special!
Previously, we had the LED Jacket with Tearschu, and the LED Dress with Naifel. Taking inspiration from these, and solving a lot of the problems I faced with them, I bring the latest iteration of light up fun.
This year, I have taken a pair of high heel boots, and an umbrella from Daiso, added plenty of pretty lights, and of course, this year marks the first year the entire project is connected to the internet.
The project was built using mostly the same core components for each item.
The shoes each have:
Lithium Ion Battery (1000mAh)
LiIon Charge / Boost circuit MP2636
WeMos D1 Mini
A random switch for power
A strip of WS2812 LEDs
The umbrella is similar, except instead of the MP2636 boost circuit and 3.7v Lithium battery, I used a 3s LiPo battery, and a 5v step down regulator capable of high current.
The physical build was pretty straight forward, hook up everything how you please, battery to boost/charge, from there to the WeMos / LEDs, and then route the wires how you please. For LED placement on the shoes, I went with up along the front as I feel this will look the best having the light cover the most area, and for the umbrella I ran the lights down the spokes of the umbrella.
Unfortunately with my design you cant really CLOSE the umbrella anymore but as this is just for Vivid I am not too fussed 🙂
To attach the LEDs to the umbrella I initially tried to use hot glue, but it was actually melting through the umbrella, and the parts that didn’t, did not hold very well, so I ended up using clear packing tape, as it does not seem to get in the way of anything and is barely noticeable!
The LEDs here are hooked up in parallel with each other, so each spoke on the umbrella will be the same.
Once it is all made up physically, we can move on to the code.
I was looking into using the McLighting project for control of these, as it has both an internal web interface as well as support for things like MQTT, but I could not get it to work reliably, and it didn’t support running in AP mode, only client mode, which was a big turn off for me.
So what I ended up using was the JSON LED code from BRUH Automation, because I use this for other things at home and it works pretty reliably.
One thing to note here, for my LEDs I had to add the following two lines of code, BEFORE including the libraries, to prevent flickering of the strip. (not sure why this works?)
Now my initial plan included taking a small portable router, and a Raspberry Pi 3 out with me to vivid, running a local MQTT server on a local network, with the Pi running Home Assistant (Hass.IO) all locally so I could connect to it to control things. However I ran into many problems attempting to do this, I am not sure if its because I don’t know how to properly setup static IP’s in resin, or just because it hates me, but I kept not being able to connect or it wouldn’t respond to my commands, it just wasn’t working great.
One day though, my good friend Mark came over and we needed a project to work on, so what we set up was a private mosquitto MQTT broker, that requires authentication, running in Docker on a Ubuntu Server 18.04 LTS install!
What this meant, was I now had a secure way of connecting a remote node to my Home Assistant running back home.
I went right ahead and adjusted the code on the three items for the new server, forwarded the ports in my router, added the config to my production Home Assistant server, and hey presto, was I glad to see, everything JUST WORKED.
I made a view in Home Assistant and threw all the entities into it, and here’s how that looks:
So as you can see, we can control both shoes together, each individually, the umbrella on its own, or everything as a group!
We also can change the animation speed of the various effects.
I will be heading out to vivid to shoot a small video and some photos with this, with my good friend Tsugumi modelling it for me, on the 9th of June 2018 from about 6PM onward, Not sure if I will be at Circular Quay or Darling Harbor yet, keep your eye on my Instagram to find out! 😉
Rob has created a custom component for Home Assistant that allows us to use image classification via Tagbox, on a camera feed that Home Assistant has access to.
Following the instructions on github was pretty straight forward, the only thing I changed was to reference an external image_procesing.yaml rather than having it all in my configuration.yaml as I’m trying to be a bit cleaner.
In this case, my docker is running on Windows, the Tagbox instructions were fine for this, I didn’t realise you can just run the image and if its not installed, it will download it 🙂
So now that it’s all setup it appears to be working great!
As you can see, the component creates a new entity called image_processing.tagbox_name, with a state of the most likely item in the image, and then some attributes of the next most likely, and a count of any specific tags from the config.
I’ll play around with it to see what I can use it for more practically, I can think of all sorts of things this component will be useful for! From identifying if a car spot is free or taken, to seeing if the bins were already taken out!
I just wish I could specify a region within a camera feed for it to analyse.
I decided to build a lithium battery for my Yaesu FT-897D because the official Yaesu Ni-Mh batteries are far too expensive to import here (Then you need the special charger too!)
At present when operating portable, I have been running a lithium battery external to the radio (often a higher voltage battery through a little power supply)
So I grabbed some battery packs made up of four 2200Mah 18650 cells each, three of these adds up to 11.1v at 8.8Ah, this is plenty for my short trips !
I planned out how to fit them inside, and there’s more than plenty of space, see image 🙂
My preliminary notes were:
The three packs are each four 18650 cells in parallel
Totalling up to 8.8Ah per pack at 3.7v
At full charge it will be at 12.6v and at empty about 9-10v
I have measured how much power the radio draws, and on monitoring it draws around 8w, on transmitting around 18w (at 10w TX power, go figure) so that’s only 1-2 amps, super easy for these lithium batteries.
I’m just waiting for my BMS to arrive from China (battery management system)
As that has over current protection, over charge protection, over discharge protection and short circuit protection for the batteries
Then I’ll use some padded sticky foam to mount them in such a way they’ll get ventilation from the existing fans and good to go!
Over the years, I have used many types of LEDs, but the most commonly used and cheapest, is standard 5050 LED strip. It comes in a variety of colours, and RGB multicolour.
However the cheap strips, as in, $15 for 5m, always run on 12v.
I have in the past used a number of different methods, starting off with a 9v battery, then a pack of AA cells, at one point I even carried around small SLA cells! (heavy omg)
More recently, I have been using 3s lipo packs, however these can be dangerous if damaged, and require a special charger to charge up.
I normally use a Turnigy Nanotech 3S 1.6Ah battery, I have a few of these laying around that I keep at storage voltage.
The problem with Lithium batteries is that, while they are usually stable, when they do become unstable, they go out very violently.
I have recently been contacted by a group of cosplayers that want to add LEDs to their Hyperdimension Neptunia cosplays, and were wondering how to power the LEDs, so im going to revisit this as there must be a better way.
When I added lights to my friends Ahri tails, we used my nanotech batteries the first round, but more recently, her friend made her a pack that takes three 18650 cells,
this is certainly easier for her to charge, and swap out the batteries, but I felt it and it was pretty warm, so kinda scary, to be fair though, her tails have almost 10m of LEDs in them, so it’s probably drawing some 6-10ish amps from those poor 18650s continuously.
Another option is to use 5v LED strips, i’ve got a meter of this and tested it, and its just not as bright … its probably the best option as of typing this though as power banks can be purchased cheap in sydney (~$12 for 4000mah one from a reputable shop)
I have used these in the past, but knowing what I do now about Lithium, I wouldn’t touch these with a 10 foot pole. There may be no protection inside, they may not be balance charged, and they probably don’t even have voltage cutoffs… very dangerous and scary..
As it stands, I still recommend to go with a 3S Lipo pack.
You will need a few things:
Battery – 3 cell Lithium Polimer, capacity of your choice
Low Battery Alarm – Tells you when the battery is flat
Balance Charger – Important to prevent boom
Flameproof bag – Important to store the batteries
Power supply for charger – Your LED Strip MAY come with one that works (12v 2A+)
Feel free to contact me with any questions and I will do my best to answer.
Part 2: Which LEDs do I get?
There is different types of LEDs, Ive briefly mentioned them above, the main ones are: single colour, RGB multi colour and these come in both 12v and 5v.
For the above power solution that I recommended, you want 12v leds.
Which ones you get depends on your needs.
Some colours are available as is, and if the colour you want is available standalone, I suggest this as it will be less messing around. So if you need pink LEDs, and you find pink LEDs as well as RGB ?? Go with the pink ones.
If you need a colour you cant find, or want to be able to change, go with the RGB.
They also come in two sizes, if RGB, please try to always get 5050 LEDs, and avoid the smaller 3528 where you can. as each light can only be one colour, so for the RGB, you have a red light, a green light and a blue light every 3 lights. It results in a weird christmas light effect that looks terrible:
With 5050 RGB LEDs, each light has three tiny lights inside, so each actual light on the strip will be the colour you want.
For controlling them, if its single colour, you just need to give it power. If its RGB, most will come with an InfraRed (IR) controller, which is probably good enough, but there is also wifi and bluetooth controllers available.
You also want to check how many LEDs per meter there are. Most strips will come with 300 LEDs but some come with 150, this results in the lights being very far apart from each other and it doesnt look nice. so make sure its at least 300 LEDs.
To get really fancy, you can get what are known as addressable LEDs, but this is pretty advanced and needs a tiny $3 computer to control them. The most common type is WS2812b / WS2811 AKA Neopixels.
The only problem I have run into with these is the extremely high current draw (I usually use the 144LEDs in 1meter!!) and that if one LED dies, all the ones after it stop working.
There is another less common type, WS2813 that has an extra data wire in it, so that if one light stops, the others still work, but I have not played with these yet.
The benefit of these lights is each light can do something different, and you can have some really cool effects like breathing, fading along, rainbow chase, or a larson effect.
These are what I use in the LED clothing that I make.
For most effect lighting, the standard strip lighting works well enough.
For single 12v colour LED strips expect to pay around $10-20 delivered
For RGB 12v expect around $15-30 delivered
for WS2812 5v expect around $8-20 per meter
5v LEDs are similar pricing to above, but you get only 2-3 meters instead of 5 (it’s still heaps!!!)
So I had in front of me an old arcade machine, not too old, pretty new actually, a date code inside puts it around 22 June 2012.
Nevertheless, it was old in terms of mechanics.
The machine used a Jamma board, and was non functional.
I opened it up and had a bit of a look for any obvious electrical problems, burns out components, loose connectors, dirty connections etc. Couldn’t find anything.
For benefit of the doubt I used isopropyl alcohol to clean the PCB and the Jamma connector. Still no luck after this though.
The machine itself would power up, the board had power, but it wouldn’t output any video…
So I decided to go with my plan B, upgrading the machine to a PC based MAME emulator!
I started with physically cleaning up the machine, isopropyl and some Glen 20 did the trick, once it was nice and clean I got to the insides.
Snapped some photos of how everything was connected for future reference, and started removing components.
I can’t remember the whole process super well as it was a few days ago but I’ll recap best I can.
With all the main control and power boards removed, I was left with some bundles of wire cable tied inside.
I decided the best path would be to cut the bundles of wire that lead from the buttons to the Jamma board a short distance from the connector. This way in the future, reconnecting the Jamma connector is as simple as matching up the coloured wires.
I located the power connector for the button illumination, and tested it out. It was originally on the 12v from the power supply, I tested it on 5v and the buttons lit, but not the joystick. So I’ll just reconnect this to 12v once rebuilt.
I tested the screen using an HDMI to VGA adaptor coming from a PC that was nearby and got video out, this was great, was going to be pretty simple from here on out.
The screen is mounted in portrait which is going to prove annoying as most games these days and games I’ll be emulating will feel smaller. Also, it means that I’ll have to figure out how to display artwork above and below the emulation. Maybe themed to the console ?
I know there’s plenty of options online for ‘arcade button controller’ ranging from $6 to $100+, and I’m sure any of these would have done the trick, but I didn’t really want to wait for something to arrive, I wanted to finish this project in one day.
Luckily I had an Arduino pro micro laying around, I slapped some headers on it and some matching headers on the wires, then ran to the internet in search of a joystick emulation library for AtMega32u4 🕹️
It was actually very easy and within 3 results I had a library downloaded and installed!
Loading up the Arduino IDE I opened an example sketch that had 1 button and a joystick, this was SUPER easy to modify for the 5 buttons on the front panel of my machine, it was just a case of increasing some numbers and adding some extra cases!
I uploaded the sketch to the board and hooked up the buttons to their corresponding pins on the board, now it was time to test.
Hooked up the Arduino to my laptop and checked devices and printers, to my great surprise I saw a gamepad icon with Arduino Leonardo under it, that will be my board!
I right clicked it and hit Gamepad Properties, which brings up a screen where you can test everything.
The joystick was rotated left 90 degrees, so I suspect it was installed sideways as I used the labelling on the PCB for which wire was which, but after switching those wires around everything worked ! All the buttons and the joystick worked flawlessly now !
So now that I had the controls upgrades to modern universalness, I moved onto the speakers, there is two 10w speakers mounted to the rear of the cabinet, these used to be driven by the Jamma board, but with that gone I needed something new.
Coincidentally, a few days earlier, my friend James was over to fix my 3D printer, and had brought over a wireless speaker thing, that I didn’t know what to do with. But this thing, had a speaker driver in it, and also a 3.5mm input, so I put the transmitter unit aside and used just the receiver unit. Hooked up both audio channels with a wire so we got both left and right channel out of the speakers, and hooked them up to the device. I cut off its power cable so I could hook it up to an alternate source of power later, just 12v.
I decided it would be best to re use the original power supply, but some changes were in order. For starters, the damn thing had no earth, so adding an earth connection was my first priority, very simple and I don’t know why the original builder didn’t ???
Once that was hooked up, I proceeded to hook up the leds and the speaker driver to the 12v rail, and then pigtailed the monitor off the AC terminals, and also a cord with a 3 pin connector suitable for a laptop PSU on it.
With all the power sorted I turned to how I’ll drive everything.
I had a few options at my disposal, but given the tight space restrictions in this bartop size machine, I went with an Intel Nuc that I got last time I was planning to build an arcade machine.
I placed it inside, with some very strong Velcro, and placed its power adaptor next to the one for the monitor, also held down by Velcro.
I hooked up a USB wifi adapter and the Arduino to the back USB ports, as well as a mini HDMI to HDMI, then HDMI to VGA adaptors, to the mini HDMI port on the back. And it was time to power it up and test.
The Nuc booted and everything was fine.
I refreshed windows to a clean install as there was still many remains of my last attempt at getting things up and running, rotated the display 90 degrees to make it normal, and then fired up Project 64 for some testing !
I quickly learnt the volume was waayyyy too high, but was easy to fix. Just startled me! Haha
The controls worked great, and the picture looks fine. The colours are a bit off but I can fix that later.
For now this is enough, I’ll work out the software later as that takes aggesss to get setup nicely and all pretty like.
In the past I’ve used HyperSpin but I might give something new like GameEx a try.
This year, I worked with Tearschu to create another RGB item of clothing!
Tearschu designed and made a jacket with a clear PVC material, and we incorporated a strip of 144 WS2812b RGB LEDs into it, this was a challenge, as the power draw was too much for the 3-5A 5v power regulator we used last year.
We needed a much beefier 50W power supply! However thanks to some help from Reddit user /u/krhacken we were finally able to get brightness control working mere days before the shoot!
This allowed us to dim the lights for scenes where they were too bright, and for when we were just walking around between locations to conserve power!
We were able to go the entire 3-4 hour shoot with a single Turnigy NanoTech 1.6Ah 3S LiPo!
Im really happy with how the photos turned out and I can’t wait to make something for next year!
A while ago I picked up a wi-fi enabled speaker from Target or Kmart for $50. It was advertised as on special for $80 down from $160, so I figured how bad could it be? Then when scanned in it came up as $50 so even better.
The speaker natively has Spotify connect and DLNA support, I don’t really have anything that streams to DLNA, so Spotify connect was what I had planned for it.
I did hope that I could get Home Assistant talking to it over DLNA but couldn’t find any DLNA components so wasn’t too confident on that.
The speaker itself feels well built, looks pretty decent, and sounds okay. It’s a bit bass heavy, and the PSU always sparks when you connect it (why is it 15v? Why not 12v???)
I used it for a day or two then it kind of got abandoned, as nice as a wifi speaker is, when it’s limited to just Spotify that’s less than amazing.
So fast forward a few weeks, I remembered that I have some Chromecast audio laying around doing nothing.
I had purchased them to test out the multiroom audio playback, something that has always interested me.
But after testing it out I didn’t really have a need for it.
I’m not walking around my apartment enough.
And the tv already has a regular Chromecast.
So the audios were just sitting on my modem in a triangle.
I grabbed one and hooked it up to the aux input on the wifi speaker to see how it sounds, and well, having the ability to stream content from almost any multimedia app, website or device is much more appealing than just Spotify.
Oh right I should mention that the speaker has a tendency to just, enter a sleeping state, where it disconnects from wifi, and doesn’t reconnect until you wake it up (I had to power cycle it ?)
This makes it REALLY annoying to use.
So I set out in a venture to install my Chromecast audio inside the wifi speaker,
What follows is a whole lot of work and overengineering that for the most part ended up being redundant.
I disassembled the wifi speaker and found that it does indeed have the rated speakers, and a fairly sized mainboard.
It had a wifi add on board too.
I left this in there so it will still function as its original purpose.
The plan was to disassemble the Chromecast audio, and solder wires between the aux port on the speaker and the Chromecast.
All the tests I did on this gave me faint audio on the right channel, and slightly louder audio on the right channel.
I couldn’t figure out why this was happening, as I traced all the connections and they were all correct ?
The only thing I can think of was maybe the wire is too high loss ?
Idk it was crappy hook Up wire.
Anyway I ended up just using the Chromecast short 3.5 cable. And melting a hole to plug it into the speaker.
For power I had to be a bit more creative, I wanted to run it off the existing power supply so it would be self contained.
A quick look at the main board of the speaker reveals a header with an i2c? Port on it. Including 3.3v VCC and GND!
I made a quick micro USB to wire lead and hooked up the Chromecast to the 3.3v line to see if that was enough to power it up.
Unfortunately it seems Chromecast needs more current than this port could give.
The Chromecast would power up then keep cycling between orange and white led, I think this is some sort of insufficient power indicator. Else it was just rebooting over and over haha.
Next I tried hooking up a 3.3v to 5v boost converter to see if it was just the low voltage causing the problem, but this has the same effect.
I concluded that this connector probably didn’t have enough current to power the Chromecast, which normally wants at least a good 5v 700-1000mAh of current.
I decided I would have to pull my power from the main +15v input, which obviously has to be stepped down.
So I grabbed a AMS1117 5V voltage regulator, which from memory the data sheet says can handle up to 12v (she’ll be right mate) and can output up to 1amp
Hooking this up between the 15v main input and and h Chromecast seemed to result in the same thing as before though …
It’s at this point I was wishing I had a nice big LM7805 or something.
I did however have an “adjustable voltage regulator module” from aliexpress, which was big and beefy. I wired this up to the 15v and then hooked up my multimeter to its output, it was showing 15v.
I turned it’s pot until it was a stable 5.02v which is close enough and then wired the micro USB to that.
Hooked up the Chromecast and it worked !!!
I shoved it all inside the speaker and reassembled it all.
With the speaker reassembled I gave it a test and all looked great!
Well worked great.
I remembered then, that Home Assistant had the ability to sent TTS to my TV Chromecast, I had disabled discovery of Chromecast because it kept showing up in the main view and nothing was using it,
I wondered if it could send TTS to the Chromecast audio??
So I re enabled discovery of Chromecast and restarted Home Assistant to see if it would pick it up. It did! And I had the option for TTS!
I did some setup stuff in Home Assistant that I didn’t document, but it was pretty straightforward!
Now I can send verbal notifications to the speaker’s by calling the tts service in home assistant, specifying the speaker media_player.wifi_speaker and giving it a message!
I also put another Chromecast Audio hooked up to a small Bluetooth speaker via a 3.5mm cable in the bathroom, so I can have notifications in there (this is also the only room with a sensor node at the moment!)
a notification in there could be: If the humidity reaches 100% and the window is detected as closed, verbally say ‘Please ensure window is opened to prevent mould build up’
or something like that.
Home Assistant is also able to message me via Facebook Messenger, which is handy for notifications away from home!
I might do another write up on Home Assistant another time though, once I fully understand it!