Low Power, Small Form Factor, and High Utility
(Be careful. This definitely voids your warranty.)
Part I: Results Summary - and some pics
Part II: Back Story - Why the heck would you spend your free time doing this?
Part III: Build Detail
Part IV: Future additions
Part IV: Future Plans
Here are some other thoughts on next steps for this project.
- To Do: OpenVPN server
- Ideally I'd like to use this as an OpenVPN server.
- Benefits: PKI Certificates, Very Strong Encryption and Authentication, username, password and Google Two Factor Authentication! Full L3 VPN tunnel with routed Tun interfaces. Optionally TAP interfaces for a L2 VPN.
- Cons: Unfortunately the folks that compiled the linux kernel in the image I used didn't include support for Tun.
- "zgrep TUN /proc/config.gz" gives me "# CONFIG_TUN is not set". :(
- Since there's no support for Tun/Tap I openvpn won't start - rightly so as it'd be useless without it.
- Therefore my options are:
- Compile a new kernel
- not fun
- time consuming
- Run VPN elsewhere in my network.
- Perhaps on my router?
- I haven't decided which way to go yet, but I'm leaning towards the new kernel.
- To Do: Make a backup of the microSD card using dd.
- I've been putting this off for quite some time. But I think now is a good time as I've got it to a (somewhat) steady state.
- The data on the HDD changes slowly, but the microSD is fairly static at this point.
- Future project modifications/fine tuning.
- Case mod:
- Initially when I put all the various components into the case, I (stupidly) had the power cord going out one end and the ethernet cable going out the opposite end. This error wasn't immediately obvious to me as I was fighting with too long USB cables and not enough room in the case for them. However, once I got it fully assembled I quickly realized my error. Fortunately this was easily corrected and you can see the results here:
- Heat sink for A10 Chip on MK802. [pick of chip]
- When the MK802 was in it's original / fully enclosed state, it got quite warm. See Video here. I didn't measure mine, but 50 degrees Centigrade feels about right.
- With the MK802's back cover removed and placed inside a larger, metal case, I haven't noticed any heat at all and it has been working well for a few weeks.
- There have been a few heat sink mods done on the MK802, here's my favorite, but I'd probably only do the A10 SOC (System on a Chip). This chip contains both the 1 Ghz CPU and the 500 kHz GPU.
- Add Power Switch - I've got my eyes open for a nice little power switch for this project. Once found, I'll be sure to integrate one into the back/exterior of the case.
- Power Jack - I'll also add a power jack so that the power cord will not have to run interior to the case to be plugged in.
- Do away with the power brick and run it from Power over Ethernet (PoE) from my switch.
- Power LED (maybe) - Also contemplating a simple power led (probably on the back) to indicate power-on status.
- USB Camera - mjpeg streamer
- Added RS232 Serial Console - I thought it would be nice to have a good, old-fashioned RS232 Serial console on this little guy. So I added a spare USB to Serial Adapter I had lying around: a Keyspan USA-19HS. The process is very simple:
- Plug in USB to Serial adapter - kernel takes care of the drivers and you get /dev/ttyUSB0
- A simple init script was needed to enable console logins on ttyUSB0.