
SN10
DOCID
1/31/2018
REV 0.2.5
InnoComm Mobile Technology Confidential
beacons periodically.
The low power tracker sample application will scan surrounding wifi APs and fix GPS location every
60 minute or upon G sensor interrupt,. It will also broadcast BLE beacons every 100 ms. The
application consists of the following components:
A collection of the call back functions that convert timer and sensor interrupts and BT
protocol events to application events,
An application message queue, and
The application logic that initiates the module , and processes the application events and calls
the module APIs to broadcast the beacon and to collect the location data and send it to the
SIGFOX network.
The users may extend the functionality of the application by adding new peripherals or sensors to
the device and adding new events, new call backs and new handling functions for them.
The following high level application flow demonstrates how the application and the library interact
to serve an interrupt event .
1. At start up, the application calls the library initiation function to initiate the module and pass
the call back functions for hourly timer interrupt, G sensor interrupt, AT interpreter 5 ms
timer interrupt and BT protocol event to the library.
2. The library initializes the wifi, GPS, SIGFOX, G sensor, BT broadcast and the drivers, and
registers the call back functions to the interrupt service of the OS. The application is now
ready to receive and process events.
3. When an interrupt(e.g. G sensor interrupt) happens, the interrupt service calls the
corresponding call back function(e.g. G sensor call back).
4. The call back function converts the interrupt event to the application event and en-queue it
to the application message queue for processing.
5. The interrupt handling function(e.g. G sensor interrupt handling function) de-queues the
event and calls the library to process the event (e.g. scan the wifi AP, fix the GPS location and
send the result to the SIGFOX network).
6. Repeat 3 ~ 5 when new interrupts (e.g. hourly timer interrupts, G sensor interrupts) happen.