Raspberry Pi Hidden Mobile Spycam (ShoePi)

I’ll get straight to the point with this one. This is a mobile spycam that allows you to record video with a hidden camera on the go, affectionately named ShoePi because my original design had it in my shoe with a small hole cut in it looking up at the world. Of course, this doesn’t have to go in your shoe. It can go just about anywhere that the Raspberry Pi can fit. In a bag? Sure. In a backpack? Of course. In a suitcase? Absolutely. Pretty much anywhere you can fit a Raspberry Pi 3 and a camera module, this bad boy can remotely record from.

HINT: Need a more stationary, motion-activated Raspberry Pi spycamera? See SpyPi.


The ShoePi is a mobile spy camera that you control with your phone (iPhone or Android. If you have a Windows phone, get out). It is meant to be strategically placed somewhere on your body or in your belongings to capture what you need to capture. From there through the magic of WiFi and mobile SSH, you can remotely connect to the ShoePi to capture your video. This system also allows for the quick destruction of all recorded items using an abort command. “But Viadoxic” I hear you say, “How is this different from sticking a GoPro in a bag?” Well, my inquisitive friend, this whole system is roughly 1/10th the price of a GoPro, it’s kind of a pain to control the GoPro remotely, and the lens on the ShoePi is only about 1mm wide, which means you only need to expose 1mm worth of hardware to the world in order to pull this off.


The materials for this one are somewhat similar to SpyPi, mostly because I don’t like spending money to buy new materials, but a little bit so that you guys don’t have to keep buying new materials as well. Everybody’s happy.

  • Micro SD Card (16GB, 32GB. Either one will do for this build)

  • Raspberry Pi Camera Module

  • Some mobile power solution (sophisticated build tutorial here. Simple, but efficient power supplies here and here.)

  • Any modern cell phone with an SSH client installed on it. For Android phones, I prefer JuiceSSH. For iPhones, simply search the App Store for “SSH client” and you should be able to find one.

  • If you’re interested in setting up the camera far away from the Pi itself (for example, having the Pi in your backpack and the camera module in your shoe), you’ll also want to pick up some extended camera ribbon cables.

Protip: Some of these are affiliate links to Amazon product pages, wink wink (buy my shit).


Step 1: Burn the latest Raspbian OS to your micro SD card, make sure SSH is enabled, and boot the pi (tutorial here).
Note: This project works fine on both Raspbian Buster and Raspbian Stretch.

Step 2: Boot the Pi and connect to it over SSH

Step 3: I heard your gripes loud and clear on the SpyPi project. “TOO MANY COMMANDS TO RUN” you all said. Well, fine. I made it quicker and easier this time around. You’re welcome. Just run these commands in this order and all will be okay.

sudo apt-get install -y git

If the above command fails, run sudo apt-get update first

mkdir /home/pi/shoecam
cd /home/pi/shoecam
git clone https://github.com/imCertified/viadoxic-shoepi.git .
sudo chmod -R 777 /home/pi/shoecam
python3 /home/pi/shoecam/initialize.py

The ShoePi will power off when this is done. When it shuts down, move to the next step.

NOTE: If you’re connected via WiFi at this point it disconnect around the point where it executes hostapd. That’s normal. If you notice your connection is dead, just watch the activity light on the Pi. When it stops blinking, it probably shut down. Move on.

Step 4: Remove the power source and connect the camera module. Tutorial here if you need it.

Step 5: Power the pi back on and connect to the WiFi network named “RPi” from your phone. The password is pumpedupkicks

Step 6: Connect to the ShoePi using your SSH client. If you’re using JuiceSSH, this is done by clicking the Connections button at the top and adding a new connection. In any case, the IP you want to connect to is

Step 7: Run the command shoecam, which will present you with a prompt to record for 60 seconds, record for 120 seconds, shut down, or abort (which shreds the recordings directory and shuts down the ShoePi). You are then free to walk around and start the video recording whenever you like. The recorded videos will be stored in the /home/pi/shoecam/recordings/new directory that you can copy off at your leisure.

Step 8: Support

If you have any problems, I’m almost always available through email at viadoxic@viadoxic.com. Just make sure to reference the project you’re working on so I’m not confused.