IMST iC880A Manuale utente

iC880A QuickStart Guide
How to get started with the iC880A
Document ID: 4100/40140/0078
Category: confidential
IMST GmbH
Carl-Friedrich-Gauss-Str. 2-4
D-47475 Kamp-Lintfort

iC880A QuickStart Guide - QuickStart Guide
Precaution: Important note confidential
iC880A_QuickStartGuide.docx, Wireless Solutions, V0.6 page 2 of 15
Document Information
File name
iC880A_QuickStartGuide.docx
Created
2015-03-15
Total pages
15
Revision History
Version
Description
0.1
Preliminary version.
0.2
Figure 2.1 updated
0.3
Added information about the polarity of the DC-Jack / Power supply connector
0.4
Picture of iC880A updated
0.5
Added version information about the referenced github repository; added hint about the WiMOD
LR Studio
0.6
Changed link URL to libmpsse
Aim of this Document
Aim of this document is to give some quick start instructions how to start working with the
WiMOD iC880A.
Confidentiality Note
This document has to be treated confidentially. Its content must not be published, duplicated or
passed to third parties without our express permission.

iC880A QuickStart Guide - QuickStart Guide
Precaution: Important note confidential
iC880A_QuickStartGuide.docx, Wireless Solutions, V0.6 page 3 of 15
Table of Contents
1PRECAUTION: IMPORTANT NOTE 4
2OVERVIEW 4
2.1 Hardware PCB 4
2.2 Basic System Concept 5
2.3 Linux Host System 6
2.4 Hardware Connection 6
3OPEN SOURCE DRIVER ON GITHUB 6
3.1 Download of the Open Source Driver 7
3.2 Downloading Additional Drivers 7
3.3 Configuration of the Driver 8
3.3.1 File: lora_gateway/libloragw/library.cfg 8
3.3.2 File: lora_gateway/libloragw/src/loragw_spi.ftdi.c 9
3.4 Compilation of the Library 9
3.5 Setting up “udev” Rules 9
3.6 Connection of iC880A and the Linux Host 10
3.7 Example Utilities 10
3.7.1 util_tx_test 10
3.7.2 util_pkt_logger 11
4NEXT STEPS 13
5REGULATORY COMPLIANCE INFORMATION 14
6IMPORTANT NOTICE 15
6.1 Disclaimer 15
6.2 Contact Information 15

iC880A QuickStart Guide - QuickStart Guide
Precaution: Important note confidential
iC880A_QuickStartGuide.docx, Wireless Solutions, V0.6 page 4 of 15
1Precaution: Important note
Caution: Before connecting the iC880A to an external power supply, please read this note
carefully!
The WiMOD iC880A concentrator is a versatile device that needs extra power to operate
properly. The USB specification allows a device to draw up to 500 mA in normal operation
conditions. Within the defined performance range the concentrator needs more than 500 mA.
Depending on your Linux host that is to be connected with the iC880A, the USB interface cannot
supply enough power. Therefore an external power supply is highly recommended.
When using an external power supply a certain order of connecting the cables must be followed:
1) First: power up the iC880A with an external power supply
2) Second: connect the USB cable between the iC880A and the host.
Make sure the external power supply is on and supplies 5 V before connecting the power cable.
If there is no power available and the connector is in the DC jack, the internal voltage regulators
of the iC880A may get damaged!
The polarity of the external DC-Jack is shown in Figure 1-1:
Figure 1-1 Polarity of the 5V DC-Jack
2Overview
Purpose of this documentation is to give some useful information how to start developing your
own software based on the open source LoRa HAL published on the github platform.
The concentrator module iC880A is meant to be connected to a host system forming an
integrated gateway.
2.1 Hardware PCB
Figure 2-1 depicts the printed circuit board of the iC880A. As main interfaces there are the DC
–Power Jack and the USB-Connector to a host system that runs the driver software. A SMA
connector is supplied in order to connect any suitable antenna to this board. The board offers
some LEDs to give a visual feedback of the current operation status of the board. The concrete
meaning of the LEDs is software dependant. As default setting the LEDs is:

iC880A QuickStart Guide - QuickStart Guide
Overview confidential
iC880A_QuickStartGuide.docx, Wireless Solutions, V0.6 page 5 of 15
1) Backhaul packet
2) TX packet
3) RX Sensor packet
4) RX FSK packet
5) RX buffer not empty
6) Power
Sx1301
Status LEDs
1
2
3
4
5
6
868MHz Antenna
Connector ufl
Optional GPS
Receiver
Sx1257, radio_0, radio_1
Power
Supply
USB Interface
Figure 2-1Picture of iC880A-USB
2.2 Basic System Concept
Figure 2-2 shows the basic system concept for the LoRA WAN system. The iC880A is the central
hardware solution for all LoRa based radio communication. It receives and transmits radio
messages. Processing of the radio messages as well as the protocol related tasks is done by
(external) host system(s). The concrete segmentation of the protocol related tasks is outside the
scope of this document.

iC880A QuickStart Guide - QuickStart Guide
Open Source Driver on Github confidential
iC880A_QuickStartGuide.docx, Wireless Solutions, V0.6 page 6 of 15
Figure 2-2: Basic System Concept
2.3 Linux Host System
As a host system an (embedded) Linux host system is planned to be used. This quick start guide
assumes that the user has got an (embedded) Linux host system (e.g. Raspberry PI, or similar), is
familiar with the basic concept of a Linux console and knows how to compile source code. All
commands shown in this document are tested with a Debian 8 “Jessie” Linux distribution on a
Raspberry PI B+. It is possible to use any other host system and Linux distribution, but there may
be some variations in the commands, that are not within the scope of this document.
The basic setup of the (embedded) Linux host system (keyboard layout, time zone, network
connectivity, accessibility, …) is outside of the scope of this document, too.
2.4 Hardware Connection
The iC880A provides a mini USB connector as main interface to the Linux host system. Before
connecting the iC880A and the host, please read this document carefully. In order to establish a
logical connection the host needs to have some drivers installed.
3Open Source Driver on Github
Semtech provides an open source driver for SX1301 based LoRa solutions. The complete
repository is hosted on the github platform ( https://github.com/ ).

iC880A QuickStart Guide - QuickStart Guide
Open Source Driver on Github confidential
iC880A_QuickStartGuide.docx, Wireless Solutions, V0.6 page 7 of 15
The main vanilla source repository for the LoRa related projects maintained by Semtech can be
found at:
https://github.com/Lora-net
There you will find an implementation for the HAL (Hardware Abstraction Layer) of SX1301based
designs. This implementation is called "lora_gateway" (https://github.com/Lora-
net/lora_gateway ). This document references to version 1.7 of the lora_gateway repository.
Newer versions of this software may behave differently or may require a different configuration.
Changes / updates within all relevant software repositories are subject to change without notice.
3.1 Download of the Open Source Driver
Install a git client on your (embedded) host system: On Debian based systems the git client can
be installed by calling the following command in a terminal emulator / console:
sudo apt-get install git
Create local folder that should contain the local copy of the repository:
mkdir -p ~/LoRa/lora_gateway
Get a copy of the repository:
cd ~/LoRa/lora_gateway
git clone https://github.com/Lora-net/lora_gateway.git
3.2 Downloading Additional Drivers
The iC880A device is connected to an (embedded) Linux host system via an USB link. In order to
establish a local USB link, a driver called “libmpsse” must be installed on the host system.
Create a folder for the libmpsse files:
mkdir –p ~/LoRa/libmpsse
Download the newest version of the libmpsse files:
cd ~/LoRa/libmpsse
wget https://storage.googleapis.com/google-code-archive-
downloads/v2/code.google.com/libmpsse/libmpsse-1.3.tar.gz
tar –xzvf libmpsse-1.3.tar.gz

iC880A QuickStart Guide - QuickStart Guide
Open Source Driver on Github confidential
iC880A_QuickStartGuide.docx, Wireless Solutions, V0.6 page 8 of 15
Follow the installation instructions from the hosted website:
https://code.google.com/p/libmpsse/wiki/Installation:
sudo apt-get install libftdi-dev
cd ~/LoRa/libmpsse/libmpsse-1.3/src
./configure --disable-python && make && sudo make install
sudo ldconfig
If the configure step fails, follow the instructions and try to install the missing dependencies.
3.3 Configuration of the Driver
The driver must be configured in order to work with the iC880A. The following chapter describes
the necessary configuration options to make.
In the folder “LoRa/github/lora_gateway/libloragw” there is a file called
“libraray.cfg”. This file contains the most important options for the HAL-library and must
be modified to your needs before compiling the software.
3.3.1 File: lora_gateway/libloragw/library.cfg
This file is used as general configuration file for the whole libloragw system library. In order
to fit the needs of the iC880A, some parameters must be set to the following values prior (re-)
compiling the library:
CFG_SPI= ftdi
CFG_CHIP= sx1301
CFG_RADIO= sx1257
CFG_BAND= eu868
The parameter called “CFG_BRD” must be left empty or set to:
CFG_BRD= ref_1301_868
Additionally there are some optional debug settings that can be turned on (1) or off (0):
DEBUG_AUX= 0
DEBUG_SPI= 0
DEBUG_REG= 0
DEBUG_HAL= 1
DEBUG_GPS= 0
These flags are used by the internal modules of the library to enable / disable additional output
for debugging purposes.

iC880A QuickStart Guide - QuickStart Guide
Open Source Driver on Github confidential
iC880A_QuickStartGuide.docx, Wireless Solutions, V0.6 page 9 of 15
3.3.2 File: lora_gateway/libloragw/src/loragw_spi.ftdi.c
As second step a small modification must be done in one of the low level connection files. The
WiMOD iC880A LoRa Concentrator board uses a FTDI USB to SPI converter chip that is not
supported in Semtech’s reference code. The only difference is another USB PID. Therefore the
USB PID settings in the libloragw library have to be adjusted prior compiling the library.
Open the file lora_gateway/libloragw/src/loragw_spi.ftdi.c with your favorite editor (e.g. nano)
nano lora_gateway/libloragw/src/loragw_spi.ftdi.c
Find the block with the “PRIVATE CONSTANTS” (around line 50 in the file) and change the
line
#define PID 0x6010
to
#define PID 0x6014
Afterwards save the file and close the editor.
3.4 Compilation of the Library
In order to compile the libloragw library it is assumed that a gcc/g++ compiler and a make
utility is already installed and runable.
Enter the lora_gateway folder and execute the make command:
cd lora_gateway
make
This will compile the library and some of the basic test utilities located in the subfolders of
lora_gateway.
After a successful compilation a library file called “libloragw.a”has been created and is
ready for usage now.
3.5 Setting up “udev”Rules
The FTDI USB chip needs to be run in the SPI mode. Therefore an “udev”rule must be installed
on the Linux host system. This rule will configure the right mode automatically when the iC880A
device is connected to the host system. In order to install the udev rule the following steps must
be done:

iC880A QuickStart Guide - QuickStart Guide
Open Source Driver on Github confidential
iC880A_QuickStartGuide.docx, Wireless Solutions, V0.6 page 10 of 15
In the folder lora_gateway/libloragw there is a template file present. Open the file in
your favorite editor (e.g. nano).
nano lora_gateway/libloragw/99-libftdi.rules
locate the line
SUBSYSTEM=="usb",ENV{DEVTYPE}=="usb_device",
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010",
MODE="0664", GROUP="plugdev"
and change the entry
ATTRS{idProduct}=="6010”
to:
ATTRS{idProduct}=="6014”
Save the file and leave the editor. Next copy the file to the folder /etc/udev/rules.d/
sudo cp 99-libftdi.rules /etc/udev/rules.d/
3.6 Connection of iC880A and the Linux Host
3.7 Example Utilities
In the folder lora_gateway there are several example utilities showing the usage of the
libloragw library. This quick start guide will show the “util_pkt_logger” and the
“util_tx_test”.
3.7.1 util_tx_test
This is a small utility demonstrating the ability to send out some data via the iC880A
concentrator device. To start this utility go into the folder and start it:
cd lora_gateway/util_tx_test
./util_tx_test
The program should start and print out some output like that:
Indice
Altri manuali IMST Unità di controllo
Manuali Unità di controllo popolari di altre marche

Festo
Festo Compact Performance CP-FB6-E Manuale elenco delle parti

Elo TouchSystems
Elo TouchSystems DMS-SA19P-EXTME Manuale utente

JS Automation
JS Automation MPC3034A Manuale utente

JAUDT
JAUDT SW GII 6406 Series Guida rapida

Spektrum
Spektrum Air Module System Manuale utente

BOC Edwards
BOC Edwards Q Series Manuale utente













