Getting started
This page shows the procedure for initiating the communication with the mesh expander under the openwrt distribution.
Basic Information
This procedure has been established using vanilla Ubuntu 16.04.2 LTS.
You need to make sure you have at least 50GB of free space on your hard drive before going further.
You need to make sure your computer is up to date by doing :
sudo apt update
sudo apt upgrade
Procedure
1st step : Cloning the repository and compiling
The first thing you need to do is set up a git account.
How to set up a GitHub account
- Fork the repository using the command :
git clone https://github.com/servalproject/openwrt
- Compile the project using
sudo make
This may take a while, you might want to leave your computer working overnight
- If you get an error like this one :
It means that there are some dependencies missing.
You need to install ncurses, zlib, openssl, awk, gcc, g++, subversion
sudo apt-get install libncurses5-dev libncursesw5-dev lib64z1-dev libssl-dev gawk gcc g++ subversion
Note : you may have different dependencies missing, make sure to install all of them
- Compile the project using
sudo make
This may take a while,you might want to leave your computer working overnight
2nd step : Creating a serial to USB cable and connecting the mesh extender to the computer
To connect the mesh extender to a computer we will need a serial cable and a USB serial adaptor and 3 jumper leads.
The pins we are interested in are : Pin 1 for the ground, Pin 5 for the Domino RX, and Pin 19 for the Domino TX.
- Cut the wire part of your serial cable and bare it.
- Find which wire correspond to the pins we are looking for with a multimeter.
- To do that plug a probe of the multimeter in a pin we want to have and test every wires they are at the other end. W
- When you see the multimeter displaying something, it means that you have the right cable.
- Mark this cable and do the same thing with the next pin
- Connect the jumper leads to wires identified earlier
- Check that the pins correspond to the wires and that the connection works using a multimeter.
- Connect the pin 1 to the GND pin of your USB serial adaptor, the pin 5 to the RXD and the pin 19 to the TXD.
Your cable should work now. You can try connect it on your computer and see if it is recognized :
lsusb
3rd step : Creating the TFTP server
- Create a tftp server using this page :
- Go to the openwrt/bin/ar71xx directory :
cd openwrt/bin/ar71xx
- Then copy the openwrt-ar71xx-generic-gl-ar150-initramfs-kernel.bin file into the main directory of your TFTP server and rename it to openwrt-domino.bin
cp openwrt-ar71xx-generic-gl-ar150-initramfs-kernel.bin [//your_server_directory///openwrt-domino.bin]
Your TFTP server is now ready.
4th step : Initiating communication with the mesh extender
- Connect the micro usb cable to the computer
- To launch the communication with the mesh extender
sudo cu -l /dev/ttyUSB0 -s 115200
- If the permission is denied
- Install minicom and launch it with
sudo minicom -s
- Then in the Serial port set up menu
- Serial port : ttyUSB0
- Hardware Flow Control : No
- Sofware Flow Control : No
- In the same menu :
- Save the changes as dfl
- Leave
- You should now be able to communicate with the mesh extender
- Launch minicom
sudo minicom -s
- And then power the mesh extender
Final step : Flashing the firmware
You should see the device booting.
- Connect the ethernet port of the mesh to your computer and set the IP to 192.168.1.2.
- This is now the tricky part, you have 2 seconds to type
gl
to interrupt the boot- If the boot interrupt doesn't work, it means that the USB port doesn't allow to pass character.
- To resolve that, make sure that the the minicom set up is correctly done, especially that Hardware flow Control is disabled
- Type the command
run lf
The firmware is now flashing
- Type the command
boot
You have now successfully flashed the firmware.