|
|
# Introduction and Rationale
|
|
|
|
|
|
The TP-Link TL-MR3020 is a low-cost (approx. 27 EUR as of 2014-09-16) and energy-efficient (approx. 1 Watt) wireless access point that can be turned into a WiFi + 6LoWPAN router with a shiny web interface.
|
|
|
|
|
|
It is ideal to establish connectivity between your LAN and the Hexabus network. It is small and does not add significantly to your electricity bill.
|
|
|
|
|
|
Required hardware:
|
|
|
- a TP-Link TL-MR3020
|
|
|
- a Hexabus 6LoWPAN USB adapter
|
|
|
|
|
|
These notes assumes that you are an experienced Linux user ans thus you will get coarse directions instead of instructions at detail level.
|
|
|
To make it work, the vendor firmware needs to be replaced by a custom firmware, and configured accordingly.
|
|
|
|
|
|
These notes assume that you are an experienced Linux user and thus you will get coarse directions instead of instructions on detail level.
|
|
|
|
|
|
|
|
|
|
|
|
# Custom firmware
|
|
|
|
|
|
[OpenWRT](http://openwrt.org) is a Linux distribution for embedded devices. It is particularly useful to use as an open source replacement for closed source vendor firmware of network routers for SOHO use.
|
|
|
|
|
|
The installation of OpenWRT on the TP-Link TL-MR3020 is described on the [OpenWRT TP-Link TL-MR3020 website](http://wiki.openwrt.org/toh/tp-link/tl-mr3020). As a first step you can download the [OpenWRT BarrierBreaker Firmware](http://downloads.openwrt.org/barrier_breaker/14.07-rc3/ar71xx/generic/openwrt-ar71xx-generic-tl-mr3020-v1-squashfs-factory.bin) (14.07-rc3 at the time of writing), install it on the router and play around with it a bit.
|
|
|
The installation of OpenWRT on the TP-Link TL-MR3020 is described on the [OpenWRT TP-Link TL-MR3020 website](http://wiki.openwrt.org/toh/tp-link/tl-mr3020). As a first step you can download the [OpenWRT BarrierBreaker Firmware](http://downloads.openwrt.org/barrier_breaker/14.07-rc3/ar71xx/generic/openwrt-ar71xx-generic-tl-mr3020-v1-squashfs-factory.bin) (14.07-rc3 at the time of writing), install it on the router and play around with it a bit.
|
|
|
|
|
|
The drawback of the stock OpenWRT firmware is that it fills the flash memory of the router quite well and leaves no space to add all required additional packages for Hexabus. Due to the layout of the OpenWRT filesystems, removing packages from the stock firmware even reduces the free flash memory as opposed to naive expectation! We therefore need to build our own custom firmware images and include only the required minimum set of packages to run a IPv4/IPv6 LAN/WLAN router with LuCI web interface and the additional packages to make 6LoWPAN and Hexabus packet routing work.
|
|
|
|
|
|
In general, follow the generic [instructions for building OpenWRT](http://wiki.openwrt.org/doc/howto/obtain.firmware.generate) to build the firmware.
|
|
|
|
|
|
As newer versions of OpenWRT come available, you may want to adjust the procedures described herein accordingly.
|
|
|
|
|
|
Download the [image builder tar ball](http://downloads.openwrt.org/barrier_breaker/14.07-rc3/ar71xx/generic/OpenWrt-ImageBuilder-ar71xx_generic-for-linux-x86_64.tar.bz2) for [OpenWRT Barrier Breaker 14.07-rc3](http://downloads.openwrt.org/barrier_breaker/14.07-rc3/ar71xx/generic/) and unpack it.
|
|
|
|
|
|
Build the firmware with
|
|
|
|
|
|
`make image PROFILE=TLMR3020 PACKAGES="-ppp -ppp-mod-pppoe -odhcpd -odhcp6c -dnsmasq mrd6 radvd kmod-usb-net-cdc-ether kmod-usb2 kmod-usb-acm libdaemon radvdump luci luci-app-radvd ip"`
|
|
|
|
|
|
The drawback of the stock OpenWRT firmware is that it fills the flash memory of the router quite well and leaves no space to add all required additional packages for Hexabus. Due to the layout of the OpenWRT filesystems, removing packages from the stock firmware reduces the free flash memory! We therefore need to build our own custom firmware images and include only the required minimum set of packages to run a IPv4/IPv6 LAN/WLAN router with LuCI web interface and the additional packages to make 6LoWPAN and Hexabus packet routing work.
|
|
|
The sources of some of the required packages are not included in the tar ball. If you get error messages about opkg not finding packages, manually download the package sources from the [remote package source repository](http://downloads.openwrt.org/barrier_breaker/14.07-rc3/ar71xx/generic/packages) to your local _packages_ directory of the source tree and re-issue the make command.
|
|
|
|
|
|
You end up with the openwrt-ar71xx-generic-tl-mr3020-v1-squashfs-factory.bin custom firmware image in the bin/ar71xx subdirectory of the source tree. Use the generic instructions on the [OpenWRT TP-Link TL-MR3020 website](http://wiki.openwrt.org/toh/tp-link/tl-mr3020) to put that firmware image on your device.
|
|
|
|
|
|
Recipe for cooking a custom OpenWRT Barrier Breaker firmware: coming soon...
|
|
|
|
|
|
# Configuration
|
|
|
|
|
|
coming soon... |
|
|
\ No newline at end of file |