The tools to realise Your Application, Inspiration, Innovation … Your Solution
Shimmer Firmware – Programming Wireless Sensor Networks
At Shimmer we provide a range of stock firmware solutions for use on the Shimmer platform. Users are also free to develop their own firmware solution should they wish to craft custom firmware for their end use or application. Shimmer firmware solutions have been developed to ensure Shimmer users benefit from some of the most efficient and effective wireless sensing solution available, availing of low power communications and a flexible, highly configurable framework.
Stock Firmware Solutions for Shimmer
LogAndStream, BtStream and SDLog are complete firmware solutions provided by Shimmer to support Shimmer Instrument Drivers and Consensys software. They are intended to help new users to become familiar with the Shimmer platform and to be a starting point for users who are developing their own custom firmware solutions.
LogAndStream firmware is a complete data recording solution which merges features from our previous Shimmer3 firmware releases.
The LogAndStream firmware facilitates logging of data from a Shimmer3 to the on-board SD card while also providing the ability to simultaneously stream data wireless connection to a Bluetooth-enabled PC.
The firmware allows for full user configuration of the Shimmer3 using a configuration file stored on the SD card, or over Bluetooth using the provided Consensys software application and is also fully compatible with the Shimmer Instrument Drivers.
BtStream is a general purpose, fully configurable application to be used with the Shimmer platform. As the name suggests, a Shimmer unit programmed with BtStream firmware will stream data via a Bluetooth connection to a PC, mobile or other Bluetooth-enabled device.
BtStream firmware is fully compatible with the Shimmer Instrument Drivers and Multi-Shimmer Sync software applications.
SD Log Firmware is a firmware image which allows logging of data from a Shimmer to the on-board SD card. The firmware allows full user configuration of the Shimmer via a configuration file, stored on the SD card. Many useful features, such as time synchronisation among multiple Shimmer units, start/stop logging on one or more devices by a single button press, and user-defined naming of devices, are enabled by this firmware image.
SD Log Firmware is fully compatible with ShimmerLog and Multi-Shimmer Sync for SD software applications.
Quick Start Environment
The Shimmer3 BSL (Bootstrap Loader) application allows for the Shimmer unit to be programmed with the appropriate firmware solution when docked in the Shimmer Dock.
The Shimmer3 Bootstrap Loader application (Shimmer3BSL.exe) is used in Windows to program the Shimmer with pre-compiled firmware images.
Programming Language and Custom Firmware Development
The programming language for the Shimmer3 is C. It is recommended that design, implementation, testing and validation of Shimmer embedded software (firmware) be done in Code Composer Studio™ from Texas Instruments. Alternatively, any compiler that supports the MSP430F5437A can be used (e.g. IAR embedded workbench, Rowley Crossworks, MSP430GCC).
Texas Instruments provide training material helping new users to get up-to-speed with Code Composer Studio on their Wiki: http://processors.wiki.ti.com/index.php/Category:CCS_Training.
Shimmer application code examples for Code Composer Studio™ are actively maintained at https://github.com/ShimmerResearch/shimmer3.
Other embeddedOS, firmware, and programming languages
The Shimmer platform is highly open and configurable, as a result users can port other embedded Operating Systems to the Shimmer platform for the own application development. Similarly, users can choose to program in their preferred programming language depending on their own programming and application experience and expertise.