The M2MLabs Mainspring Project

M2MLabs Mainspring is an application framework for building machine-to-machine applications like vehicle tracking or machine remote montoring. In such applications typically a remote device equipped with sensors (e.g. gps, temperature, pressure) and actors communicates with a server application that is running the device communication protocol, device configuration, storage of data sent by the devices as well as the application business logic and the presentation layer.

Mainspring takes care of device communication, configuration as well as data storage and retrieval so that application developers can focus on business logic purely. M2M applications can be prototyped in hours rather than weeks and finally transfered to a high performance execution environment built on top of a standard J2EE server and the highly scaleable Apache Cassandra database. Learn more

Samples in the Wiki show how to connect an Arduino board, a Raspberry PI, an Android phone or a Ubunto Core device.

We are very happy to be now a partner of Canonical for their Internet of Things program Ubunto Core

A web based IDE allows to create device and sensor models, manage devices and run simulations.

Test it: send an email to and we send you an apikey for our demo machine

Download the latest binary or get the sources from the Mercurial repository by

hg clone

To get further support please look into the Wiki, check for known problems in the bug tracker or mail to


the bridge from devices to applications

Sample Project

walkthrough of a sample project to get you started


API description and design backgrounder