TFTP server on OS X

For flashing, recovering or unbricking embedded devices often a TFTP server is needed for serving the firmware image. On OS X such a server is already built in. To use it, simply put the firmware in /private/tftpboot and then start the tftp daemon with:

Once you are done you can stop the daemon with:

Neato Botvac 80 Wifi Mod

As the [easyazon_link asin=“B00IZD9Z46″ locale=“DE“ new_window=“yes“ nofollow=“yes“ tag=“tait03-21″]Neato BotVac 85[/easyazon_link], unlike its luxury sibling [easyazon_link asin=“B00NLG7206″ locale=“DE“ new_window=“yes“ nofollow=“yes“ tag=“tait03-21″]Vorwerk Kobold VR200[/easyazon_link], does not have a Wifi interface, I was looking for a solution to retrofit it. Here is some instructions on how to do it.

After doing some research, I found a similar mod for the older Neato XV Series. So I ordered a Hame MPR-A5 which is basically the same as the Hame MPR-A1 without the battery. Two months later it finally arrived.

To integrate this little router in your home network as a client, lets install OpenWrt on it. First make sure you have gotten my device or an equivalent clone:

Connect to your router by ethernet with the credentials on the back of the device and flash the following image from the webinterface.

Login to your router via

type passwd and choose a secure password. The router should now be available via

Now lets tackle the network config:

and adjust like this

config wifi-device ‚radio0‘
option type ‚mac80211′
option hwmode ’11g‘
option path ‚10180000.wmac‘
option htmode ‚HT20‘
option disabled ‚0‘
option country ‚DE‘
option txpower ’20‘
option wmm ‚1‘
option channel ‚9‘

config wifi-iface
option device ‚radio0‘
option network ‚wwan‘
option mode ’sta‘
option encryption ‚psk2‘
option ssid ‚Network‘
option key ‚wpakey‘

and adjust like this:

config interface ‚loopback‘
option ifname ‚lo‘
option proto ’static‘
option ipaddr ‚‘
option netmask ‚‘

config interface ‚lan0‘
option ifname ‚eth0.1‘
option proto ‚dhcp‘
option gateway ‚‘
option dns ‚‘

config ‚interface‘ ‚wwan‘
option ‚proto‘ ‚dhcp’</code>

Also change the name server to a name server of your choice

After rebooting, continue by installing some missing packages:

Now plugin your neato with a good [easyazon_link asin=“B00607N7WA“ locale=“DE“ new_window=“yes“ nofollow=“yes“ tag=“tait03-21″]USB A to Micro USB cable[/easyazon_link] (2 of my usual ones did not work) and

Now lets make the serial port available via telnet with ser2net. Edit the configuration file for ser2net

It only needs to contain this line:


This line says to listen for incoming telnet connections on port 3000, and connect them
to /dev/ttyACM0 at 115200 baud.

As ser2net doesn’t start automatically, add ser2net &
to /etc/rc.local before the exit 0. Reboot and you should now be able to connect the Neato Botvac 80 via telnet

and control it using the commands from the Neato API.