Thought my personal step by step directions to get this set up might be useful to others.
MultiConnect Conduit mLinux setup with Ethernet connectivity for The Things Network
These instructions are designed to enable a non-expert to set up the MultiTech MultiConnect Conduit mLinux LoRaWAN gateway and Multitech Mdot LoRaWAN node to forward packets to The Things Network (TTN).
The instructions are a collation of the MultiTech documentation as well as information from TTN forum and Wiki.
Step 1
Setting up the MultiConnect conduit mLinux requires a little understanding of Linux, basic networking, and using Terminal tools to access the Conduit. I downloaded and installed TeraTerm to SSH into the Conduit and WinSCP to copy over firmware updates. WinSCP is also useful to use as a general File Explorer for those of us who do not love the command line.
The first step is to install and connect the Lora radio hardware as described here. My Conduit model is a MTCDT-210L-US-EU-GB and does not include cellular connectivity.
As I was setting this up on a company network I needed to work with IT to get the Connect on the network with Ports 1700 opened for UDP traffic. For security reasons IT was not comfortable with putting me on the main network or even in the DMZ. Fortunately a separate network with a DSL modem was available on 192.168.1.xx for me to use.
Out-of-the box the Conduit comes configured to work on a 192.168.2.1 network with no DHCP so I followed the instructions in the MultiTech documentation to change the IP address to a fixed IP (In my case 192.168.1.49) with the gateway at 192.168.1.1 .
Note that the time zone in the documentation is for Chicago so you need to use your own time zone. In my case I ran:
ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime
Step 2
The next step is to check the currently installed versions of the LoRa Server and Packet Forwarder following the MuliTech instructions here. In my case I had old versions and needed to upgrade.
I downloaded the new packages from the downloads page to my PC used WinSCP to connect to the Conduit. Use the Conduit’s IP address as the Host Name (i.e. 192.168.1.49 in my case).
I copied the new packages to /var/packages (this was simply my choice and there may be a convention that I am not aware of.)
I then installed them by going to the /var/packages directory using TeraTerm and running them using:
$ opkg install lora-packet-forwarder_1.4.1-r8.16_arm926ejste.ipk
$ opkg install lora-network-server_0.0.8-r0.0_arm926ejste.ipk
As described in the Multitech documentation.
Step 3
Convert mLinux to a basic packet forwarder to The Things Network using the instructions on the MultiTech site and on The Things Network forum.
Note that the gateway configuration for TTN is as follows:
"gateway_conf" :
{
"forward_crc_disabled" : true,
"forward_crc_error" : false,
"forward_crc_valid" : true,
"gateway_ID" : "<GATEWAY_EUI>",
"keepalive_interval" : 12,
"push_timeout_ms" : 120,
"serv_port_down" : 1700,
"serv_port_up" : 1700,
"server_address" : "54.229.214.112",
"stat_interval" : 20,
"synch_word" : 52
}
Don’t forget to add your EUI from the MTAC-LORA accessory card. Note that I used a fixed IP rather than croft.thethings.girovito.nl since I did not set up the Conduit for DNS.
Step 4
Set up your mDot using manual join as described on the MultiTech site using the settings from TTN wiki.
Setting Up the mDot Using Manual Join
- Establish a serial connection to the mDot
- Connect your PC to the DB9 serial connector on the UDK – (I had to buy a USB to serial adapter from Amazon to do this. Odd that Multilink did not use on-board USB to serial to do this.)
- Open a terminal session using an application such as TeraTerm with baud rate 115,200
- Issue these commands:
AT+NJM=0 (manual join mode)
AT+PN=1 (public network mode)
AT&W=7 (915 NA only | value = frequencySubBand from your Conduit)
AT+NSK=2B7E151628AED2A6ABF7158809CF4F3C (TTN network session key)
AT+DSK=2B7E151628AED2A6ABF7158809CF4F3C (value = Data (application) session key for your application)
AT+NA=02013E00 (value = 4-byte device address – Boston currently has a 256 block at 02:01:3E:xx see http://thethingsnetwork.org/wiki/AddressSpace. You may need to add your own block if your group does not have one already.)
AT&W (save settings)
ATZ (restart)
- Send data without requesting an ACK:
o AT+ACK=0
o AT+SEND=Hello from Boston
Step 5
Check TTN rest API using your browser to see if your message came through by going to:
http://thethingsnetwork.org/api/v0/nodes/your_device_address/ and replace your_device_address with your own device address. If successful you should see data like this returned:
{
"node_eui": "02013E00",
"gateway_eui": "00000008004A02BD",
"data_plain": "Hello from Boston",
"_id": "564cd7127585d2ea79ada581",
"time": "2015-11-18T19:52:50.281Z",
"data_raw": "QAA+AQIABwABIpIHLG7lKVjXia0lOpRtIScfJXlQ",
"data": "SGVsbG8gZnJvbSBCb3N0b24="
},
You can also run tail -f /var/log/lora-pkt-fwd.log as described in the documentation and view the log using the Conduit terminal session.
A successful result should look something like this:
##### 2015-11-18 20:15:22 GMT #####
### [UPSTREAM] ###
# RF packets received by concentrator: 2
# CRC_OK: 100.00%, CRC_FAIL: 0.00%, NO_CRC: 0.00%
# RF packets forwarded: 2 (72 bytes)
# PUSH_DATA datagrams sent: 1 (498 bytes)
# PUSH_DATA acknowledged: 100.00%
### [DOWNSTREAM] ###
# PULL_DATA sent: 2 (0.00% acknowledged)
# PULL_RESP(onse) datagrams received: 0 (0 bytes)
# RF packets sent to concentrator: 0 (0 bytes)
# TX errors: 0
##### END #####
If you have trouble you can post questions on TTN forum here.