Picture of Raspberry Pi PirateBox
0 - 2 - PirateBox.JPG
0 - 3 - PirateBox Wiring Diagram.PNG
0 - 4 - PirateBox LED Circuit.png
0 - 5 - PirateBox LED Board Schematic.png

A PirateBox is a Linux based system built using free software for the Raspberry Pi that provides private sharing of digital content. The PirateBox creates a local WiFi network, independent from the Internet, with anonymous file sharing and chatting capabilities.

I wanted to make a PirateBox and create a cool looking case for it. I used a laser cutter to cut the pieces of the case from 1/8" thick birch plywood and painted it to look as shown in photos 1 and 2. A small Python program controls custom hardware that makes the arcs above the skull glow when the PirateBox is up and running. Another small Python program controls a push button switch that illuminates when the Raspberry Pi is powered up. When the switch is pressed, the program shuts down the Raspberry Pi preventing the problems that can occur if you just unplug a running Raspberry Pi.

The "PirateBox Wiring Diagram" shows how the various components are connected to the Raspberry Pi. The second diagram and the schematic show the wiring for the LED circuit board. Since the three large LEDs draw more power than the Raspberry Pi can provide, the LED circuit board is powered separately and uses an optoisolator to keep the LED circuit isolated from the Raspberry Pi.

The PirateBox can be painted with different color schemes to create the skins shown in step 19.

This instructable assumes you have experience with setting up and running a Raspberry Pi, that you have experience soldering components to printed circuit boards, and that you have access to and experience with a laser cutter.

I made this at TechShop.

HarisK13 months ago

Hi! Great project here. Just wonder is there any alternatives to the NPN Optoisolator PS2501-1? I could not find it in the UK. Please reply soon. Cheers!

talk2bruce (author)  HarisK13 months ago

It looks like www.maplin.co.uk has optocouplers that will work.

dataforge4 months ago

I saw this on flipboard - god this just looks damn cool!

chintanextc4 months ago

hey bruce.. led ckt board is not working on gpio 23.I hve repeated the whole process of software installation sveral times, but no success. I am powering up the board from the rpi itself..

I am using illuminating rocker swith instead of push swich?Does that have any effect , as it is also not illuminating on powering up the raspberry pi.

Is it necessary to give extrnal power supply of 1A as you mentioned?

Please reply soon!!!!!

talk2bruce (author)  chintanextc4 months ago

The LCD needs to be powered separately. The three LEDs draw too much current to be powered by the Raspberry Pi. The switch needs to be a momentary switch - it needs to make contact briefly and then return to the off position - does your rocker switch do that or does it stay in place when you change positions - if it does the latter then you need to get a momentary switch. You say the switch doesn't illuminate - what kind of light is in the switch - is it a LED? If it's an LED then you need the right value resistor for it. Do you know the voltage requirement for the switch and the forward current draw for the LED in the switch?

Thanks for the reply Bruce

the ROCKER SWITCH is momentary and it has an LED

switch's current and voltage rating is



dimvasilk5 months ago

What range does the box get? I'm looking to use the adapter in a LOS application (so no need to worry about walls, really). What's the range you've seen from it when there are no obstructions?

Also, do you have to plug the wifi adapter into a powered hub?

talk2bruce (author)  dimvasilk5 months ago

I've only tested it to about 25 feet. I'm not sure what the maximum range would be. I plugged the wifi adapter directly into the Raspberry Pi.

chintanextc6 months ago

hey bruce....I am getting a message after the command -

tar piratebox ws_current.tar.gz

as , cannot find this file

What is thy solution for this?

Please reply as early as possible

talk2bruce (author)  chintanextc6 months ago

Hi. From your post it looks like you didn't type the command correctly.

It's not: tar piratebox ws_current.tar.gz

The correct command is: tar xzf piratebox-ws_current.tar.gz

Try that and see if that works.

The problem is solved brother....thanks for the reply
AzurusNova made it!6 months ago

I decided to take up this project, and through all adversity and learning new things on the way, I now have my very first Pi(rate) Box.

When I get to, Ill be building this into a chrome halloween skull and put the appropriate ports outside of the skull for the power, thumbdrives and ethernet.

2015-02-24 21.20.29.jpg
talk2bruce (author)  AzurusNova6 months ago

Congrats on your first Piratebox! Your idea about the chrome skull sounds great. When you get it done please post a photo of it!

FeminD8 months ago
How do I set up a raspberry pi rate box without any external circuit (of LEDs etc..) I just want to make a pirate box without any external circuit knowledge
talk2bruce (author)  FeminD8 months ago

Instructions for making a Raspberry Pi Piratebox without the external circuits can be found here:


FeminD8 months ago
And I have a Dlink DWA-123 wireless adapter (usb dongle) will it run directly or any drivers have to be installed.. please help
dmagryta12410 months ago

Very cool. Nice work! I did something vaguely similar with a cheapy generic $11 eBay travel router + a USB flash drive...I just set the router to not broadcast its SSID, and plugged into the router the flash drive containing the files I wanted to privately share. Then I setup LAN file sharing, so now I can hide the router in a stealth box with a 9v battery + LM7805 voltage regulator powering it. When a fellow "agent" is in range of the pre-shared GPS coordinates of the router (~15 feet) , they manually add the WiFi network in from the hidden but pre-shared SSID name and password. Then they can browse for and download wirelessly the files that are on the flash drive. But your instructable is quite a few levels more advanced, and far more clever from my quick project. :)

wilgubeast11 months ago

Love the numbered photographs. This is a very well-presented project.

talk2bruce (author)  wilgubeast11 months ago

Thanks for the feedback! I've written a lot of instructables and found that with unnumbered photos saying things like "in the fourth photo" could get confusing especially with a lot of photos so I started numbering them. It adds time to add the numbers but it actually makes it a bit easier to write the instructable and certainly a lot easier to follow.

JM199911 months ago

How long did it take to make this Instructable? it is one of the larger ones I have seen!

talk2bruce (author)  JM199911 months ago

I worked on this on and off over about two months but I would say it it was probably about a solid week or two of work. The actual building of the PirateBox was pretty quick: probably about about three days (including time for paint to dry). The most time consuming part was selecting which photos to use (I take a lot of photos as I built the project) and documenting the steps for the instructable.

talk2bruce, I am not able to figure out these two statements...

1) Using a text editor, edit the "/etc/rc.local" file and add the line below to the bottom of the file before the line with "exit 0". Since "/etc/rc.local" is a system file you will need to use the sudo command when you start your editor - for example "sudo nano /etc/rc.local".

2) Make sure to put the ampersand ("&") at the end of the line.

Please help me out as I am working on it.

talk2bruce (author)  chintanextc1 year ago

Edit the "/etc/rc.local" file by issuing the following command on the command line:

sudo nano /etc/rc.local

when the editor has started and is displaying the contents of the file, you'll see that the last line of the file says "exit 0". Insert a line above that looks like this:

python /home/pi/python_programs/rpi_halt_btn.py&

Save the file.

talk2bruce , can you provide me a technical paper or any sources for Piratebox using raspberry pi? I will be grateful to you.
talk2bruce (author)  chintanextc1 year ago

The official Raspberry Pi Piratebox web site is http://piratebox.cc/raspberry_pi

The software on that site is easy to install and works great but is incompatible with the hardware in this instructable. See the last step of this instructable for more details.

Thanks a lot talk2bruce!!!

prof_ron1 year ago

I am getting an "ERROR 403: Forbidden" indication when I attempt to get the

rpi_halt_btn program.

Any suggestions?

talk2bruce (author)  prof_ron1 year ago

This is odd. I saw your post and then tried it myself and I got the 403 error as well. As I was trying to figure out why this was happening, it started working again. Since a 403 error comes from the server, it may have been a temporary problem in the Amazon S3 infrastructure. Can you try it again, see if you still get the error, and let me know if it persists? One workaround, by the way, would be to use an editor like nano to type in the programs and save them in the python_programs directory. The code is listed in step 20.


Very nice work. Just out of curiosity, what made you choose Raspbian over SliTaz?

talk2bruce (author)  Jezabelle.In.Hell1 year ago

I chose Raspbian for two reasons: (1) Raspbian was what the PirateBox software was originally made available on and (2) I had a lot of experience with Raspbian and that made it easy for me to determine how to hook my extensions for the shutdown switch and LED circuit board into the Raspbian system. I hadn't heard of SliTaz until I saw your comment: I'll have to check it out.

jelimoore1 year ago

Hello, dnsmasq fails to start, gives me no debug issues, and I do not know what is wrong. Can you please help out?

talk2bruce (author)  jelimoore1 year ago

Try issuing these commands and see if it fixes the problem:

sudo update-rc.d dnsmasq remove

sudo /etc/init.d/dnsmasq stop

sudo shutdown -r now

mfrontuto1 year ago

can we use your script for the power button with other projects that use Pi? I wnated to make a media center that has a power/on/off button. will this work for that as well?

talk2bruce (author)  mfrontuto1 year ago

Sure, you can use the script for the shutdown button in other
projects. I'm planning to use that script for some other Raspberry Pi
projects I have underway. The thing to remember is that the script
doesn't power down the Raspberry Pi, what it does is shutdown the
Raspbian operating system so that it's safe to remove the power. It's important to "halt" Raspbian before removing power because you could corrupt the file system without a clean shutdown. In addition to a shutdown button, if you want to have a on / off button for the Raspberry Pi, what you'd need to do is modify a USB cable to have the switch break the power connection. If you have any questions about how to do that, feel free to send me a private message and I can explain in more detail.

vak521 year ago

Awesome! That case is sweet! I'm thinking about doing something similar with my raspberry pi.

Aleator7771 year ago

Yarr! Nice case. Well done project!