Embedded design these days is all about choosing a platform to meet your requirements.
Does the hardware provide the right performance without breaking the power budget?
Do the communications interfaces and analogue peripherals meet your needs for connecting displays and sensors.
With every semiconductor supplier offering microcontroller or system-on-chip devices with ready-to-run software in application-specific reference designs, the selection process must involve matching both your hardware and software requirements.
Renesas Electronics has taken the approach of offering ARM Cortex-M4 microcontrollers with software which is pre-qualified for the development of embedded applications.
This it calls its Synergy development platform, which won the 2015 Elektra Internet of Things Product Innovation Award.
The software combines a real-time operating system with drivers, libraries, software stacks, and application framework.
All software is supported by Renesas.
The first Synergy MCUs, the S7G2, is a 240MHz Cortex-M4 CPU core with 4Mbyte flash.
It is designed to be pin- and peripheral-compatible, so software developed for one MCU group can be used with the other.
Renesas has added an interesting twist to its Cortex-M4 devices. It has put together a package of qualified software which it says means that product development can start at the API level.
Suppliers are continually increasing the performance specification of their embedded platforms with new ARM cores. So it is worth keeping up to date on developments – nothing remains fixed for very long.
STMicroelectronics has upped the performance specification of its STM32 microcontrollers with a range of ARM Cortex-M7 based devices.
The MCU’s 216MHz Cortex-M7 core brings with it double-precision floating-point unit and DSP instructions. Integrated alongside the core are up to 2Mbyte of dual-bank flash, a graphics accelerator, a hardware JPEG accelerator, TFT-LCD controller, and MIPI-DSI host controller.
Audio features include an I²S interface, Serial Audio Interface, audio PLLs, and digital filter for sigma-delta modulators for connecting a digital microphone or external Sigma-Delta ADC.
The STM32F767/769 feature 512kbyte of integrated RAM, as well as 16kbyte data and instruction caches.
There is also the option for a crypto/hash engine (with STM32F777/779 devices) for security-conscious applications.
The STM32F767/769 microcontrollers are sampling now and will enter mass production in May.
An evaluation board for Atmel’s SAME70-XPLD microcontroller evaluation platform from Farnell element14 takes the pick-and-mix approach with a range of extension boards which are integrated with Atmel Studio, Atmel Software Framework (ASF) drivers and demo code.
The evaluation board also supports Arduino shields for further expansion.
The use of the SAME70 ARM Cortex-M7 MCU brings with it larger memory integration and integrated floating point DSP, running at up to 300MHz.
Each extension board has standardised connectors and headers, and includes an ID chip for authenticating the connection with the host MCU board. This information is then used to present associated user guides, application notes, data sheets, and example code through Atmel Studio.
The kit is supported by the Atmel Xplained ecosystem, which includes MCU evaluation boards, extension boards integrated with Atmel Studio, Atmel Software Framework (ASF) drivers and demo code, data streaming support, and other features facilitating full evaluation of the microcontroller.
Also form Atmel, there is a SmartConnect WILC1000 an extension board containing an IoT module. This includes different certified wireless interface modules supporting IEEE 802.11 b/g/n and can be used to add a Wi-Fi interface to existing MCU designs through the UART or SPI/SDIO-to-Wi-Fi interface.
The WILC1000 connects to any Atmel AVR or SMART MCU with minimal resource requirements.
The SAME70-Xplained evaluation kit costs £24.47and the WILC1000 IoT board costs £36.
Another established platform which has received a hardware update is Cypress Semiconductor’s PSoC 4 programmable system-on-chip device which now integrates an ARM Cortex-M0 processor core with up to 256kbyte flash memory and 98 general purpose I/Os.
Designated the PSoC 4 L-series, it includes 13 programmable analogue blocks including four op amps, four current-output digital-to-analogue converters, two comparators, a 12-bit SAR ADC and dual CapSense blocks with up to 94 capacitive-sensing channels.
On the digital side there are 20 programmable digital blocks including eight timer/counter/PWM blocks, four serial communication blocks and eight universal digital blocks (UDBs) – programmable digital blocks that each contain two programmable logic devices, a programmable data path and status and control registers.
UDBs can be configured as co-processors to offload compute-intensive tasks from the ARM Cortex-M0 core. The blocks also enable engineers to implement custom digital peripherals, state machines or glue logic.
Application-specific design modules are worth considering because sometimes these can offer optimised performance and simpler integration.
Microchip has won the race to get a transceiver module through the LoRa Alliance’s certification programme after Espotel’s test lab cleared its RN2483 module to the LoRaWAN 1.0 specification for operation in the European 868MHz licence-free band.
LoRa is one of the wireless protocols competing for IoT applications like smart metering. It has security and offers metropolitan area coverage for low data rate signals.
“This Certification Program will provide assurance to end-customers that their application-specific end devices will operate on any LoRaWAN network, which is a crucial requirement for the global deployment of the IoT using LPWANs,” said Steve Caldwell, vice-president for wireless at Microchip, and chairman of the LoRa Alliance Strategic Committee.
Typically a star-of-stars network, the LoRa physical layer and protocol aims to provide wireless machine-to-machine communication from millions of end-nodes to LoRaWAN gateways over up to 10 miles range with a battery life of up to 10 years at the node. Gateways are transparent to data, linking end nodes to a central server.
Wireless links are spread-spectrum and different data rates, 300bit/s to 50kbit/s, are available to trade message duration against range and battery life. The network server manages data rate and RF output for each separate end device.
Encryption is multi-layered: a unique network key (EUI64) for the network level; unique application key (EUI64) for application end to end security; and a device specific key (EUI128) according to the LoRa Alliance.
Microchip’s 18x27x3mm module connects to a host processor through a UART serial bus, which also handles ACSII commands for configuration and control. It has both 433MHz and 868MHz capability, through separate antennas: 14 GPIOs are provided for sensors, actuators and indicators.
“RN2483 comes with the LoRaWAN protocol stack, so it can easily connect with LoRa Alliance infrastructure, including privately managed local area networks and telecom-operated public networks,” said Microchip.
Supply range is 2.1V-3.6V and power consumption at 3V is: 2.8mA on idle, 14mA receiving, and 1.8µA in deep sleep.
In another example of an application specific design, Swiss supplier U-Blox has added Galileo satellite navigation reception to its M8 series of GPS modules.
Galileo reception comes as part of the FW 3.01 software update and allows any M8 product to track: Galileo, GPS, GLONASS, BeiDou, QZSS and SBAS.
The M8 supports Galileo eCall, the European emergency call system, which will be required in new vehicles from 2018, and U-Blox M8 is also compliant with eCall’s Russian equivalent: ERA-GLONASS.
Security mechanisms are embedded in FW 3.01.
“An anti-spoofing feature detects fake GNSS signals, and a message integrity protection system prevents man-in-the-middle attacks,” said U-Blox. “Another security function detects and suppresses jamming.”
Automotive-grade u-blox M8 products are AEC-Q100 Grade 2 qualified and operate over -40°C to +105°C – wide enough for use in car roof-top antennas where temperatures can reach 105°C.
Swissbit’s latest embedded USB module (eUSB flash module) has been designed with data retention, power fail safety, health monitoring and endurance in mind.
Based on SLC flash, the U-400 modules are temperature compensated. The firmware uses a read-retry methodology to compensate for temperature and to support stable operation even at industrial temperature levels and after long periods of operation.
Two other data care management features (ECC monitoring and background auto read refresh) are designed to extend data reliability and retention time.
These performance-neutral features detect weak cell levels, either upon read operations or as an autonomous background process, and restore the information to its full charge by reallocating the critical data areas.
Finally, error correction code is up to 96 bit.
The embedded USB module operates at USB 2.0 standard for maximum compatibility and offers sequential read and write data rates of up to 33Mbyte/s.
U-400 eUSB modules with capacities from 1 to 16Gbyte are available.