Close

Development Hardware: Raspberry Pi 4

A project log for PiCarts: GPIO ROM Carts

Loading from ROM cartridges plugged into the GPIO port. Just like the old days.

DustinDustin 06/09/2021 at 13:400 Comments

As I'm still saving for the Pi 400 and the M5stack Faces kits, I've decided to start development on the PiCarts using the Raspberry Pi 4. It used to live in my camcorder, but has recently been put back in it's case for use as a control center and entertainment center for the camper. It's not the exact system I want to work with, as it's rather stationary, but it will work for now. The hardware should arrive soon for the carts, and I'm too excited to wait for the Pi 400 to start development. The Pi 4 has the official 7 inch touchscreen, a Smartypi Touch 2(I think that's the proper name) case, official power supply, and a Creative Stage Air portable sound bar. I love that speaker as it has Bluetooth, line in, and even a USB port that turns it into a simple and reliable portable music player. This setup will work just fine for now, but it needs a few things. Currently, the audio cable is very long and requires taking the stand off to access. Not great for when I need to plug headphones in. I may buy a short cable and a coupler so I can just plug headphones into the end of the cable. Then I can work on audio or just watch videos without disturbing anyone. I'd also like to get a very large battery bank that won't trigger the Pi low voltage ⚡ warning. I remember seeing a way to disable that, and I might just do it. I've already got a Bluetooth keyboard I really like, and I have a USB mouse. I need a new flash drive to boot from, so I can start working with a fresh system. I really don't want to have to reconfigure all the software that's currently on the Pi. The good thing about these little investments is that they will carry over to the Pi 400 when I get it. Double checking, I confirmed that the Pi 40p has no analog audio output. No headphone jack. This is very inconvenient in general, and especially for me when I want to do testing of audio in public. The thought occurs to include a headphone jack and circuitry on some carts. If that doesn't work out for me, I'll just get a Bluetooth adapter for my in ear monitors headphones, or a USB headphone adapter. The 3.5mm audio jack is one connection I really wish they would have kept. Bluetooth is terrible and I hate it. I could possibly design a cart PCB that has the option to add audio hardware and just leave it unpopulated if not needed. I almost always listen to music or working with audio files while working though, so I'll most likely end up with with it populated on my development boards. 

Thinking about all of the hardware, I realize that the software is likely going to be the hardest part for me. It's almost all custom, but hopefully just a custom selection of well established things. I want a system tray object that runs on boot, so I have to figure out how to add those entries. I also need to make an installer of some sort that makes this stuff simple enough for the average user. Then I need to figure out how to distribute this software. This project is for me specifically, but I want the practice and experience of releasing a commercial product for my portfolio and own satisfaction. 

I've got tons of research and work to do, and I should be updating this page far more often when the new hardware arrives. I'll be picking up a package today. It should contain an esp32 board and the HDMI to USB adapter. I realized I can even use the Pi 4 as a display for the Pi 400 when it arrives. Next order to arrive should be the Digikey with the Adafruit perma-proto HATs with EEPROM. I'm expecting my order of SD NAND Flash chips to arrive next week. Until then, I'll continue development on things like the user interface, start up scripts, and board design.

Discussions