E20 Software Specifics

The SNAPconnect E20 uses Canonical’s Ubuntu 18.04 as of v2.0.0, running a custom Linux kernel based on the i.MX6 kernel by Freescale. Older versions of the E20 OS are based on Ubuntu 14.04. There are many resources out there for learning about Ubuntu online, and the topic possibilities far exceed the scope of this manual; however, there are a few details that warrant discussion.

Passwords and root access

The default configuration for Ubuntu Linux is to have the root user disabled. This is a security precaution, as it means a hacker who comes across a connection to your device does not automatically know the login name of a user with full administrative rights to your device.

Instead, Ubuntu works with the sudo paradigm: when you need to perform a function that requires administrative access, you preface your command with sudo and are prompted for your password (as a reminder that what you are doing could potentially affect the device’s ability to function).

The default snap user on the E20 has sudo access, and can perform all device administrative tasks. You can create user accounts on the device and grant them sudo access as well. For added security, you can create sudo-enabled user accounts and then delete the snap user account to further reduce a potential hacker’s knowledge of how to access the gateway.

If you would rather work with the root account anyway, you can enable it by assigning a password:

sudo passwd root

Similarly, you can change the snap password with the same command:

sudo passwd snap


No account can connect via SSH without a password, though connecting over a serial terminal session is possible for accounts with no password.

E20 Software Packages

The SNAPconnect E20 comes with several support packages installed, and additional ones are available via apt and pip.

You can pull the latest aptupdates for your gateway by calling:

sudo apt-get update
sudo apt-get upgrade

You can upgrade SNAPconnect, SNAPtoolbelt, and the encryption libraries necessary for AES128 communications using these commands:

sudo -H pip install --extra-index-url https://update.synapse-wireless.com/pypi --upgrade snapconnect snaptoolbelt pycrypto