Continuing my research into mesh networking, I was recommended to
-use TP-Link 3040 and 3600 access points as mesh nodes, and the pair I
-bought arrived on Friday. Here are my notes on how to set up the
-MR3040 as a mesh node using
-OpenWrt.
-
-
I started by following the instructions on the OpenWRT wiki for
-TL-MR3040,
-and downloaded
-the
-recommended firmware image
-(openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-factory.bin) and
-uploaded it into the original web interface. The flashing went fine,
-and the machine was available via telnet on the ethernet port. After
-logging in and setting the root password, ssh was available and I
-could start to set it up as a batman-adv mesh node.
-
-
I started off by reading the instructions from
-Wireless
-Africa, which had quite a lot of useful information, but
-eventually I followed the recipe from the Open Mesh wiki for
-using
-batman-adv on OpenWrt. A small snag was the fact that the
-opkg install kmod-batman-adv command did not work as it
-should. The batman-adv kernel module would fail to load because its
-dependency crc16 was not already loaded. I
-reported the bug to
-the openwrt project and hope it will be fixed soon. But the problem
-only seem to affect initial testing of batman-adv, as configuration
-seem to work when booting from scratch.
-
-
The setup is done using files in /etc/config/. I did not bridge
-the Ethernet and mesh interfaces this time, to be able to hook up the
-box on my local network and log into it for configuration updates.
-The following files were changed and look like this after modifying
-them:
-
-
/etc/config/network
-
-
-
-config interface 'loopback'
- option ifname 'lo'
- option proto 'static'
- option ipaddr '127.0.0.1'
- option netmask '255.0.0.0'
-
-config globals 'globals'
- option ula_prefix 'fdbf:4c12:3fed::/48'
-
-config interface 'lan'
- option ifname 'eth0'
- option type 'bridge'
- option proto 'dhcp'
- option ipaddr '192.168.1.1'
- option netmask '255.255.255.0'
- option hostname 'tl-mr3040'
- option ip6assign '60'
-
-config interface 'mesh'
- option ifname 'adhoc0'
- option mtu '1528'
- option proto 'batadv'
- option mesh 'bat0'
-
-
-
/etc/config/wireless
-
-
-config wifi-device 'radio0'
- option type 'mac80211'
- option channel '11'
- option hwmode '11ng'
- option path 'platform/ar933x_wmac'
- option htmode 'HT20'
- list ht_capab 'SHORT-GI-20'
- list ht_capab 'SHORT-GI-40'
- list ht_capab 'RX-STBC1'
- list ht_capab 'DSSS_CCK-40'
- option disabled '0'
-
-config wifi-iface 'wmesh'
- option device 'radio0'
- option ifname 'adhoc0'
- option network 'mesh'
- option encryption 'none'
- option mode 'adhoc'
- option bssid '02:BA:00:00:00:01'
- option ssid 'meshfx@hackeriet'
-
-
/etc/config/batman-adv
-
-
-config 'mesh' 'bat0'
- option interfaces 'adhoc0'
- option 'aggregated_ogms'
- option 'ap_isolation'
- option 'bonding'
- option 'fragmentation'
- option 'gw_bandwidth'
- option 'gw_mode'
- option 'gw_sel_class'
- option 'log_level'
- option 'orig_interval'
- option 'vis_mode'
- option 'bridge_loop_avoidance'
- option 'distributed_arp_table'
- option 'network_coding'
- option 'hop_penalty'
-
-# yet another batX instance
-# config 'mesh' 'bat5'
-# option 'interfaces' 'second_mesh'
-
-
-
The mesh node is now operational. I have yet to test its range,
-but I hope it is good. I have not yet tested the TP-Link 3600 box
-still wrapped up in plastic.
-