Introduction: PeppersPi

About: ... using laser cutter, PCBs, 3D-Printer and whatever i get into my hands to build things

For our Freie Maker/AislerRetrogaming party this week in Lemiers i wanted to use some Raspberrys with Retropi - first i thought about using the nice Retroflag housings, then started to look into nice retro TV housings on thingiverse... until i remembered a "angel right, devil left" idea: The idea was using shoulder mounted holograms while dancing (Can't take credits for the idea, i'm just responsible for building it :)

First i wanted to use mobile fog displays for it (small water tank and a pico projector), but they where rather clumsy, power hungry and the graphics were not really clear... Next idea was using a pepper's ghost display on each shoulder, but this side project was then abandoned. Until now, because gigantic shoulder pads are also perfect retro chic.

I used two 5 inch pi displays, two Pi 3 (integrating Pi Zeros into the shoulder pads would be also an idea), a power bank on the back and two USB controller, SNES style. Two short HDMI and USB micro cable to connect Pi and displays (best with angled plugs on the display side) and two slightly longer USB micro cables to power the Pis.

Housings and connectors are 3D-printed, no support structures necessary. The peppers ghost display is made with laser cut 0.8mm acrylic (but 1mm might be better), and 25mm webbing for holding everything together completes the list.

Step 1: 3D Printing...

Let the 3D printer do the work and enjoy your free time... Design is made in OpenScad (got an error while trying to upload the .scad file, so you need to rename the PepperPi.pdf into PepperPi.scad...), so it can be also adjusted instead of using the stl files (which might be necessary at least for the battery holder, and also our logo might be replaced by your own :)

The pi case is based on https://www.thingiverse.com/thing:1015706 - where you can also find the missing cap. It is hollowed out (to make room for an optional flat speaker and amplifier module (not installed yet)) - so you have to also download the original stl and adjust the import path in OpenScad. Same goes for the dxf files for the logo - an important hint is that Openscad can only understand flat beziers, in Inkscape e.g. you can use flatten beziers under extensions -> Modify path of all pathes of your design, then export as dxf and adjust the file path (and resizing) in OpenScad.

Both shoulderpads, pi cases and controller holder exist in 2 versions (left and right), then you will need two buckles (ok, just for fun), one battery holder, 4 connectors and 8 holder (you can also use commercial ones for the webbing... and i have no idea about the right name for it), it was just a choice because of color...

Step 2: Coloring and Assembly

The Logos and lines are in this case colored black (didn't want to use the fancy multicolor 3D printer because i thought it would be faster). For shoulder pads, connectors and buckles it worked well with using an black edding and painting the relief structure. It didn't work that well for the controller holder because of the different print direction: The layer structure worked as a perfect capilar structure and sucked the color into the underliying areas which shouldn't be colored. So back manual work, i used a brush and thicker acrylic paint for it.

Then put a Pi into each housing, clip the displays into the shoulderpads (and secure them with a bit of (hot) glue or better: with molten filament). The most annoying part: The 5 inch displays i used are touchscreens with a header for the GPIO pins - normally cool, but in our case it would make the shoulderpads unnecessary high. So: "Off with their heads!"

The rest of the assembly is rather easy: Take the webbing, cut it into the right size (a bit more than circumference of bust) and start going through: on side of the buckle, holder, a Connector (both opposing gaps), pi case, connector, battery, connector, pi case, connector, holder and buckle again. Both ends of the webbing are then secured and the whole system tightend by going through the holder again.

Then add the shoulder pads: Shorts webbings go through the shoulder pads and then through holder on the front and back before going through the connectors... again tightened with going through the holders again.

The belt is made the same way: Buckle, holder, controller holster, controller holster, holder and buckle again...

The most complicated part was keeping track of putting the buckles not upside down, and the left and right versions on the right sides: The cable slit on the controller holster and the HDMI out from both Pi case and shoulder pads should go to the front.

Step 3: Display

Here is still room for improvement: I lasercutted the design file into triangles and middle part seperatly instead of a nicer looking bending. Then glued the parts together with clear adhesive film as well as adding with the same film small hand cutted rectangles (2mm wide) at the bottom sides of the acrylic display. These stripes can be then shoved between display and its 3D-printed case, securing the acrylics.

Again, bending would be nicer, but it can be easily exchanged for an upgraded version.

Step 4: Wiring, Programming

Wiring is easy: One HDMI cable and a micro usb cable from each display to the pi, then a micro USB cable from the Pi to the battery and into another USB port of the Pi goes the USB cable of the controller.

The SD card is then formatted after the instructions on the retropi website. Afterwards, you need to change the config.txt on the boot volume file. First adjust for the screen size and add:

max_usb_current=1

hdmi_group=2

hdmi_mode=87

hdmi_cvt 800 480 60 6 0 0 0

hdmi_drive=1

... drivers shouldn't be necessary, because we don't use the touch screen. Which would now look perfect if we look directly on the screen, but the image is mirrored on the acrylic. Luckily, there are other options we can add:

display_rotate=0x10000

(There are also other options like display_rotate=0, with 0 for normal, 1 for 90 degree, 2 for 180 degree, 3 for 270 and display_rotate=0x20000 for a vertical flip insead of the horizontal one above.)

After booting up, everything should look great, and you can start uploading ROMs on your RetroPi with an USB stick (again, as described on the retropi website).

Step 5: Improvements

Beside the optimization of the acrylic parts remains one caveat: The shoulderpads are at the moment mounted only with one strip and therefore prone to sliding off the shoulder.

So for dancing one should add additional wires for securing them: Melt small holes on front and back on the shoulderpads next to the neck and add a small wire to the opposite connector. This will result in a x-shape of two wires both on front and back. Second, prefered option: Just sew the webbing on nice cloth, which will keep everything perfectly on its space.

Start playing (or dancing ^^) and enjoy!

Multi-Discipline Contest

Runner Up in the
Multi-Discipline Contest