Document Revision History .................................................................................................................... 9
Page 3
NXP i.MX 6 UltraLite Evaluation Kit Installation and Setup Guide
2
Version
Release Date
Changes
1.0
4/15/2016
Initial Release
Software Change Log
Introduct
The Edge MicroServer is a powerful component of the ThingWorx architecture. The Edge MicroServer
allows for the rapid deployment of connections between the ThingWorx platform and an associated
data reporting device, with minimal design requirements on the part of the user.
The Edge MicroServer provides an “always-on” connection to the platform, and it opens a local web
server that interacts with the REST API available on the platform.
This document provides installation and usage instructions for setting up the Edge MicroServer with the
NXP i.MX 6 UltraLite Evaluation Kit.
ion
About the NXP i.MX 6 UltraLite Evaluation Kit
The NXP i.MX 6 UltraLite Evaluation Kit [hereafter referred to as the NXP Device] is a development and
evaluation board manufactured by NXP Corporation. It allows for a rapid interchange of various NXP
accessories, including LCD screens, processor boards, and payment interfaces. It features a 528 MHz
ARM Cortex-A7 Core processor, 4GB DDR3L SDRAM @ 400MHz, 256 Mb Quad SPI Flash, a MicroSD
connector, as well as various peripheral input and outputs, including Bluetooth connectors, speaker,
HDMI, and Ethernet connectors, USB ports, CAN connectors, and more.
The ThingWorx Edge MicroServer Linux-ARM distribution may be installed on the NXP Device, and this
guide will follow the procedure for doing so. This guide will also follow the features involved with
initiating a connection between a remote Thingworx platform and the NXP Device.
Initial Setup
Setup of the NXP Device with an EMS will first require configuring and setting up the device according to
the instructions provided by NXP for this board. They may be found at
This device is required to be in a state where it is running off of the OS image installed on an SD card on
the device’s SD card slot. In addition, libstdc++ libraries are required by the ThingWorx EMS. More
information about the ThingWorx EMS may be found at
NXP i.MX 6 UltraLite Evaluation Kit Installation and Setup Guide
3
Please note that this guide was written for a computer running Microsoft Windows.
Refer to the Troubleshooting section of this guide for help with frequently asked questions.
Preparing the Device
1.
If it has not already been performed,
follow the NXPi.MX 6UltraLite Quick
Start Guide to connect all peripherals
to the device appropriately. Verify it
has a micro SD card properly
connected, and power it on.
2.
Make sure the device is connected to
a PC via a micro USB cord inserted
into the “J1901” micro USB port.
Verify that the device has an
Ethernet connection to a local
network with internet, as well.
that the proper Windows drivers are
installed to interface with this device.
This may be verified in Device
Manager, and the device should have
installed automatically as “Silicon
Labs CP210x USB to UART Bridge
or similar.
If the device does not install
automatically, you will need to
manually locate and install these
drivers.
”,
Page 5
NXP i.MX 6 UltraLite Evaluation Kit Installation and Setup Guide
4
4.
Note the COM port listed in this
connection. Open a terminal serial
connection program such as PuTTY,
and create a new connection to this
device on the serial port noted. Use
baud rate 115200.
5.
At this point, PuTTY should show a
console with details concerning the
device’s boot-up, or you may see a
prompt. Press “Enter” once.
Following this, type “root” and
press enter again. The screen should
be visible to the one at right:
6.
Enter the command:
ifconfig
To obtain the device’s IP address.
Page 6
NXP i.MX 6 UltraLite Evaluation Kit Installation and Setup Guide
5
Download and Install the Edge Microserver
1.
From the PTC Support Site, download
the ThingWorx EMS. Make sure you
download the proper version for your
device (and latest datecode):
“MicroServer-5-3-1-1113-Linux- ARM”.
2.
Use a program such as WinSCP to copy the EMS to the device under the following directory (create if it
does not exist):
/usr/include/microserver
Set permissions for the “wsems” and “luaScriptResource” to allow for execution (all permissions works)
using chmod:
chmod 777 wsems
chmod 777 luaScriptResource
Page 7
NXP i.MX 6 UltraLite Evaluation Kit Installation and Setup Guide
6
Configuration and Connection
Configuring and Setting up a Websocket Connection
1.
Open for editing, using either WinSCP
or the VI editor, the “config.json” file.
2.
Modify the configuration file to suit a connection to a remote ThingWorx Platform server. A valid AppKey is
required.
Note: It is highly recommended to connect to a server using only a secure (https) connection via SSL or TLS.
For additional guidance and examples on setting a configuration file, please refer to
http://support.ptc.com/cs/help/thingworx_hc/thingworx_6.0_hc/ and follow the guide section entitled
After verifying the connection information (see example below), save and close the file.
4.
Start the EMS using the following command:
./wsems
5.
Verify that the EMS starts, runs, and connects to the remote platform. Look for the message “Websocket
Connected!” to verify a connection was successful.
Page 8
NXP i.MX 6 UltraLite Evaluation Kit Installation and Setup Guide
7
Verifying Websocket Connection
1.
From any browser, navigate to the remote
ThingWorx platform server.
2.
Navigate to the “Monitoring > Remote Things” section, and then click the “Unbound” tab. The NXP device,
configured with the name given in the config.json file, should be visible here.
Page 9
NXP i.MX 6 UltraLite Evaluation Kit Installation and Setup Guide
8
Problem
Solution(s)
1. Device will not boot up / will not remain running.
1.
Verify that the proper power supply is connected (5V, 3.5A).
2.
Verify that the Ethernet port is connected to a router with an internet
connection.
3.
The SD card m ust be present on the device with an OS image. Verify
that the SD card is properly imaged and mounted in the device. For
Some devices have trouble holding the SD card firmly against the pins
in the reader on the board. Your device may require repair or
replacement. To confirm this issue, contact NXP; or to confirm this
issue, try applying gentle but firm pressure to the top of the SD card,
against the board, while it is in the reader. If the device boots while
pressure is applied, try to re-seat the SD card or contact NXP for further
assistance.
5.
The SD Card image may be corrupted. Attempt to re-flash.
6.
Verify the USB cable is connected to the proper micro-USB port on the
device (there are two). Refer to the NXP Quick Start Guide for guidance.
2.
The device will not connect to a remote server
or the EMS will not connect.
1.
Carefully check the config.json file for any typos, such as a missing
comma, quotation mark, or an inaccurate AppKey. Look at the EMS
console log while running to determine what the problem is.
2.
If you are connecting via SSL, verify that the server supports such a
connection, that the config.json file is set to use port 443, and a
certificate is provided. Refer to the “config.json.complete” file, included
on the EMS, for example configurations and explanations.
3.
Verify that no firewall or network configuration is preventing the device
from connecting to the server, or the server from accepting connections
from the device.
4.
Attempt to connect to a ThingWorx server on the local network to rule
out other network issues.
5.
Verify that the Standard C++ library is loaded onto the device (libstdc++)
3.
At this point, the device is connected. You may configure it to push properties to the server and bind them
as remote properties. For more information, follow the examples and guides at