Introduction: A Steampunk Internet Radio: "The Cube"

I really like old radios.

I was fascinated from AM radios, where you can listen to radio station worldwide like Voice of America, BBC, Radio Peking, etc.

Nearly all analog radio station has been switched off but I like to have a radio back with all the cities on the scale I can remember. The broadcasting medium has changed. But the fascination is still there :-).

So I decided to build a radio that is able to receive all the cities I listened to.

And here it is:

The Cube

Step 1: Material

Material I used for the radio:

  • Raspberry Pi Zero W
    • I2C - DAC for the Pi
    • 2 x 4,7K resistor
    • 47K resistor
  • PICAXE 20M2+

    • 10K resistor
    • 22k resistor
    • 3,5mm stereo connector
    • PICAXE programming cable
    • 10K resistor
    • 22k resistor
  • Amplifier with volume control on board (12V / 15W)
  • Speaker I had two choices but I decided to use the "Brass Type"
  • 100KOhm Poti for station select
  • 5V 2A Power supply
  • 12V 2A Power supply
  • 2 LED lamps
  • A scale from an old instrument
  • Rotation switch for power
  • Am idea for the case
  • Plywood
  • Stain
  • Lack
  • Cables and wires
  • Fuse holder
  • Power cord and plug

Step 2: Building the Case

After I drilled and cut all the holes needed, I glued everything together.

With a router I rounded all corners and edges.

I used acrylic paint to get a smooth and nice finish.

After the paint dried I painted two times with stain to get a nice surface that looks like old wood.

Step 3: Building and Programming the PICAXE

Why a PICAXE?

Because my Python skills are not deep enough to embed a I2c ADC to the Pi, I used a PICAXE to control the Raspberry Pi

I mounted the PICAXE to a small PCB and wired the programming circuit and the 10K poti to the PICAXE.

After Programming, I tested the PICAXE.

The attached program is simple and self documented.

On a specific Poti position one of the outputs of the PICAXE triggers on GPO pin of the Pi

Step 4: Making the Skale

The scale for the broadcast stations was made from a very old radio scale.

I created a new one with a drawing program and trimmed it to old with some stain and paint

Step 5: Preparing the Pi and Connecting Audio

Preparing the Pi:

The make the Pi an internet radio you can follow the following steps:

  • Download and flash Pi OS light to a SD card. (see links page)
  • Enable WLAN and SSH by copying two files to the boot partition of the SD card (see links page)
  • Update and upgrade your pi
  • Download the radio12.py script into the home folder and adjust it for your needs.Adjust the file with your favourite radio stations.
  • Follow the instructions of your DAC used for your radio to make it the default audio output
  • Enable the serial port of the pi to use as an indicator that the pi is running
  • Install mpp123 >> sudo apt install mpg123
  • Insert the line :

    dtoverlay=gpio-shutdown,gpio_pin=3,active_low=1,gpio_pull=up,debounce=1000 into your /boot/config.txt file. Adjust it to the GPIO pin you connected a shutdown button. (see link page)

Connecting Audio:

The mono amplifier comes with its own Poti, so I was bale to mount it directly to the top cover.

A small circuit converts the stereo signal from the DAC to mono.

Step 6: Putting Everything Together

The cabling was simple.

Just connecting the Pi to the power supply the Pi to the shutdown button and the cabling from the PICAXE to the Pi.

All screws going to the outside are completely isolated.

Step 7: Up an Running

The "Pi activ" LED is connected to the TX GPIO Pin of the Pi via 1KOhm to Ground (see picture above)

The reset switch is connected to ground (see picture above)

The radio is working pretty well.
The stations can be changed vie SSH ans WLAN.

Step 8: Links