ubuntu wireless

Observations from an outlier

ubuntu wireless

plug_in_monitor_kbd_mouse-300x253-7761918

configuring ubuntu wireless

plug_in_monitor_kbd_mouse-300x253-7761918

there is nothing cool about a robot that needs wires plugged in — actually it vexes me to no end. running ubuntu in an embedded device can be a real pain when first setting up a new device. many robots are running linux on low cost itx boards these days and they all suffer from the same security hassle with initial network configuration. you just unboxed your robot and want to drive it, but.. how to take control? to do away with this headache we wrote a very simple wrapper for the linux network manager so developers could create other products than can run headless.

accesspoints-6353442

similar to the gopro and the raspberrypi, our device will default to being it’s own access point when needed (initial use or network failures). simply use your phone to scan for routers, choose yours and supply the password. now here is a graphical user interface written by me (pictured left). devoid of flair and almost depressing. colin retouched it to include a few capital letters but I’ll change that back when he’s not looking. ubuntu has an applet (mn-applet) and command line tool for setting up wireless connections but this functionality needed to be exposed via a web browser. it’s actually surprising that isn’t built into ubuntu already. this is the most basic java servlet that you’ll ever see, but there is a lot going on behind the scenes. with this server running you can now delete and create connections on your robot. the server will go back into access point mode if the network fails to respond to a ping.

we included instructions on how to have the stripped down jetty web-server start on boot with root access, but it is really just a few lines of script:

#! /bin/bash
export DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
cd $DIR
/usr/bin/java -jar start.jar 
exit 0

this project is maintained on bitbucket