October 7, 2015 13:30
SmartEverything lives up to its name
A highly integrated development platform for Internet of Things (IoT) applications with long range wireless
The new SmartEverything from Arrow Electronics packs a ton of features into an Arduino compatible board: plenty of sensors, support for both NFC and Bluetooth Low Energy (BLE), crypto and, notably, SIGFOX — the low power, yet long range, licence exempt wireless network.
32-bit ARM Cortex-M0+
Block diagram. Source: SmartEverything FOX User Guide.
The board integrates a great deal of functionality and achieves this using an Atmel SAM D21 microcontroller, with an ARM Cortex-M0+ that can be clocked at up to 48MHz while consuming <70µA/MHz, giving an excellent balance of power consumption and processing power. It also provides a rich set of peripherals, such as I2C clocked up to 3.4MHz and USB 2.0, plus multiple 12-bit ADC and 10-bit DAC channels, along with a DMA controller, 32KB SRAM and 256KB flash.
Arduino support comes courtesy of Arduino Core for SAMD21 CPU, an optional component originally used with Arduino Zero, that can be installed with minimal effort from within the IDE.
Sense and connect
The SmartEverything board features the following peripheral devices:
Crypto authentication chip (ATMEL ATSHA204A)
Sigfox module (Telit LE51-868 S)
GPS module with embedded antenna (Telit Jupiter SE868-A)
Proximity sensor (ST VL6180X)
Humidity and temperature sensor (ST HTS221)
Axis sensors (ST LSM9DS1)
Pressure Sensor (ST LPS25H)
In addition to this, interfaces for NFC and Bluetooth Low Energy modules are provided, with both of these supplied pre-installed with the kit that is available from RS Components.
NFC antenna and interface (NXP NT3H1101FHK)
Bluetooth Low Energy (TDK SESUB-PAN-T2541)
This means that out-of-the-box it is possible to measure:
Temperature from -40C to 120C
Humidity from 0 to 100% rH
Pressure from 260 to 1260 hPa absolute
Linear acceleration, magnetic field and angular rate
With the ability to also connect to NFC and Bluetooth enabled devices, such as smartphones and tablet computers. A small SMA antenna is included in the kit for 868MHz wireless and use with the SIGFOX network where this is available, which enables long distance communications with remarkably low transmit power levels, thanks to the magic of ultra narrow band technology.
The ATSHA204A crypto authentication chip provides an EEPROM that can be used for key storage, miscellaneous read/write data, read-only, consumption logging, and security configuration. It also includes a high quality random number generator (RNG), supports a standard SHA-256 challenge-response protocol, and each device features a unique 9-byte (72-bit) serial number
Should the above capabilities not be sufficient for a particular application, hardware expansion is facilitated via a set of headers that are stated as being compatible with most shields designed for the Arduino Uno, Diecimila or Duemilanove.
Power supply flexibility
Power supply block diagram. Source: SmartEverything FOX User Guide.
The board includes DC-DC converters for both stepping up and down, enabling use with a battery supply in the 1.4V to 3.2V range, or an external power supply of between 5V and 45V. Alternatively it can simply be powered from a 5V supply via a Micro USB connector. A level of flexibility that will be welcome in many wireless sensor node and industrial applications, where the ability to be powered from AA cells or similar, plus existing equipment power supplies, is a real benefit.
Getting up and running with the IDE
After having downloaded the latest version of the Arduino IDE — v1.6.5-r5 at the time of writing — and started this, it was necessary to select Tools → Board → Board Manager, and from there to search for, select and install support for Arduino SAMD Boards (32-bit Cortex-M0+).
With support for the SAMD MCU installed, support could then be installed for AMEL-Tech boards.
Once this had been done, “Smart Everything FOX” could be selected from the board menu, along with /dev/ttyACM0 for the serial port (this may be different on other host operating systems). Following which the fadeRGB example was loaded via File → Examples – SmartEverything Basic.
The example compiled, uploaded and executed without any issues.
In addition to the built-in basic support library for the SmartEverything board, there are libraries available for:
ST HTS221 humidity sensor
ST LPS25H pressure sensor
ST LSM9DS1 3D accelerometer, 3D gyroscope, 3D magnetometer
NXP NT3H1101 I2C module
Telit SE868-AS GPS system
Telit LE51-868 Sigfox module
ST VL6180X Proximity & Ambient Light Library
These can all be installed by selecting Sketch → Include Library → Manage Libraries and then searching for SmartEverything, followed by select and install. The source repositories for each, along with core board support, can also be found on the Amel Technology Github.
The libraries come supplied with examples and the GPS one, a very easy to understand sketch that provides debug output to the serial monitor, can be seen running below.
The SmartEverything is a fantastic little board that integrates many of the capabilities that are often required in IoT projects. The software support is excellent also and this being provided from within the stock Arduino IDE meaning that you don't have to go searching for and manually install board support packages and libraries. While the inclusion of a SIGFOX radio should be of particular interest to those with a need to rapidly prototype wireless solutions for areas where there is network coverage and the need for large scale deployment, low energy consumption or both.
Open source (hardware and software!) advocate, Treasurer and Director of the Free and Open Source Silicon Foundation, organiser of Wuthering Bytes technology festival and founder of the Open Source Hardware User Group.