I’ve been using Raspberry Pi Zeros in my projects for a long time now and while they’re awesome little boards, they’ve always had the same problem: not enough ports. If you want to plug in more than one USB device you need a USB hub. If you want analog audio you need some kind of sound card. Pretty soon the setup that was supposed to be small and simple turns into a bulky mess of adapters. And with the new Raspberry Pi Zero 2 W they even got rid of the dedicated pin for composite video output and replaced it with a little test pad on the bottom of the board.
This got me thinking about how I could make an easy all-in-one solution to solve these issues. While I was looking at the bottom of the Pi Zero 2 W and figuring out the best way to wire a composite video cable into that little test pad, I realized I could design a sandwich board that uses pogo pins to make all the connections. I had seen other products use this approach before, and it seemed like the cleanest way to keep everything compact without having to solder.
I originally just wanted to create a board to have composite video output for a project I was working on, but then I realized I could also incorporate my Tiny USB Hub circuit onto the same board to get a few extra full-sized USB ports. That’s when I really started designing the board, and as I went along I began thinking about how to add audio, too. I settled on using the PCM5102 sound chip, which generates clean stereo audio from the Pi through I2S.
The composite video and audio signals are routed to a 3.5mm TRRS jack similar to the ones found on Pi 3 and 4 models. Any 3.5mm AV cable that’s compatible with Raspberry Pi will work with this board.
INSTRUCTIONS
The AV-USB board will come with all necessary hardware to mount it to your Pi Zero 2 W. Make sure the standoffs are installed on the AV-USB board snug, but do not over tighten. The stand offs are made of nylon plastic and if you over tighten them you can strip them.
You can use a Pi Zero 2 W with or without 40 pin headers installed. But if you do have a 40 pin header installed it does help to trim the legs of the header on the bottom side of the Pi so that the pogo pins have a flat surface to sit against like this:
You must do this to 3 pins marked in red below. Carefully cut them with flush cutters. I like to remove the solder first and then cut the pin flush to the board and re-solder it.
**If you are using a Pi Zero without a 40 pin header it is HIGHLY RECOMMENDED to add some solder to the same holes marked in red above. The pogo pins can make a connection by just being inserted into the gpio holes, but theres a possibility of having drop outs or static in the sound. To ensure that theres a solid connection add just a bit of solder to the holes so the pogo pins sit against the solder rather than sit inside the hole. It’s very easy to undo this later with solder wick or a de-soldering pump if you need to clear the holes later on.**
ASSEMBLY
First, make sure you have the boards oriented properly. The camera connector on the Pi Zero and the 3.5mm jack on the AV-USB board should be on the same side.
When screwing the two boards together, it helps to first insert all 4 screws and thread them loosely to line everything up, then push down on the Pi Zero and screw down each screw in an X pattern. Do not over-tighten!
Once you apply power to the Pi Zero, you should see the red LED come on the AV-USB board. This indicates the board is receiving power. (Note, this led will stay on at all times even when the Pi is shut down, but a power adapter is still connected.)
The USB ports, and composite video should work automatically, but there are some settings you must do for the sound to work.
Pi SETTINGS
You can either do this on your Pi directly or SSH into your Pi from your computer to configure these settings.
From the terminal we are going to type: sudo nano /boot/config.txt
This will take you to the Raspberry Pi config txt file. While we are there we are going to do two things. First lets comment out the line for the default pi audio by adding a ‘#’ symbol before the line : dtparam=audio=on
It should now look like this : #dtparam=audio=on
Now lets make a new line the config and add two lines: #Enable PCM5102 Audio
and : dtoverlay=hifiberry-dac
It should look like this when done:
Now save your changes and exit back to the terminal. You can do this by pressing ctrl+X, then press Y when it asks if you want to save.
We have to now create a config for our sound.
At the terminal type : sudo nano /etc/asound.conf
This will open a blank txt file where you will need to add:
Close and save again. And go ahead and reboot the Pi by typing: sudo reboot
After the Pi reboots your sound should be working. You can check if the sound card is being recognized by typing into the terminal: aplay -l
You should see the PCM5102 listed.
You can run a sound check from the terminal by typing: speaker-test -D default -c 2 -twav
If everything is working you’re all set!
If you have any questions please feel free to send me an email or leave a comment.
Thank You





One Response
Maybe overkill, but it’d be cool to see a v2 board design with the 3.5mm TRRS moved to the HDMI side and another 4th USB A port where the 3.5mm TRRS currently is.