Saturday, December 10, 2011

$35 Linux Box for Robotics and Home Automation

A survey of low-cost Linux boards for home automation, robotics, and DIY hardware — and why a ~$35 TP-Link MR3220 Wi-Fi router running OpenWrt turned out to be the sweet spot in 2011.

TP-Link MR3220 router with OpenWrt

TP-Link MR3220 — a cheap Wi-Fi router capable of running OpenWrt Linux.

The hardware landscape

Over the past few years I studied several low-cost open-source hardware platforms for home automation:

Board Price
Beagleboard$150
Beagleboard xM$150
Beaglebone$89
Sheevaplug$85
Seagate Dockstar$50
Buffalo Linkstation Live~$150
Linksys WRT-54GL$50
Asus RT-N16$90
TP-Link MR3220$35
Raspberry Pi$35

Only a few of these are truly open in terms of hardware and software. The rest are commercial products with an option to run open-source Linux.

Requirements

  • Decent processor, RAM, and flash — under $40 (2000 INR)
  • Off-the-shelf product available locally (India)
  • Open-source Linux support (OpenWrt / DD-WRT / Tomato)
  • Lightweight with low power consumption
  • Easy option to extend I/O peripheral access

Why a Wi-Fi router?

With these requirements, I narrowed down to the TP-Link MR3220. While the Raspberry Pi was the ideal solution on paper, it was extremely hard to get in 2011 due to heavy demand.

A Wi-Fi router makes practical sense: everyone already needs one for home connectivity. Adding basic home automation capabilities with little added cost — while saving you from running a 24/7 power-hungry desktop — is a good bargain at ~$35.

For enthusiasts, hobbyists, and students interested in embedded Linux, robotics, home automation, and DIY hardware, a router with USB + OpenWrt lets you skip hardware development and jump straight into firmware and software.

Demo: Android app controlling LEDs over Wi-Fi

No warranty void: You don't need to open your router. The openUI hardware is a USB add-on board that plugs into the router's USB port.

Hardware photos

Collection of Linux hardware boards

My hardware collection — various Linux boards evaluated for home automation.

MR3220 router with openUI USB board

MR3220 router with the openUI USB add-on board connected.

Android app for controlling LEDs

Android app controlling LEDs via Wi-Fi through the MR3220 + openUI setup.

openUI board close-up

Close-up of the openUI USB board.

openUI hardware specs

openUI board with LCD display

openUI board featuring LCD, IR receiver, RTC, and I2C connector.

  • AVR ATtiny2313 — acting as a USB HID device
  • LCD display — for status output
  • RC5 IR receiver — for remote control input
  • PCF8563 RTC — I2C real-time clock with battery backup
  • I2C connector — for extending with additional peripherals
  • ISP header — in-circuit programming for ATtiny2313

Find the schematic, PCB layout, and source code for the openUI hardware and software in this follow-up post.

6 comments:

Niraj Pandey said...

Nice solution...

Is it possible to put voice instructions in video presentation. This will help to understand it quickly.

home automation said...

Is kinda hard to understand with this kind of presentation. Better have a video tutorial.

superior papers said...

Nice article, nice video, nice pictures, i liked everything about the article and really appreciate the way you have presented me the information it is really helpful for me..

bot said...

If we should not hand a router with USB port .how can we use that for automation

bot said...

If we should not hand a router with USB port .how can we use that for automation

lovelanguagetest said...
This comment has been removed by the author.