InternetRadio, rev. 3

Revision 3: power, DAC and amp on the same board

After improving the software to a point where it was usable (apart from the fact that the radio channels were baked-in), it was time to start integrating all the different PCBs that made up the project:

  • the amplifier
  • the DAC
  • a power supply PCB (bought)
  • the I/O board

All the pieces together look like this:

This is the “prototype” setup, as used to do most of the software development. There are a few things to note about this setup:

  • The lowermost bit of stripboard on the CC3200 launchpad delivers 5V power to the MCU. There are a few 2000µF capacitors there, in an attempt to get rid of power supply noise in the audio, which was clearly present. The capacitors didn’t solve this; a proper star-shaped grounding setup should help here.

  • The amplifier in this picture is the MAX4295 class-D amplifier, instead of the TBA820 used before.

Schematic and board

Here are the schematic and the board images for this revision of the radio (a link to the KiCad files follows below):

KiCad files

The board uses a mix of SMD and through-hole components. The idea was to use through-hole for components that I might want to replace for experimentation.

The board has 4 major sections:

  • Power supply.
    The power supply section has 2 parts: a 5V part, and a 3.3V part. The 3.3V part powers the CC3200 MCU and the LCD module; the 5V part powers the rest.
    The 5V part uses a LM2596 buck regulator to convert 7.2V-9V battery power to 5V (6 x AA batteries; I use rechargeables, so 1.2V x 6 = 7.2V).
    The 3.3V part uses an MCP1602 buck regulator to convert 5V to 3.3V.
    A 5V supply connector and 3.3V supply connector are broken out to provide some flexibility to power things. The 5V connector wasn’t used; the 3.3V connector was used to provide power to the MCU, since there is no power connected to the BoosterPack headers. There are a bunch of footprints there for capacitors of different sizes, but these were not all populated.

    In this schematic/board, the 3.3V part is cascaded from the 5V part: the MCP1602 takes 5V from the LM2596. I’ve since learned that cascading buck converters is not a brilliant idea, and it also messes with the “star” topology for power. In the next revision of the board, the 3.3V section will be in parallel to the 5V section in stead of cascaded from it.
    The MCP1602 also turned out to be so small that I couldn’t reliably solder it to the PCB by hand.

  • DAC
    The DAC is the same MCP4921 as used before, in the same configuration.

  • I/O board connector.
    This part provides a connector to connect the I/O module, which combines power (3.3V), the SPI connections, and the button lines. The button lines have protection resistors and (optionally) diodes on them.

  • Amplifier
    The amplifier is the MAX4295 class-D amplifier. The circuit used is taken directly from Maxim’s evaluation board for this amplifier.
    There is a jumper on the board for the EN (enable) pin (JP1). The goal is to enable/disable the amplifier in software, but the corresponding GPIO pin is currently not used in the software. The jumper allows to enable to amplifier permanently.

The assembled board looks like this:

netradio v3 assembled pcb
netradio v3, connected