This prototype is heavily based on the previous TPLINK 703N prototype, but avoids the need for a USB to serial adapter and USB hub.
Do not use the MR3020 for further prototypes. Instead use a GL-AR150, and see the Mesh Extender 2 prototyping page.
Thanks to Musti, we now have a 3D printable case for the Mesh Extender:
Here are the STL files for printing your own Mesh Extender case:
Images and related details for these cases:
NOTE: This pinout is wrong. There is no 5V on that header. You need to source it from elsewhere, and there is no really good place. This is one reason we stopped using the MR3020 for prototyping. If you feed the RFD900 with 3.3v it will seem to work, but your range will be only 1/20th of what it should be.
NOTE: This pinout is wrong. There is no 5V on that header. You need to source it from elsewhere, and there is no really good place. This is one reason we stopped using the MR3020 for prototyping. If you feed the RFD900 with 3.3v it will seem to work, but your range will be only 1/20th of what it should be.
Perform the following steps on a Linux box, but first …
Because of the inherent risk of human error when instructing the scripts to format and repartition memory sticks, we recommend that you use an old laptop or similar, and dedicate it to this process, so that you do not endanger your data.
Depending on your Linux distribution, something like the following should suffice:
$ sudo yum install csh expect git
Alternatively you may need to use
$ sudo apt-get install csh expect git
$ git clone --quiet https://github.com/servalproject/mesh-extender-builder.git
$ cd mesh-extender-builder $ ./make_image
$ ./gather-image-files
$ umount /dev/deviceid $ ./partition-memory-stick.sh deviceid
$ ./populate-memory-stick deviceid
$ ./flash-virgin-mr3020
You may need to specify the IP address on the command line if the script doesn't auto-detect the IP address. The most likely address is 192.168.0.254
$ ./reflash-mesh-extender
You may need to specify the IP address on the command line if the script doesn't auto-detect the IP address. The most likely address is 192.168.1.1 or 192.168.2.1, e.g.:
$ ./reflash-mesh-extender 192.168.2.1
The MR3020 should reboot as a fully functional Mesh Extender.
First thing to make sure of is that the noroot file has been deleted on the USB stick. Once this has been done use
$ ssh root@192.168.2.1
If this works you should be greeted by a splash screen showing serval version and some other details.\
From this you can check if the serval node is functioning properly by using
root@192.168.2.1 $ servald status
this will return either a few lines saying the status and should contain a line saying whether it is running or it will return a message saying servald is not found. If the latter is what is displayed delete noroot and reboot the mesh node with
$ rm /dos/noroot $ reboot
The serval node should reboot and work once it has rebooted.
This is useful as it allows you to identify specific nodes if a few different ones are within range of each other rather than using sid or the phone number.
servald keyring set did `servald id self | tail -1` "Phone number" "Name"
This line allows the user to set the phone number and the name of the device for easy identification.
WARNING! THIS CAN ALLOW ANYONE ROOT ACCESS IF NECESSARY PRECAUTIONS AREN'T TAKEN WHICH MIGHT INCLUDE CHANGING THE ROOT PASSWORD.
ssh into the node using the above method. Once you have access use the following to navigate to the folder which contains the script that produces the noroot file.Then open the script in Vi
$ cd /etc/init.d $vi dropbear
Find the two lines in this script that are as follows
passwd -l root # lock [ -e /dos/noroot ] && return 1
and comment them out by adding a # to the front as follows
# passwd -l root # lock # [ -e /dos/noroot ] && return 1
Once this has been done you will have root access at all times without having to delete noroot However it is a good idea to change the root password after doing this to discourage unauthorized access. this is achieved by using
$ passwd
Remember if you wish to ssh to the Mesh Extender to power it down, remove the USB memory stick and insert it into any computer, and delete the NOROOT file from the FAT file system partition, and reinsert it into the Mesh Extender. ssh as root with password root will now be available until next reboot.
This means that the openwrt currently on the router cannot find the sysupgrade file
$ scp openwrt-ar71xx-generic-tl-mr3020-v1-squashfs-sysupgrade.bin root@192.168.1.1:/tmp </code - ssh into the router then use the following command to flash the sysupgrade image <code> # sysupgrade -v /tmp/openwrt-ar71xx-generic-tl-mr3020-v1-squashfs- sysupgrade.bin
There can be a few diffferent causes for this issue.
This occurs when a root password hasn't been set on the device
$ telnet 192.168.1.1 # passwd
$ telnet 192.168.1.1
# mount_root
# passwd
# firstboot
# reboot -f
After this you will need to change your network settings back to dhcp to connect to the router through telnet/ssh
$ cd ~/src $ git clone --quiet https://github.com/servalproject/mesh-extender.git $ cd mesh-extender $ ls -a . .. .git mr3020 $
$ cd mr3020 $ ./0.install-openwrt ... $
$ ./1.upgrade_openwrt 192.168.1.1 ... $
$ ./2.install_mesh_extender 192.168.1.1 ... $
You should now have a working Mesh Extender.
We intend to refine and simplify this process further to make it easier for you to build your own mesh extenders. Of course you will need a pair to use them productively.