Project:Festival Radio

From CoMakingSpace Wiki

The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
ProjectInfoBox

Festival Radio

Festival radio battery check.jpg
Status: basic functions implemented, now modding the case
Release Date: summer 2019
Initiator: Lukas
Team: Patrick, Martin
Materials Used: old radio, recycled laptop batteries,
Raspberry Pi Zero WH + JustBoom Amp HAT;
more in the "Shopping List" section
Approx. Cost: approx. 120 €


I am turning an old radio (a Studio Club 5007, but that doesn't really matter) into a digital music player for festivals and garden parties.

Originally I wanted to keep the old radio functions in, but soon scrapped that plan to gain more space for batteries and ease of assembly.

I was not very experienced with audio, electronics or Raspberry Pi, but was lucky to get help from Patrick and Martin with the tricky bits!

Major Steps

  • remove unneeded hardware
  • add batteries & charging electronics
  • get basic functionality (AP mode & Bluetooth)
  • convert the cassette tray into an SD card reader
  • find good spots for all components and secure them against shaking (carrying around)
  • (optional) display ID3 information about current song somewhere (old tuner scale?)
  • (very optional) add a "tuning" feature that biases the shuffle towards certain musical styles (e.g. relaxed - fast - heavy)

Starting Points

Shopping List

I got delayed with this project for a bit and wanted to get started quickly, so the sources were selected mainly for speed of delivery, not pricing:


  • optional: Tuner & Aux In
    • would need an ADC to be able to sample the audio signals and output them on the amplifier board
    • alternative: an extra AUX amplifier board and switch inputs (e.g. [1])

MAKE

Gallery

coming "soon" - ask if you're interested!

Pi Configuration

moOde audio experience:

  • set ALSA volume to 80 % as there is not quite enough power for 100 % (sound cuts out) - this setting prevents user errors
    • only efficient for local playback - bluetooth devices can still go too high(?)
    • resets to 100 % after every reboot...
  • bluetooth functionality was rather easy after finding the appropriate settings (bluetooth "on"/pairing agent "on")
  • SD cards inserted into the USB OTG card reader are automatically added to the library after setting "Automatically update MPD database on USB insert/remove" to YES
    • removing the SD card in the middle of a song will cause it to continue for a few seconds from RAM, then internal songs start playing -> make sure to put a few "always great" songs onto the remaining space of the internal SD!
    • BUG: this stopped working reliably after a few uses, perhaps due to hard shutdowns that damaged the SD?

Hardware Assembly

urgent TODOs:

  • come up with a solution to an apparent problem with the battery balancer: needs a charge coming in once before opening the output - problematic when 18650 cells are exchanged with fresh ones and it shuts down
    • Patrick had an idea involving a resistor which I can't quite remember :-(
      • Patrick idea is to add a resistor (maybe 100 Ohm) between B+ and P+ that can be switched in via a button. This would simulate a charge to the circuit and release it from its lockdown state. Not sure if the voltage on the power in/out side needs to be higher than the current battery voltage. In that case one could use a small battery (like a coin cell) to lift the voltage briefly.
  • start using IO pins
    • shutdown script for a push button
    • volume control (ideally sliding potis from original radio)
      • moOde audio has a "use rotary encoder" option to try out: could not get (sliding) potis to work
      • moOde's "GPIO button handler" only seems to work for buttons (1 pin per command, nothing as gradual as volume)
    • output battery status?
  • a bit of cooling?? the amp gets quite "warm"...


Raspi Configs

  • Boot config in config.txt:
    • Shutdown Pin: dtoverlay=gpio-shutdown,gpio_pin=4,active_low=0,gpio_pull=up
    • Enable UART for led: enable_uart=1