previous: Home next: Query Interface
The following instructions provide a walk-through for setting up and using SwissQM. They have been tested on Windows and Linux with Xbow mica2 nodes (mica2 platform) and Moteiv tmote sky nodes (telosb platform) on the TinyOS CVS snapshot release 1.1.15.
A working TinyOS 1.x installation is required to build the SwissQM Virtual Machine. Furthermore, the necessary tools (compiler, binutils, programmer, etc.) for the desired target platform have to be setup correctly. It is recommended to first test the TinyOS installation before continuing by building and running some of the supplied applications, e.g. CntToLedsAndRfm and RfmToLeds.
If you are using Moteiv's tmote sky nodes you can also install TinyOS using Moteiv's boomerang software which includes TinyOS 1.1.15 and the required tools to build for the the telosb platform.
Pointers and hints:
If you followed the instructions for setting up TinyOS, you should have a working JDK and JAVACOMM installation, which is required to run the SwissQM gateway software. You will also need Apache Ant to build the gateway.
Pointers and hints:
Unpack the source distribution (swissqm-wsn-*) to the apps folder of your TinyOS installation. This will create a new folder SwissQM. Change to that folder and build and install SwissQM as you do for other TinyOS applications, e.g.
for mica2:
make mica2 install,0 mib510
for telos:
make telosb install,0 bsl
install,x
will flash the SwissQM image for node x.
So change it to enumerate your sensor nodes while programming.
Unpack the source distribution (swissqm-gateway-*) to a convenient location. This will create a new folder SwissQM-gateway. Change to that folder and build the SwissQM gateway by running
ant dist
The file swissqm.properties contains the configuration for the
gateway. Edit this file to fit your setup. In particular, you have to
set ch.ethz.inf.swissqm.motecom to match your TinyOS mote
communication link (the same that you have in the MOTECOM environment
variable, which is not required for the gateway) and
ch.ethz.inf.swissqm.dblogging to enable or disable
logging to a database. If you want to use logging to a database, you also
have to set the ch.ethz.inf.swissqm.db.*
properties to match your
database setup.
If you enabled dblogging make sure that the following
structures exist in the database specified in
ch.ethz.inf.swissqm.db.name: sequence queryidseq
and a table queries. If you are using PostgreSQL you can
use the initdb.sql script:
psql -f initdb.sql mydatabase
For other databases this file should give enough information about
the schema used by the gateway.
previous: Home next: Query Interface
Last update: June 3rd, 2008