Plans for expansion of LPP types


Hi All,

I have just started to experiment with using Cayenne, TTN and LoRa.
On face value, Cayenne appears to be a good option to quickly get prototype applications working based on collecting data from LoRa nodes.

My concern is that currently the LPP types are quite limited (only 12 that I am aware of for LoRa).
There appears to be other types available for other platforms but not for LoRa.

Are there plans to expand the available types to include more (and additional widgets) to support many of the generic types included in the IPSO smart objects guidelines.

Some widgets for levels (stream, tank, river, bore etc in mm) would be great.

Is it possible to great custom widgets? If so how do you do this?




Hi @peters,

Yes, we are most definitely planning to expand support of data types as well as additional widgets. Tagging @eptak here too :slight_smile:



Hi Benny,

Thanks for that.
Do you have some sort of forward plan on the types of additional data types will be supported and when?
How do we go about creating our own widgets? It would be nice to be able to create widgets specific for our flood warning devices for instance.




Thanks for the feedback so far.
I am looking forward to seeing the definition of the planned LPP types.

In the meantime, I have been trying to work on development of a prototype system around the existing types.

My system will have quite a few channels (possibly 30) but not all of these will be used all the time. A large number will be used as setpoint channels to define the behavior of the system. These infrequently used channels mostly are for the reception of download data.

I understand the concept of how Cayenne looks at incoming data (uploads) and then uses this to determine data requirements and to autopopulate the dashboard with widgets. This is a cool feature. However is there a mechanism to set up all these widgets manually, in advance of reception of the first data messages?

I also have some confusion with how to treat generic digital data. I have a requirement where I wish to transfer and visualise a bit map of system flags (8 bits). Do I use the LPP digital types for this? Or are these just for single bit (on/off) flags to be visualised like a button?

How do you download data to a node? Is there a manual way or do you have to do this via sliders, buttons, etc. What does the download payload look like? Is it just the channel number byte + the data byte(s) + appended with 0xFF?? The size of the data (number of bytes sent) being explicitly set by the definition obtained for that particular channel when the data is seen in an upload message?
Is this all documented somewhere? I am probably just not looking in the right places.

Any help on this would be appreciated.



Hi there,

About the bitmask, it’s currently not supported.

For downlink, please check our updated doc

If you have any data type need, please check for IPSO packs to refer to them and tell us what is the usual expected value range.



Hi Eric,

Thanks for your response.

I read about Cayenne LPP 2.0 recently.

This helps with some of my plans for product development but I still need a bit more assistance to understand how Cayenne might be able to be used.

I will outline several hypothetical use cases and maybe you could help me to understand if/how these could be satisfied with Cayenne.

  1. Remote heating control system:

The heating controller node is connected through LoRaWAN (TTN). The controller can be operated locally as well as remotely via LoRa. The node measures temperature and sends this to a remote Cayenne Dashboard. The remote user also has the capability to remotely set the temperature. They adjust a slider on their dashboard and the temperature setpoint gets sent to the Node Controller. The Node controller performs local temperature control based on the received temperature setpoint data and periodically sends current temperature back to the remote Cayenne client.

  1. Flood warning system

A number of field located flood water measuring devices measure local water depths (0 – 5m) and send periodic level measurements back to a Cayenne dashboard. This dashboard consolidates and displays flood height data from a number of measuring points. Rules are set on the dashboard so that when particular water heights are reached at particular locations and alarm is activated. This alarm is based on rules that combine measurements from a number of sensors. Eg If sensor A is greater than 3.5m then alarm or if sensor A is greater than 2.5m and Sensor B is greater than 1.8m then alarm.

It is also important that a number of warning/alarm setpoints can be sent to the remote measuring nodes so that they can trigger a local flashing warning light when a particular water level is exceeded (regardless of what happens with the backend network).

There will also be a need to have multiple dashboards (multiple clients) with focus on particular flood regions. A main dashboard will be required for administrator control and system overview. The individual client dashboards will not have control of flood warning/alarm setpoints.

  1. Access control system

This is a LoRaWAN based distributed access control system.

The remote node device will control entry/exit locks and also power to lighting etc.

There needs to be an ability to remotely set allowable entry and exit times (these will essentially be timer activated by the Node controller) as well as the ability to activate locks/power, etc remotely in response to a Cayenne based actuator style control.

All use cases need the ability to be able to send setpoint and control data from a Dashboard to the end nodes. These setpoints will be used to modify the behaviour of the end node devices.

Ideally there is a need to be able to also receive bitmap flag information for alarms, warnings, battery low, system fault, etc.

Can you help explain how I could achieve this with Cayenne or, if Cayenne is unsuitable, recommend an alternative.




Peter Stone


Tuftec Solutions

(Tuftec Pty Ltd, ACN 143 869 970)

+61 425 772 830

E: wlmailhtml:{266978EE-3EB9-4476-A0F5-0DF7468C395F}mid://00000001/!


F: +61 3 9763 9955