I wanted to add a BlueTooth transmitter to KitchenPi
At last, a mini-project to exercise my [dubious] 3D design skills.
The internet radio in our kitchen, that I call the Ekco KitchenPi, is used every day. It may start out first thing in the morning tuned to BBC Radio 4, but by 9am its probably pushing out music courtesy of Radio Caroline.
However, as its fixed to the wall, it needs to be wound up quite loud if we move away from the kitchen, into either the dining room or the conservatory. The solution to this minor inconvenience is to add a BlueTooth transmitter and use our portable Marshall amplifier. I bought a BlueTooth module for this very purpose a few years ago...this project has only just got to the top of the list!
installing the module
As there are no fixing points on the module, I decided to design a 'carrier' using FreeCAD that I could then print on my Creality CR-10-V3 printer. With the basic knowledge that I have gained over the last few weeks, it wasn't too difficult to come up with a carrier about the right size & shape. Vernier Calipers are a 'must' for anything like this as I wanted the module to be a snug fit, and not move around over time.
After a series of 'make-then-tweak' design loops, by the 5th print I was happy with my module carrier.
The large hole allows access to the BlueTooth pairing button. This needs to be operated from outside the radio case via a small button actuator...
...which had to be blue (...as in blue tooth)
|module, carrier, blue-tooth, nut and screw|
There isn't much space for this module inside KitchenPi...
...and the pairing button just pokes out the bottom...
As I was now on a roll, I decided to make a valve base for the thermionic valve in my radio. This valve doesn't do anything. I have an led mounted underneath to make it look like it is powered up and glowing.
I searched on line but could not find an engineering drawing for a B9A valve base. So once again, using my trusty vernier calipers, I set about measuring the pin positions, designed the base on FreeCAD and the result looks like this;
The central hole takes a standard 5mm ultra-bright led, and as this was printed in trans-red PLA it lights up nicely.
earth loops are wierd
The electronics should have been quite straight forward. The module needs to be fed from 5 volts to keep its internal battery charged, but unlike my Insomniacs Bedside Radio, the battery will slowly discharge for the 15+ hours or so a day that the radio is off (...so hopefully the battery will not get too stressed).
Audio for the BlueTooth module is taken from the output of the RaspberryPi, so that the volume control on KitchenPi can be turned right down when a Bluetooth speaker is in use. This is necessary because there is always a slight 'streaming delay' between the host and the BlueTooth slave speakers.
Noise has been a bit of a problem on KitchenPi. Its only very faint and only noticeable with the volume set to minimum ...but I know its there! Its picked up by the very sensitive NJM 2073D audio chips which, in hind-sight, are rather more sensitive than they need to be for the output level from the Pi.
When first connected to the BlueTooth module, the noise level was still low, but much higher than before. A bit of experimentation indicated that I was creating an earth-loop by connecting the unit via its USB connector to 0 volts and via the common connection on the audio jack plug.
EDIT (10th Aug 2021);
|This wiring arrangement just wasn't good enough!|
I had to revisit the audio layout because, from time-to-time, the amp would self-oscillate, often at a high enough frequency that it didn't bother me (i.e. I couldn't hear it, but other family members certainly could!).
The answer was to avoid connecting audio cable screens together, and just to ground them as shown below.
I think this new arrangement prevents audio ground loops injecting noise into the system amplifier.
|my big BlueTooth Marshall speaker (...its smaller than it looks!)|