Synapse SNAP Connect E20 User manual

USERS GUIDE
SNAP Connect E20
User Manual for Version 1.0
©2015 Synapse, All Rights Reserved. All Synapse products are patent pending. Synapse, the
Synapse logo, SNAP, and Portal are all registered trademarks of Synapse Wireless, Inc.
Doc# 116-031520-002-A000
6723 Odyssey Drive // Huntsville, AL 35806 // (877) 982-7888 // Synapse-Wireless.com
Preliminary - Pre-Release Version

Disclaimers
Information contained in this Manual is provided in connection with Synapse products and services and is intended solely to assist its customers. Synapse
reserves the right to make changes at any time and without notice. Synapse assumes no liability whatsoever for the contents of this Manual or the
redistribution as permitted by the foregoing Limited License. The terms and conditions governing the sale or use of Synapse products is expressly
contained in the Synapse’s Terms and Condition for the sale of those respective products.
Synapse retains the right to make changes to any product specification at any time without notice or liability to prior users, contributors, or recipients of
redistributed versions of this Manual. Errata should be checked on any product referenced.
Synapse and the Synapse logo are registered trademarks of Synapse. All other trademarks are the property of their owners. For further information on any
Synapse product or service, contact us at:
Synapse Wireless, Inc.
6723 Odyssey Drive
Huntsville, Alabama 35806
256-852-7888
877-982-7888
256-924-7398 (fax)
www.synapse-wireless.com
License governing any code samples presented in this Manual
Redistribution of code and use in source and binary forms, with or without modification, are permitted provided that it retains the copyright notice,
operates only on SNAP® networks, and the paragraphs below in the documentation and/or other materials are provided with the distribution:
Copyright 2008-2015, Synapse Wireless Inc., All rights Reserved.
Neither the name of Synapse nor the names of contributors may be used to endorse or promote products derived from this software without specific prior
written permission.
This software is provided "AS IS," without a warranty of any kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED.
SYNAPSE AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
THIS SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SYNAPSE OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR
DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY,
ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE, EVEN IF SYNAPSE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Preliminary - Pre-Release Version

1. Overview
The SNAP Connect E20 combines a Synapse SM220 RF module and an embedded Linux-based computer to
provide connectivity (Ethernet, cellular, Wi-Fi, serial) and site compute/aggregation capabilities to a diverse
array of SNAP IoT networks across industrial temperature ranges.
E20
OS
Ubuntu 14.04 LTS
CPU
ARM Cortex-A9, 800MHz (Freescale iMX6-S)
Flash
4GB eMMC
RAM
512M DDR3L, 400MHz
Network
10/100 Ethernet, WiFi, SM220
USB host
1
USB client
1 micro – SiLabs CP2102
Environmental
Industrial (-40C to +85C)
Board Size
15.5cm x 9cm x 2cm
Power input
5V DC or 10-28V DC with power daughter board
I/O Expansion
Internal cell modem and power modules
Storage Expansion
uSD – internal
LEDs / Buttons
3x2 Tri-Color LEDs (six total, mirrored across board)
1 Power LED
3 Buttons
SNAP Connect E20 Users Guide 1
Preliminary - Pre-Release Version

2. Connectors
E20 Board Without Power Supply
E20 with Power Supply Connected
Power supply requirements:
Table 1: E20 Power
Min Typ Max Units
Without Power Supply Daughter Card
Input Voltage (DC) 4.75
5 5.25 V
Input Current TBD TBD TBD A
Power Dissipation TBD TBD TBD W
With Power Supply Daughter Card
Input Voltage (DC) 10 28 V
Input Current 0.13 0.28 1.5 A
Power Dissipation 1.56 3.84 15 W
USB Host Port
Supply Voltage 4.75 5 5.25
Supply Current 500 mA
2SNAP Connect E20 Users Guide
Preliminary - Pre-Release Version

3. Initial Setup
Serial console connection is available as follows:
•Download and install a terminal emulator such as PuTTY or TeraTerm in Windows; or Minicom or Screen
Cutecom in Linux.
•Connect to the Micro-USB serial port.
•Determine what COM port your OS has allocated to the E20 serial port.
oIn Windows, look under “Ports” in Device Manager.
Look for “Silicon Labs CP210x USB to UART Bridge.”
oTo connect to the E20 from a Linux PC, look for /dev/ttyUSB0 in the /dev/ directory:
•Settings: 115200, 8N1
oBaud rate: 115200
o8 bits
oNo parity
o1 stop bit
oNo flow control
To login to a factory default E20, use the following settings:
•Username: snap, Password:none. (There is no default password.)
•Root is disabled, but snap has full sudo privileges
•Root can be enabled by setting the password: sudo passwd root
NOTE: No account can connect via SSH without a password.
SNAP Connect E20 Users Guide 3
Preliminary - Pre-Release Version

4. SNAP 802.15.4 Connection
The E20 contains a Synapse SM220 module, accessible via /dev/snap0 and /dev/snap1.
•SNAP node controls the tri-color LED-D via GPIO_A4 (green) and GPIO_A5 (red)
•To download and install SnapConnect run the following from the E20 command line:
$ sudo apt-get install snapconnect
•SNAP helper utilities can be installed via:
$ sudo apt-get install e20-snap-utils
•The SNAP helper utilities provide the ability to erase a SNAPpy image, factory default NV params, and
upload a new firmware image to the snap node from the E20.
4SNAP Connect E20 Users Guide
Preliminary - Pre-Release Version

5. User Buttons and LEDs
The E20 has 3 user-programmable buttons, and 6 user-programmable tri-color LEDs.
GPIO 40: LED-A red
GPIO 41: LED-A green
GPIO 42: LED-B red
GPIO 43: LED-B green
GPIO 44: LED-C red
GPIO 45: LED-C green
GPIO 117: Button 1
GPIO 118: Button 2
GPIO 119: Button 3
For convenience, programs are pre-installed on the E20 to interact with these peripherals:
Controlling LEDs
•Provided by package e20-leds:
o/usr/local/bin/led-a
o/usr/local/bin/led-b
o/usr/local/bin/led-c
•Usage:
oled-a red
oled-a green
oled-a amber
oled-a off
Reading the buttons:
•Provided by package e20-buttons:
o/usr/local/bin/button-1
o/usr/local/bin/button-2
o/usr/local/bin/button-3
•Prints the button status (1 = up, 0 = pressed)
•Also returns this number as the exit code
oCan be retrieved via the shell environment variable $? immediately after execution.
SNAP Connect E20 Users Guide 5
Preliminary - Pre-Release Version

6. Software Packages
A factory default E20 contains the following packages:
•Based on Ubuntu 14.04
•Comes with several additional packages pre-installed:
ousbutils
oiptables
owireless-tools
opython-pip
opython-tornado
ou-boot-utils
ounifi-sdio (Bluegiga Wi-Fi drivers)
oppp
oSeveral E20 helper scripts:
e20-cell-helpers
•Telit cell modem example scripts
•Scripts to reset, disable and enable the cell modem
e20-leds, e20-buttons
•Simple LED and button control scripts
e20-snap-utils
•Utilities to help recover the functionality of the SM220
6SNAP Connect E20 Users Guide
Preliminary - Pre-Release Version

7. Controlling the Internal SNAP Engine
The E20 has the ability to wake and reset the SM220 using two dedicated GPIO pins:
•Wake Snap Node: GPIO 33 (tied to pin GPIO_F1 on the SM220)
•Reset Pin: GPIO 34
Additionally, the E20 comes with maintenance scripts to control the SM220 beyond interacting with the SNAPpy
script over the UART. These scripts allow you to perform recovery maintenance such as erasing an unresponsive
SNAPpy image, factory defaulting the NV params, and uploading new firmware.
The simplest way to obtain these scripts is to call apt-get install e20-snap-utils from the command line.
Waking the SM220
•First, GPIO_F1 must be set as a wakeup pin on the SM220
•To set GPIO_F1 as a wakeup pin on the SM220, use the wakeupOn function:
from synapse.pinWakeup import *
from synapse.platforms import *
# other code
# before putting node to sleep
wakeupOn(GPIO_F1, True, False)
•Then, when it is desired for the node to be woken up, toggle GPIO 34 briefly
•To do this, call the provided wake-snap-node script, which will perform this function for you
automatically.
oThis script is located at /usr/local/bin/wake-snap-node
Resetting the SM220
•There is no special setup required to reset the SNAP
•Simply call reset-snap-node which will briefly drag the reset GPIO low, forcing the SM220 to reset.
oThis script is located at /usr/local/bin/reset-snap-node
Restoring the functionality of an unresponsive SM220
•The E20 comes with the recovery utility which is capable of erasing the loaded SNAPpy image, factory
defaulting the NV params, and uploading a firmware image.
•This script is located at /usr/local/bin/flash-bridge
•Usage:
oflash-bridge -e (to erase the running SNAPpy image)
oflash-bridge -i imageName (to upload firmware image “imagename” to the SM220)
oflash-bridge -nv (to restore the default NV params)
SNAP Connect E20 Users Guide 7
Preliminary - Pre-Release Version

8. Controlling the E20 from the SM220
The SM220 has two pins dedicated to interfacing with the E20.
•GPIO_C4 – system reset. Active low. Triggers a hardware reset on the E20.
•GPIO_F2 – Interrupt / General Use – Tied to GPIO 32 on the E20
GPIO_F2 can be used to signal the E20 that some event of interest has occurred that might want to be
responded to even if a SnapConnect application is not running. Below is a trivial example of how to monitor for
this interrupt being raised:
if [[ ! -d /sys/class/gpio/gpio32/ ]] ; then
echo 32 > /sys/class/gpio/export
echo in > /sys/class/gpio/gpio32/direction
fi
while [[ `cat /sys/class/gpio/gpio32/value` != 0 ]] ; do
sleep 1
done
echo "Got interrupt!"
9. Factory Restore
Factory restore is accomplished using a USB flash drive.
•Unzip e20-VERS-installer.zip to the root level of your flash drive
•Plug into the USB-A port on the E20
•Power, establish serial connection
•Interrupt u-boot
•Execute the following command:
usb start; ext4load usb 0 0x12000000 uImage; ext4load usb 0
0x18000000 imx6s-e20.dtb; setenv bootargs
console=ttymxc0,115200 --no-log root=/dev/sda1 rootwait rw;
bootm 0x12000000 - 0x18000000
•When the lights turn green, installation is complete and it is safe to remove power to restart the
device.
8SNAP Connect E20 Users Guide
Preliminary - Pre-Release Version

10. Common Linux Operations
Use of the E20 assumes knowledge of the Linux OS. Ample documentation is available online to perform all
operations within the capability of the E20. The following are a few common operations:
Making Custom Software run Automatically at Startup
•Add scripts (such as a SnapConnect app) you want called at one of a few places:
o/etc/rc.local
o/etc/rc2.d/newprogramname
Resetting a Lost User Password
•Interrupt u-boot
setenv mmcargs 'setenv bootargs console=${console},${baudrate} --no-
log fec.macaddr=${macaddr} root=${mmcroot} rootdelay=2 rw single'
•Boot
Ensuring that the E20 stays connected
An unaddressed bug in Ubuntu 14.04 can affect E20 units with eth0 configured to come up automatically in
DHCP mode. If you had an IP address before, and the lease on your address has not passed, dhclient only tries to
renew it ONE time and then quits trying. (As opposed to if you didn’t have one, it keeps searching for a DHCP
server.)
If your E20 absolutely NEEDS to stay connected to the network, and it isn’t easy to get to via a serial line, running
the code below in the background should maintain the connection.
#!/bin/bash
while [[ true ]] ; do
OUTPUT=`ifconfig eth0 | grep 'inet addr:' | wc -w 2>/dev/null`
if [[ $OUTPUT == "0" ]] ; then
echo "resetting eth0!"
ifdown eth0 && ifup eth0 &
else echo "eth0 looks okay!"
fi
sleep 600
done
SNAP Connect E20 Users Guide 9
Preliminary - Pre-Release Version

11. Wifi
Typical steps in working with wifi:
•Edit /etc/network/interfaces:
#auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant.conf
wpa-driver wext
owlan0 does not come up by default
Uncomment “#auto wlan0” to bring up automatically
•Connecting to an access point:
oGenerate your passphrase key:
$ wpa_passphrase 'myssid' 'mypassword'
network={
ssid="myssid"
#psk="mypassword"
psk=2f0568b3492812bd56b946dbaf3fd7dd669b9a4602a09aa6462ff05
7949b025c
}
oPut the output of that into /etc/wpa_supplicant.conf
network={
ssid="myssid"
psk=2f0568b3492812bd56b946dbaf3fd7dd669b9a4602a09aa6462ff05
7949b025c
}
oYou may need additional options depending on your network setup.
oYou can now either run sudo ifup wlan0 to bring up the interface and connect to the
network, or reboot. Once auto wlan0 is present in your network interfaces file, wlan0 will be
brought up and attempt to connect to the network automatically on boot.
•Setting up Access-Point (AP) mode:
•apt-get install udhcpd
•Generate your passphrase:
$ wpa_passphrase 'myssid' 'mypassword'
network={
ssid="myssid"
#psk="mypassword"
psk=2f0568b3492812bd56b946dbaf3fd7dd669b9a4602a09aa6462ff
057949b025c
}
10 SNAP Connect E20 Users Guide
Preliminary - Pre-Release Version

•Set up /etc/udhcpd.conf
# The start and end of the IP lease block
start 192.168.0.20 #default: 192.168.0.20
end 192.168.0.254 #default: 192.168.0.254
# The interface that udhcpd will use
interface wlan0 #default:eth0
[rest cut off for brevity]
•Set up udhcpd to run by default:
# Comment the following line to enable
DHCPD_ENABLED="yes"
# Options to pass to busybox' udhcpd.
#
# -S Log to syslog
# -f run in foreground
DHCPD_OPTS="-S"
•Set up wlan0 with a static IP so it can act as a gateway
# interfaces(5) file used by ifup(8) and ifdown(8)
# Include files from /etc/network/interfaces.d:
allow-hotplug eth0
iface eth0 inet dhcp
auto wlan0
iface wlan0 inet static
address 192.168.0.1
netmask 255.255.255.0
•Set things up with iwpriv:
snap@localhost:~$ sudo iwpriv wlan0 AP_SET_CFG
ASCII_CMD=AP_CFG,SSID="myssid",SEC="wpa2-
psk",KEY=2f0568b3492812bd56b946dbaf3fd7dd669b9a4602a09aa6462ff057949b02
5c,CHANNEL=1,PREAMBLE=1,MAX_SCB=8,END
•Change parameters as needed.
•Start AP mode:
snap@localhost:~$ sudo iwpriv wlan0 AP_BSS_START
•To stop AP mode:
snap@localhost:~$ sudo iwpriv wlan0 AP_BSS_STOP
SNAP Connect E20 Users Guide 11
Preliminary - Pre-Release Version

12. Cell Modem
The E20 supports two models of the Telit cellular modem, the Telit DE910 and the Telit HE910-Dual. Presently,
only example dialing scripts for AT&T on the Telit DE910 are available, however examples for Verizon Wireless
and Rogers Wireless are forthcoming.
•Making a call using the Synapse provided PPP chat scripts:
pppd call telit-att &
pppd call telit-verizon &
pppd call telit-rogers &
These scripts are not guaranteed to work with your network and are provided for illustrative purposes only.
12 SNAP Connect E20 Users Guide
Preliminary - Pre-Release Version

13. Regulatory Information and Certifications
RF Exposure Statement
This equipment complies with FCC radiation exposure limits set forth for an uncontrolled environment. This
equipment should be installed and operated with minimum distance of 20cm between the radiator and your
body. This transmitter must not be co-located or operating in conjunction with any other antenna or
transmitter.
FCC Certifications and Regulatory Information (USA Only)
FCC Part 15 Class A
These devices comply with part 15 of the FCC rules. Operation is subject to the following two conditions: (1)
These devices may not cause harmful interference, and (2) These devices must accept any interference received,
including interference that may cause harmful operation.
Radio Frequency Interference (RFI) (FCC 15.105)
This equipment has been tested and found to comply with the limits for a Class A digital device, pursuant to Part
15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a
residential installation. This equipment generates, uses, and can radiate radio frequency energy and, if not
installed and used in accordance with the instructions, may cause harmful interference to radio
communications. However, there is no guarantee that interference will not occur in a particular installation.
If this equipment does cause harmful interference to radio or television reception, which can be determined by
turning the equipment off and on, the user is encouraged to try to correct the interference by one or more of
the following measures:
•Reorient or relocate the receiving antenna.
•Increase the separation between the equipment and receiver.
•Connect the equipment into an outlet on a circuit different from that to which the receiver is connected.
•Consult the dealer or an experienced radio/TV technician for help.
Labeling Requirements (FCC 15.19)
This device complies with Part 15 of FCC rules. Operation is subject to the following two conditions: (1) this
device may not cause harmful interference, and (2) this device must accept any interference received, including
interference that may cause undesired operation.
If the FCC ID for the module inside this product enclosure is not visible when installed inside another device,
then the outside of the device into which this product is installed must also display a label referring to the
enclosed module FCC ID.
SNAP Connect E20 Users Guide 13
Preliminary - Pre-Release Version

Modifications (FCC 15.21)
Changes or modifications to this equipment not expressly approved by Synapse Wireless, Inc. may void the
user's authority to operate this equipment.
Declaration of Conformity
(In accordance with FCC 96-208 and 95-19)
Manufacturer's Name: Synapse Wireless, Inc.
Headquarters: 6723 Odyssey Drive
Huntsville, Al 35806
Synapse Wireless, Inc. declares that the product:
Product Name: SNAP Connect E20
Model Number:
to which this declaration relates, meet the requirements specified by the Federal Communications Commission
as detailed in the following specifications:
•Part 15, Subpart B, for Class A equipment
•FCC 96-208 as it applies to Class A personal computers and peripherals
The products listed above have been tested at an External Test Laboratory certified per FCC rules and has been
found to meet the FCC, Part 15, Emission Limits. Documentation is on file and available from Synapse Wireless,
Inc.
Industry Canada (IC) Certification
This digital apparatus does not exceed the Class A limits for radio noise emissions from digital apparatus set out
in the Radio Interference Regulations of the Canadian Department of Communications.
Le present appareil numerique n'emet pas de bruits radioelectriques depassant les limites applicables aux
appareils numeriques de la class A prescrites dans le Règlement sur le brouillage radioelectrique edicte par le
ministère des Communications du Canada.
14 SNAP Connect E20 Users Guide
Preliminary - Pre-Release Version
Other manuals for SNAP Connect E20
2
Table of contents
Other Synapse Gateway manuals
Popular Gateway manuals by other brands

Cisco
Cisco Physical Access CIAC-GW-K9 Installing and configuring

SpeedStream
SpeedStream 6500 Series user guide

Balluff
Balluff Subnet16 BIS Z-GW-001-IND installation guide

Alcatel-Lucent
Alcatel-Lucent OmniAccess 8550 installation guide

ThingsMatrix
ThingsMatrix TMX03 user manual

IntesisBox
IntesisBox IBKNXMEB0100000 user manual

Dell
Dell Edge Gateway 3001 Getting started guide

Juniper
Juniper SRX-4600 Hardware guide

DEUTSCHMANN AUTOMATION
DEUTSCHMANN AUTOMATION UNIGATE MB EtherCAT instruction manual

Real Time Automation
Real Time Automation 460BMSAWS-NNA1 Product user guide

Robustel
Robustel M1000 Pro V2 user guide

ESD
ESD CAN-PN Hardware manual