I like the concept of a tower which houses a small omnidirectional speaker(s), which has LEDs on the top which can indicate things, and is reminiscent of a multi-stage rocket (like the Amazon Echo). But I’d like to build something which I have full control over, and with the kind of aesthetic and set of functionality that I decide, not our Corporate Overlords.
Because I want to develop with this platform, I want the audio and LED control I/O to be accessible via USB, allowing me to hook it up to a development machine.
You know what the most important feature of a speaker is? Yes, that's right, RGB lighting.
One of the things I'd like my speaker to have is an LED ring, not entirely unlike a certain jungle based acoustic reflection device we all know of. Except I want to put a bit of a twist on it - rather than just have a nicely designed diffuser on top of a bunch of LEDs, I want to edge light a ring - maybe with a bit of diffuser around the outside or possibly frosting.
I've always been interested in how light pipes work, so I thought, why not, lets try making one ourselves. Practically speaking, I'm mostly limited to making something that can be laser cut - 3D printing won't give me the internal optical clarity I need, and I don't have a degassing chamber to make resin casting be as clear as I'd like.
I decided that rather than mucking about trying to find just the right WS2812b LEDs and making a circular PCB up, just for testing out the idea, I'd grab a Neopixel Ring from Pimoroni. The LEDs will be facing upwards, not outwards, so I'll have to figure out a way to redirect the light where I want it to go.
I set about designing the ring in Fusion 360
Oof, that transparent material makes my brains hurt slightly...
This cross section should help explain what's going on here
So there are two types of pieces (not that that's obvious from the cross section), the ring and the riser. The LEDs face upwards, and the riser has a 45 degree angle over the LED which should (hopefully) reflect most of the light towards the outside of the ring. The risers (of which there are 16) then connect to the ring with little spoke type things in the middle.
The shape of the riser made me think for quite a while. I intended to make sure the 45 degree cut was going to be located in exactly the right place so that it would reflect the maximum amount of light towards the edges. I also wanted the riser to clip over the PCB for the Neopixel so that it'd all stay in one piece.
I'm not sure if that 45 degree is in the right place to be honest!
So, I lased this out of some LED Endlighting Acrylic from Plexiglas - with the idea that it may spread the light out more pleasantly. If I'm honest, probably didn't make a great deal of difference as I think the main feature of that is the built in diffuser it has around the edges. It did seem to have some slightly weird blowout smoke stains on it... might have something to do with the extra magic diffusing stuff inside the sheet itself. Next time, normal acrylic I think.
To test the concept, I tried placing the risers in about the right place and hot gluing them. Messy as heck, but I didn't want to commit to anything too exciting like Acrifix if this was a duff idea.
This was insanely fiddley. But nevertheless, I gave it a go. At this point, I realised that I had designed this for a 16 LED Neopixel ring, but what I in fact had was a 12 Neopixel ring. Balls.
Well, no matter - this is just a proof of concept after all. Let's see what it looks like with lighting!
Interestingly quite a lot of light from the other LEDs was making it out just being reflected by the paper. But it gave a bit more of an overall effect than distinct areas of colour.
Next steps - either get a 16 LED Neopixel, or redesign it to work with 12, also make the risers less fiddley and redesign the clips so they go over both sides of the PCB not just the inside. It may also be a good idea to create some kind of jig so that when I do make it for real I can be a bit more sensible with the gluing than trying to hold it all together with my fingers whilst it dries!