Arduino LLAP library for user devices

This document is under development and is not yet supported.


The intention is to create a library of routines that make it easy for you to create your own LLAP devices.

The platform being targeted in this project are those that can be programmed via the Arduino IDE. The examples will be built with the XinoRF and RFu-328 in mind but the methodology is easily transported to other hardware by other manufacturers.


Our XRF has been our most successful building block for the creation of sensor and actuator networks. To create a particular sensor or actuator, you would load the appropriate firmware personality onto an XRF and you were done.

Trouble was that you would be limited to the firmware personalities that Ciseco had defined for you. Many of you wanted something different, more customised to your particular needs.

That led us to the development of the RFu-328, essentially an XRF with an Arduino chip on-board for you to programme as you see fit.

We decided to create this Arduino LLAP library so that you can use the same LLAP messages and formats that the personalised XRFs use, without having to program and debug all of that stuff yourself.

For details on LLAP, please see the LLAP protocol documentation in the main document section.


This is a work in progress. In time we intend to have code available equivalent to each of the firmware personalities of the XRF we have published.

At this stage, we only offer the basic framework that allows you to safely receive LLAP messages, handle them and send well formed messages.



The latest version of the libaray can be found on github:

There are a number on example sketch's included

Note: Check your comms speed, it's 9600 as default (XRF, Xbee etc, the RFu and XinoRF are usually set to 115200)



  1. On the page linked above at the bottom right you will find a button called "dowload zip"
  2. Unzip from that the files (4 files + one folder) to something like this on windows ------- C:\Users\miles\Documents\Arduino\libraries\LLAPSerial
  3. Your machines user name will not be miles :)
  4. Restart the IDE

Note: If the directory is not called LLAPSerial or in this structure mentioned the Arduino IDE will complain and refuse to compile.



With the LLAPsensor code, send from another wirelessly connected machine "aXXXXXXXXXXX" you should get back "aXXERROR----" if you do then your hardware is configured correctly. What you do next.....well that's up to you :)