This tutorial will show you how to make a Linux computer that fits inside a modified USB charger plug, providing constant power in a very small package. It uses the Raspberry Pi compatible ODROID-W development board and runs the Raspbian OS. The plug itself can be used internationally and has US/UK/EU attachments.
The cool thing is that all you need to do is plug it in and that's it. You just leave it anywhere within wifi range, and it will run with constant power and is small enough to be inconspicuous. There are quite a few applications for something like this, including: personal file/media server, a silent motion alarm (when combined with the RPi Camera), a TOR relay, a pentesting tool, a Bitcoin node, personal VPN or just a general use remote linux system. This example uses a wifi adapter for connectivity, but alternatively you could use the innards of a USB ethernet adapter if you want a physical connection.
PARTS / MATERIALS (~$50)
- ODROID-W single board computer (700Mhz, 512MB RAM)
- USB charger plug (Model “MD-ADP-0516UN001” which has UK/US/EU attachments)
- USB Wifi adapter (must be Raspberry Pi compatible)
- Insulating tape
- Scrap plastic for insulation
- Some thin wire
- Micro-SD card (Needs to be big enough to hold the OS + whatever you intend to use the computer for)
- Soldering iron
- Wire clippers/strippers
- Small hacksaw blade
- Fine file (optional)
- Helping hands stand (optional)
- Super glue
HOW-TO GUIDE - SOFTWARE
Step 1. Download the custom Raspian OS image from the ODROID website [http://dn.odroid.com/ODROID_W/OS_IMG/]. I tried the standard Raspbian image too which seemed to work, but I'm guessing the ODROID specific image is tailored more for the hardware. Follow one of the million guides on the internet for how to write the .img file to your micro SD card.
Step 2. Follow this guide to set up wifi on the ODROID [https://learn.adafruit.com/adafruits-raspberry-pi-lesson-3-network-setup/setting-up-wifi-with-occidentalis](Note: Since there is no USB port on the board by default, you'll have to solder one on and connect your wifi adapter. This is only to set everything up, and will be removed afterwards.)
HOW-TO GUIDE - HARDWARE
[WARNING: Disassembling USB chargers is potentially dangerous and could kill you if you mess up. Take all precautions and be careful when dealing with live electricity.]
Step 1. First thing we need to do is put a little jumper wire between these two components on the board [http://i.imgur.com/lNqGN5Z.jpg]. This SBC has some power stability issues that are solved with this fix. More info about this is on the ODROID forum [http://forum.odroid.com/viewtopic.php?f=104&t=6547]
Step 2. Remove the plastic and metal casing from around the wifi adapter. You should be left with something like this [http://i.imgur.com/RHJpSPp.jpg]
Step 3. Cut, strip and tin some wires and solder them to the board and the contacts on the wifi card [http://i.imgur.com/F6024gm.jpg]. Power up to see if it works.
Step 4. Use insulating tape and insulate. Fold it over so it fits in a nice pocket. [http://i.imgur.com/kq2Y5ho.jpg]
Step 5. Now we need to take apart the USB charger. Use a small hacksaw blade to cut around all four edges and pry it in half. Going slow here helps not to accidentally saw into the components inside, which would be BAD. You will be left with something like this [http://i.imgur.com/uS9OAD2.jpg]
Step 6. Instead of messing with the components on the board, I decided to cut away the front of the USB port, revealing the contacts. [http://i.imgur.com/trWgMEf.jpg]
Step 7. Cut, strip and tin a red and black wire and solder them to the USB charger. The other half can be soldered directly onto the ODROIDs battery connector. This helps save space instead of using the Micro USB port. [http://i.imgur.com/9ys7PH4.jpg]
Step 8. Cut some scrap plastic and screw it to the exposed USB charger. This will insulate the electricity from the charger. I used 2mm thick plastic which seems to do the trick [http://i.imgur.com/I9a9tJj.jpg]
Step 9. Stack everything up [http://i.imgur.com/HKXolJs.jpg] so it'll fit inside the case. You'll noticed that there is a gap between the two halves of the case [http://i.imgur.com/oWrQ9D9.jpg], so we'll need to cover that.
Step 10. I used thin plastic the cover the exterior, and then thicker plastic to provide support. [http://i.imgur.com/PprH1la.jpg]. It ended up being pretty robust.
Step 11. Finish the exterior with vinyl sheeting or however you like to make it less conspicuous. You now have a little Linux plug computer! [http://i.imgur.com/9omrjCX.jpg]