Enter Your Electronics & Design Project for a chance to win a $200 shopping cart! Back to homepage | Project14 Home | |
Monthly Themes | ||
Monthly Theme Poll |
Links to the previous parts
Radio Hacking
The role of the BUSH FM/AM/MW transistor radio is providing a sort of randomized, variable noise to the synth. The radio output will be automatically mixed by the three NE555-based analog synthesizers, according to the initial design.
For this task, I had to find a way to control the radio tuning digitally, program it, and then execute a loop for continuous back and forth tuning variations. The audio pre-amplified output of the radio is the fourth “voice” of the synth used to generate the samples controlled by the synth control panel. After defining a general line-guide for the whole design, I had to change almost frequently the kind of task to be completed without following a structured order; the season is due to the very experimental approach I followed, made more complex by the old radio device construction, based on old-style analog technology.
Making-of: The Video
Too lazy to read the full article? Take a look to the video below!
In the short video below – I will provide a full demo of the Radio Magic project next days – the final test of the Radio Magic digital tuner.
The Radio Tuner
Seeing the inside of the modern FM radios, we expect – also for some outdated models – more or less, electronics and circuits, while this mid-60s appliance still uses an air capacitor for tuning controlled through a complex mechanism of wires and pulleys. Due to these characteristics, it is impossible to replace the whole tuning system with something more recent, digitally controlled. Another limitation is that I don't aim to modify the pleasant, vintage aesthetics of this model. Conclusion? The approach should be different.
Below: the radio tuner connected to the geared knob by a complex wiring
Rethinking the Radio Tuner
The original tuner and knob are solely mechanics – a very appreciable engineered solution – and I tried doing the same: a new mechanic solution improving the manual tuner automating the mechanism with a stepper motor. The first step is making space inside the front part of the case. While I avoid as much as possible any external alteration of the form-factor of the device keeping almost intact its functionalities, I can remove and modify the internal parts adapting to the new design: it is an upcycling, or – more precisely – a hardware hacking, so why not?
Above: the front-side of the radio disassembled. On the right, the big speaker screwed to the front cover; removing this part I can get a lot of extra space inside the case.
Planning to use only the external audio output (the earphones jack) I decided to exclude the main audio circuit and removing the internal speaker, freeing a lot of space in the case. Then, I need to hack the tuner.
Above: the new version of the tuner should be controlled by a stepper motor; checking for the reuse of the space inside to see how to fit the two components: the motor and the stepper controller.
The non-conductive wires that move the tuner capacitor through the big tuning knob have a reduction between the two connected pulleys; several full rotations of the big knob cover the entire frequency range while the tuner only rotates (very slow) of a few less than180 Deg. The idea is to rotate the tuner with a stepper motor, ideal for very small rotation increments, converting the knob becoming a passive indicator showing approximately the corresponding frequency instead of the active tool to find the radio station. The below scheme shows the design of the automation.
Tuner Actuator: Parts and Assembly
After removing the internal speaker I checked for the available space and designed with Fusion360 two parts:
- A ring pulley 6 mm height of the same diameter of the tuner capacitor pulley to glue on top of it
- The support for a small stepper motor (I have used a 28BYJ-48 5V geared stepper motor)
Above: the drafted idea of the stepper support (need two).
Below: The 3D rendering of the support, ready for printing
On the geared stepper motor I fixed a 20-teeth pulley to drive a 6 mm tooth-belt. As the tuner doesn't cover a full rotation it was sufficient to fix the belt to the tuner pulley in a proper position, as shown in the image gallery below.
{gallery} Radio Tuner |
---|
Simulated 3D rendering of the tuner pulley |
The pulley and the stepper supports finished to print with the LCD Elegoo Saturn 3D printer |
The final assembly of the digital tuner driver |
Connecting to The Controller
Searching for a good way to connect the radio to the synth platform that includes the microcontroller to manage the stepper motor logic I decided to use what I found as the less impacting solution in cases like this: an RJ45 connector. As a matter of fact, to power and control the stepper motor, using a half-bridge L298 motor controller, only six wires are needed; the eight wires of the RJ 45 network cable is more than sufficient. The images below show the RJ45 connector tested with a common network patch.
Prototyping the ESP-32 Node MCU
How I Spent So Much Time to Make it Working
The synthesizer platform (the whole project integrating the radio), has been designed with analog components but most of its features are controlled digitally. To control the radio tuner with a knob on the control panel of the synth I planned to use a rotary encoder (with button) to move the stepper motor accordingly.
Above: the breadboarded prototype of the circuit to control all the components.
Fast, powerful, with a lot of memory and many onboard features – including the Wifi – I figured out the ESP-32 Node MCU a very good solution. One of the most interesting features of the hacked radio and synth I am building is the possibility to control the device locally through the control panel, as well as remotely from the web with some Restful APIs calls.
Below: the pinout of the ESP-32 model I got from Az-Delivery, a German provider offering very good products at more than reasonable prices.
Implementation of the Dual Controls
Implementing dual controls on an analog board is not quite easy; after some experiments, the best strategy I found is to put all the switches and buttons for manually change the status of the analog components connected to the GPIO of the microcontroller, while the physical switching operations are managed by a quad-analog switch IC activated by the same microcontroller. In attach the datasheet of the NTE4066BT used in this project.
Following this logic the same feature – depending on the working mode of the device – can be controlled both locally or remotely through a web server.
The ESP-32 software, still a work in progress, is available on the GitHub repository RadioMagic. The resulting microcontroller circuit implements the following features:
- A Fixed IP Access Point at the address 192.168.4.1 (SSID RadioMagic) to make it easier to connect from remote
- A Restful server at the same IP address of the Access Point on the port 8081 to receive the control commands
- All the input switches to set the device
- An I2C 8-ports GPIO extender based on the PCF8574 (see the datasheet in attach) to control the six signal LEDs of the control panel and two of the selector switches
- Two BTE4066BT to control the analog switches
- A rotary encoder to control the tuner stepper motor
- An L298 half-bridge motor controller
Note: other parts will follow documenting the completion of the other parts of the project.
Top Comments