[/flextrack application layer]

Programming

Flextrack’s software, FAL API, allows for the development of custom applications and functions on our platform.

Customers are able to build a complete application from the very beginning, using our FAL library with hundreds of functions (incl. RTOS). We can also add your specific application module to our standard tracking application. Our platforms support writing programs in C and also C++.

One API for all your tracking devices

All Lommy devices from Flextrack use the same programming interface (API). This means that any application that runs on a specific Lommy device will also run on all other devices that are connected to the API (across all Lommy platforms).

This feature enables customers to develop their own applications on a specific device. Afterwards, the application can be moved to any other Lommy device (or Lommy platform), should the need arise. There is no need to rewrite an application as all devices and platforms are 100% compatible!

The only limitation to this compatibility is the availability of peripheral components on a specific platform or device. For example, if mp3 voice playback is used in an application, this function will not operate on a device that has no MP3 peripheral support.

Please contact us for further information about our customized software solutions.

FAL library

FAL library contains hundreds of functions to control all aspects of your Lommy devices, including:

 

systemFAL – Real-time clock, LEDs, buttons, Console Debug messages, Watchdog, power-down functions, diagnostics, etc.
BBRAMFAL – To store data in battery-backed-up RAM
FileFAL – Access to filesystem, depending on the device, some have up to three disks (NAND Flash, RAM disk and SD Card)
GPSFAL – Controls the GPS receiver
GSMFAL – Interacts with the quad band GSM module, sends/receives text messages (SMS), status info, etc.
PowerFAL – Controls the built-in battery charger
ThreadFAL – RTOS functions, thread functions, semaphors, mutex, mailbox etc.
TimerFAL – To create timers
UDPFAL – UDP communication
FPFAL – Handles parameter files, unified interface for the platform
RFFAL – Low level RF functions, 433/868 MHz band
SimpliciTIFAL – High level RF functions, 868 MHz Band, high bandwidth
GSensorFAL – Handles the 3 axis G sensor, sets wake-up thresholds (e.g. excessive movement can make the device turn on), etc.
RS232FAL – RS232 communication to external devices
RS485FAL – RS485 Bus communication to a number of devices (max 32 devices on a bus)
IOFAL – Controls the I/O on a device
SocketFAL – TCP/IP socket connection to a server
1WireFAL – Dallas 1Wire interface, humidity sensors, temperature sensors, I/O devices, etc.
HTTPFAL – To send a HTTP request to a web server and retrieve the answer
FTPFAL – FTP functions (put and get), sends and receives files from an FTP server
MP3FAL – Plays MP3 files (from the internal filesystem) to the GSM module or the internal speaker
CANFAL – Support for dual CAN Bus communication; support for both 11 and 29 bit IDs (CAN 2.0B); support for filtering; baud rates from 20 KB to 1 MB
BTFAL – Handles Bluetooth LE module
CryptFAL – Contains AES128 encryption
LCDFAL – Handles graphic LCD screen and touch interface

FAL API Release Package

FAL API Release Package

 

To start programming your own application on a Flextrack Lommy device, you need the following:
Firstly, the ‘Keil MDK-ARM Microcontroller Development Kit’ development platform, which is used for all developments. The development kit can be downloaded from www.keil.com

Secondly, a copy of the current ‘FAL API Release Package’ (which is free!).
This package contains: online help, libraries and a very extensive selection of example programs, which will help you get productive within a couple of hours.

The number of example programs delivered with the ‘FAL API Release Package’ is continually increasing, the current selection includes:
1Wire – Uses the 1Wire API to show how to connect to temperature sensors, etc.
BBRAM – Shows how to use battery-backed RAM, which is included in some of the Lommy devices
CAN-FMS – Demonstrates the use of CAN Bus API on FMS-equipped trucks
CAN-OBDII – Uses CAN Bus API to get information from a vehicle’s on-board diagnostics connector
CANBUS – General use of CAN Bus API
Filesystem – Demonstrates how to use the file system of a Lommy device (includes NAND flash, RAM disk and SD card)
FWP – Shows how to use the Flextrack Wireless Protocol – an RF protocol that all Flextrack RF devices use
GPS – General use of the GPS receiver
GPS Google Earth – Generates a Google KML file from the positions transmitted from the built-in GPS receiver
GPS Simulation – Google Earth – Shows how to use the GPS simulation API
GPS UDP Highspeed – Combines GPS positions and UDP high speed reporting
GSampler – Shows how to make a 3-axis G-force profile (generates Excel data)
GSensor – General use of the 3-axis G-sensor (wake-up, etc.)
GSM Voice – Shows how to make voice calls using the GSM module
LED – Covers how to control the various LEDs that are included on the platforms
Light sensor – Demonstrates the use of the light sensor (e.g. ‘wake-up’ when change in the light level is detected, etc.)
LommyManager – Shows some of the features of the LommyManager program
Low Power Operation – Covers how to control the power-down modes of the devices
MP3 – Demonstrates the use of the mp3 player functions
RF – General RF communications (868/433 MHz)
RS232/RS485 – Shows how to use the built in RS232/RS485 communication ports
RTOS – Demonstrates the various RTOS features (threads, semaphore, mailboxes, etc)
Single Position UDP – Shows how to: get a single GPS position; report it to a server; shut down the device for a period of time
SMS – Sending and receiving text messages (SMS)
Socket – General TCP/IP socket communication
Torchlight – A simple torchlight application that uses the high brightness LED light, which is built into a number of the devices
UDP-1/UDP-2 – Shows how to use UDP communication
Watchdog – Demonstrates how to use the higher level watchdog functions
C++ Example – Shows how to use C++ Object-Oriented Programming together with the FAL API
Crypt – Shows how to use encryption features
Parameter files – Goes thru the parameter subsystem
Reload – Demonstrates how to manage reload of userapp/firmware from a server
FWP to BT gateway – Forwards messages from FWP devices to Bluetooth
IO and power – Shows how to use various I/O and power functions
LCD – Advanced – Shows the use of dialog screen on units with LCD display and touchscreen
LCD – Simple – Simple graphics application for units with LCD display
BT (BLE) – Bluetooth LE example including Android application