If you happen to have a Kerlink gateway that is configured for Actility, you would realise that it is completely locked down, and you can not reconfigure it for a different network. After some debugging and a lot of assitance from @kersing we were able to resurrect the “bricked” Kerlink of mine and get it back up on TTN.
You will need:
- a Kerlink Wirgrid debug tool, or another way of interfacing with the debug port on the Kerlink (DIY Kerlink Wirgrid debug probe).
- A flash drive with the latest Kerlink firmware image on it (https://www.thethingsnetwork.org/docs/gateways/kerlink/firmware-updates.html#system-firmware-v31)
Connect to the gateway using the debug interface. You should have a terminal open and see the log output and login prompt for the gateway.
Confirming that you can send commands to the gateway over the debug interface and receive responses back, like try to log in and see it fail because we do not know the root password. Now, while still looking at the terminal output press the reset button on the gateway. You should see the following output:
WirmaV2 kickstart svn1607 (Dec 3 2014 - 14:04:05) CPU 266MHz NAND: Micron On-Die ECC U-Boot 2009.03-2009.03-klk1 (Dec 27 2016 - 16:23:47) DRAM: 128 MB NAND: MICRON MT29F1G08ABBDAH4 NAND: On-Die ECC NAND: 128 MiB In: serial Out: serial Err: serial MAC: 02:4B:08:0E:xx:xx Product: WirmaV2 lora V4 WARNING: Machine type unknown, set default wirmaV2 Module Autoboot in 10 seconds, enter Password:
As soon as you see
Autoboot in 10 seconds, enter Password: start hitting the
k key on your keyboard. After about 8 times you will be dropped to the U-Boot command prompt.
Now as quickly as possible type
watchdog disable and hit enter. If you wait too long the gateway will reset and you will have to do the k-hitting thing again. You should see a message that the watchdog was successfully disabled.
Make sure the USB Flash drive with the firmware update on it is plugged in. Then execute the following commands in the U-Boot command prompt:
setenv produsb 1
After execting the reset command the gateway should restart. This time when Linux boots up it will show a message that it is in Produsb update mode. In this mode it looks for update files on the USB flash drive and installs them. Because we have a firmware update on the flash drive, the firmware upgrade will be installed, overriding all the Actility software.
After one more reboot the terminal will show a login prompt for the gateway. If the reflash of firmware was successful you should be able to log in using the default Kerlink login details for the v3 firmware:
Password: pdmk-08… (On v3.3 the letter after 08 should be lower case. Newer version need it to be upper case.)
If you are still unable to log in it means the Actility password change script was executed, and therefore not overridden during our firmware upgrade. Try following the same method to flash the recovery partition (https://www.thethingsnetwork.org/docs/gateways/kerlink/firmware-updates.html#recovery).
If you are able to log in successfully we can continue setting up the packet forwarder for TTN. At this point you can continue installing the TTN packet forwarder (https://www.thethingsnetwork.org/docs/gateways/kerlink/config.html) or you can install and use the default Kerlink packet forwarder.
To install the Kerlink Simple Packet Forwarder (SPF) you will need to follow the steps outlined on the Kerlink Wiki (http://wikikerlink.fr/lora-station/doku.php?id=wiki:lora_modem_management). In essence it boils down to installing the Semtech HAL using a Dota file, then installing the SPF. After these two are installed you will need to make sure the correct
global_conf.json file is used by checking where the symlink
/mnt/fsuser-1/spf/etc/global_conf.json points to. By default it points to
/mnt/fsuser-1/spf/etc/global_conf_EU868.json. Change the symlink to the correct frequency plan for your area. You might need to check the radio frequencies and channel IF values, but for the EU region the defaults are correct. All you need to do is edit the global_conf.json file and change the server address from
router.eu.thethings.network or the router for you region. Also make sure the up and down ports are 1700. After this restart the gateway and it should forward packets to TTN.