Firmware

In keeping with our open source philosophy, all Shimmer’s firmware is freely accessible through various online repositories. With a host of stock firmware available, we have worked hard at ensuring Shimmer users benefit from some of the most efficient and effective wireless sensing firmware available, with low power communications and a flexible, highly configurable nature.

Featured firmware:

All Shimmer firmware is freely available in public online repositories however, below we have listed some featured firmware for Shimmer users depending on your data capture requirements.

BTStream (Bluetooth Firmware)

The BTStream firmware provides Shimmer 2 and Shimmer 2r users with full configuration and synchronised data capture capabilities for multiple shimmer devices. The firmware includes additional commands and features for users who are streaming sensor data in realtime using BT.

SDLog (Logging Firmware)

The SDLog Firmware is a solution for configurable synchronized data capture to the Shimmer microSD card. The firmware allows Shimmer2 and Shimmer 2r users to readily set-up their application specific to capturing data to the microSD card. The configuration parameters are saved on the Shimmer microSD card in a configuration file from which they are read by the Shimmer at initialization.

SDLog Firmware features include:

  • Fully configurable data logging to SD card
  • Simple text file interface to specify configuration
  • Easily identifiable data directories and files created for each new logging session
  • Relative time synchronisation among multiple shimmers using 802.15.4 radio
  • Various LED sequences to indicate current mode of operation to the user

** To download available firmware for the Shimmer platform please visit the Download section of our website, or refer to the links to the repositories below. Or to read the SDLog Firware User Manual click here.

Quick Start Environment

Shimmer Research provides a quick start environment for the familiarisation and use of the Shimmer platform. The Shimmer BSL (Boot Strap Loader) provides a range of stock firmware for the use of the Shimmer platform and various sensor modules. The BSL program allows for the Shimmer unit to be loaded with the appropriate firmware when docked in the USB Reader.

Programming Shimmer via the BSL

Operating Environment

The TinyOS operating environment is highly recommended for design, implementation, testing and validation of Shimmer embedded software (firmware). TinyOS offers economy due to the extensive cross-platform open-source code library. Reusing applications on Shimmer is a key advantage of the TinyOS environment and significantly accelerates the software development and validation process. Shimmer’s platform code is actively maintained at:

https://tinyos-main.googlecode.com/svn/trunk/ (tinyos-2.x)

http://tinyos.cvs.sourceforge.net/tinyos/ (tinyos-1.x and tinyos-2.x-contrib)

TinyOS-1.x code can be found in the contrib/handhelds/ directory.

Current functionality includes:

  • MicroSD flash storage
  • FAT File system
  • IP stack for 802.15.4
  • Bluetooth configuration, connection management and streaming data transfer
  • Real time clock module
  • Peripheral  control and configuration
  • Power supply monitoring

Example of Using the Quickstart Environment

The video below is an example of compiling TinyOS code using the VMware image, and running a full IP stack on Shimmer.

A full-featured IP stack, including both main socket protocols (TCP and UDP), and a telnet server can be used on a Shimmer, running over the 802.15.4 radio.

This is all run in a ShimmerLive 10.04a VMWare image. The only modification to the image before starting was to copy the folder with the python examples to the desktop. Other than that, it is as supplied.

Download a full high quality copy of the video demonstration: ShimmerLive_IP_example

View the example with a full detailed explanation of the steps taken: MicroIP Example