8.4. RFM69 payload: LPP formaat

FIGUUR!

De RFM69-berichten zijn kort: ten hoogste ca. 60 bytes. Dit betekent dat we sensor- en actuatorgegevens compact moeten coderen: JSON is veel te omslachtig. We gebruiken een variant van het binaire Cayenne LPP-formaat. (Deze kunnen we ook gebruiken we ook voor de LoRaWan-berichten.)

Voorbeelden van sensor/actuatorgegevens in LPP-formaat:

De waarde(n) van een sensor/actuator bestaat uit een reeks gehele getallen, van 1 of 2 bytes elk. Door gehele getallen te gebruiken voorkomen we onder meer het (dure) rekenen met floating point getallen in de IoT-knoop. Bovendien leveren de meeste sensoren een geheel getal als gemeten waarde: het werken met floating point getallen voegt niets toe.

De types en de interpretatie van de data staan beschreven in de Cayenne-documentatie, zie XXX

Enkele voorbeelden van veel voorkomende types sensoren en actuatoren:

LPP types

Sensor

Naam

Type

Hex

Bytes

Resolutie

Digitale input

dIn

0

0

1

1

Digitale output

dOut

1

1

1

1

Analoge input

aIn

2

2

2

0.01 Signed

Analoge output

aOut

3

3

2

0.01 Signed

Lichtniveau

illuminance

101

65

2

1 Lux Unsigned

Aanwezigheid

presence

102

66

1

1

Temperatuur

temperature

103

67

2

0.1 °C Signed

Rel. Luchtvochtigheid

humidity

104

68

1

0.5% Unsigned

Luchtdruk

barometer

115

73

2

0.1 hPa Unsigned

LPP downlink-berichten

De payload voor een downlink-bericht is erg eenvoudig:

We nemen hier het type van de actuator niet op: dit is in de knoop zelf bekend. Ook de nodeid is niet nodig: de IoT-knoop kent zijn eigen nodeid.

Referenties:

You have attempted of activities on this page