Potteries Hackspace

Let's make something!

PirateBox Offline FileSharing Dead Drop

There’s now a PirateBox Dead Drop setup at Potteries Hackspace.

**What are dead drops?

** A USB dead drop is a USB device installed in a public space. For example, a USB flash drive might be mounted in an outdoor brick wall and fixed in place with fast concrete or cement. The name comes from the dead drop method of espionage communication. The devices can be regarded as an anonymous, offline, peer-to-peer file sharing network.

What’s a PirateBox?

A PirateBox is a portable electronic device, often consisting of a Wi-Fi router and a device for storing information, creating a wireless network that allows users who are connected to share files anonymously and locally. By definition, this device is disconnected from the Internet.

Setting up a TL-WR703N as a PirateBox

If like me you managed to aquire one of the TP-Link TL-WR703N, the Chinese version of the TP-Link MR3020, then you’re going to had a bad time, without a guide at least…

The official PirateBox website has instructions on how to install PirateBox 1.0 on the TL-WR703N on their website. I strongly advise that you follow those instructions as closely as possible.

Below are some instructions that may help you with some snags along the way…

2013-03-18 20.54.05

Prerequisites

First, let’s figure out what we need:

  • TL-WR703N
  • USB Flash Drive (formatted FAT32 with a single partition)
  • Ethernet cable
  • 5V USB Power cable and source

Warning: If you buy the TL-WR703N it is the model designed for the Chinese market unlike the TP-Link MR3020.

Getting OpenWRT firmware installed

Warning: Flashing your device may “brick” your device, preventing it from booting up normally. You can unbrick the device by accessing it via a serial port by following the instructables instructions on how to add a serial port to a TL-WR703N.

The first thing we need to do is switch from the TP-Link interface to OpenWRT. To do this, you need to connect to your TL-WR703N (usually on http://192.168.1.1/) via your web browser and update the firmware from there.

Sounds easy? It’s not. Why? Because it’s all Chinese!

If your Chinese is as good as mine, then you’re going to need some help…

To flash from the web interface, from the menu on the left, select the last menu item and then the third submenu item.

Warning: this will reset your flash and remove all your settings so you can start from scratch.

I tried to use the OpenWRT firmware for the WR703N but it reported as a

Download the openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin firmware file to upgrade from the web interface.

If like me you already installed (the wrong version of) OpenWRT, rewrite it from command line:

cd /tmp
wget http://stable.openwrt.piratebox.de/auto/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin
mtd write openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin firmware
reboot

Once you’ve got OpenWRT installed on the device and you’ve connected to the internet again you’re ready for the next steps…

Setup basic USB Support

opkg update && opkg install kmod-usb-uhci kmod-usb-ohci
insmod usbcore
insmod uhci
insmod usb-ohci

Note: If you get an error “insmod: can’t insert ‘usbcore’: File exists” you can safely ignore this.

Brick your PirateBox

At this point I somehow managed to brick my PirateBox. It would not boot at all.

If you followed these instructions closely, then it’s likely that you did too! Sorry, but at least it’s a good excuse to get hacking…

Add a serial port

2014-08-16 11.11.00

With the help of the guys down at the hackspace and a few bits off eBay (such as a USB to RS232 TTL PL2303HX Converter Module) I managed to follow the instructables instructions on how to add a serial port to a TL-WR703N in order to unbrick the device and access it via a serial port.

Once I had restored the device back to normal via the serial port I was able to follow the PrivateBox install instructions correctly.

The downside was that I had to add this step in, but the upside was I got to hack the device!

Unfortunately I didn’t take a note of exactly the steps I took to send the image over the serial port, but it did involve using RealTerm and TFPD. There’s some instructions on the OpenPilot forum, entitled “Unbrick wr703n wifi router” which seem to be the same instructions I followed.

Install PirateBox

Follow the instructions on the official “PirateBox” website, titled, how to install PirateBox 1.0 on the TL-WR703N.

Check your Wireless

If you’ve followed the instructions correctly then you should see an SSID broadcast that says: “PirateBox – Share Freely”…

There’s a 16GB memory stick in there which you’re welcome to use via the wifi access.

2014-07-08 21.30.07

Useful Resources