Skip to main content

Uplink Message

{
"DevEUI_uplink": {
"Time": "2024-12-17T09:16:55.911+00:00",
"DevEUI": "0018B20000000BEE",
"FPort": 1,
"FCntUp": 368,
"LostUplinksAS": 0,
"ADRbit": 1,
"MType": 4,
"FCntDn": 370,
"payload_hex": "9e184856043000211770baae0bc9",
"mic_hex": "d0ffa164",
"Lrcid": "000000CB",
"LrrRSSI": -84.0,
"LrrSNR": 9.75,
"LrrESP": -84.437256,
"SpFact": 7,
"SubBand": "G1",
"Channel": "LC3",
"Lrrid": "10001273",
"Late": 0,
"LrrLAT": 47.934113,
"LrrLON": 1.196017,
"Lrrs": {
"Lrr": [
{
"Lrrid": "10001273",
"Chain": 0,
"LrrRSSI": -84.0,
"LrrSNR": 9.75,
"LrrESP": -84.437256
}
]
},
"DevLrrCnt": 1,
"CustomerID": "100002164",
"CustomerData": {
"loc": null,
"alr": {
"pro": "ADRF/FIELD",
"ver": "1"
},
"tags": ["Site=Paris", "Key=Value", "Bruno Devices"],
"doms": [],
"name": "Adeunis FieldTester #Bruno"
},
"BaseStationData": {
"doms": [
{ "n": "EMEA/France", "g": "Geography" },
{ "n": "TempMonitoring", "g": "Use Case" }
],
"name": "Paris Office"
},
"ModelCfg": "1:ShowRoomTag",
"DriverCfg": {
"mod": {
"pId": "adeunis",
"mId": "field-test",
"ver": "1"
},
"app": {
"pId": "adeunis",
"mId": "field-test",
"ver": "1"
},
"id": "actility:adeunis-field-test:1"
},
"InstantPER": 0.0,
"MeanPER": 0.0,
"DevAddr": "040006CC",
"AckRequested": 1,
"rawMacCommands": "",
"TxPower": 2.0,
"NbTrans": 1,
"Frequency": 868.5,
"DynamicClass": "A",
"PayloadEncryption": 0,
"payload": {
"triggeredByAccelerometer": false,
"triggeredByPushbutton": false,
"temperature": 24,
"gps": {
"latitude": { "hemisphere": "NORTH", "degrees": 48, "minutes": 56.043 },
"longitude": { "hemisphere": "EAST", "degrees": 2, "minutes": 11.77 }
},
"uplinkFrameCounter": 186,
"downlinkFrameCounter": 174,
"batteryVoltage": 3017
},
"points": {
"temperature": { "unitId": "Cel", "record": 24 },
"location": { "unitId": "GPS", "record": [1.1962, 47.934] },
"batteryVoltage": { "unitId": "mV", "record": 3017 },
"batteryLevel": { "unitId": "%", "record": 81.54 }
},
"downlinkUrl": "https://community.thingpark.io/iot-flow/downlinkMessages/387c6d87-9e12-4d1a-bbe8-a005074d4961"
}
}
Note

If decoding fails, the payloadDecodedError field provides the error reason. See Decoding failure

Message Structure

  • All uplink (UL) and downlink (DL) messages use JSON format.
  • All datetime values follow the ISO-8601 format.

The connection configuration can impact the output format, such as applied processors.

Message

Important Note

For more information, refer to the full documentation. You can find endpoint details, examples, and descriptions of all fields.


Device Properties

PropertyDescription
TimeTime when the message is sent.
DevEUIID of the device that sent the message.
FPortPort used by the device.
FCntUpUplink frame counter, to track lost frames.
ADRbitADR bit set by the device (0 or 1).
MTypeLoRaWAN® MType of the packet (0-7).
FCntDnDownlink frame counter.
payload_hexEncrypted message payload.
mic_hexMIC in hexadecimal ASCII format.
CustomerIDID of the customer.
InstantPERInstant Packet Error Rate (PER). Float value.
MeanPERMean Packet Error Rate (PER). Float value.
DevAddrDevice address in hexadecimal format.
AckRequestedAcknowledgment requested (0 or 1).
rawMacCommandsHexadecimal dump of LoRaWAN® MAC options/payload.
NbTransNumber of transmissions requested for each uplink message.
TxPowerTransmission power of the device (in dBm).

Gateway Properties

PropertyDescription
LrcidID of the LRC that processed the packet.
LrrRSSISignal strength received by the gateway (including noise).
LrrSNRSignal-to-noise ratio (-20 to 19). Higher values indicate a cleaner signal.
SpFactSpreading factor used by the device (7 to 12).
SubBandSub-band used by the device.
ChannelChannel used to send the packet.
DevLrrCntFrame counter for the gateway.
LrridID of the gateway.
LateIndicates if the packet was queued by the LRR (0: no, 1: yes).
LrrLATLatitude of the gateway.
LrrLONLongitude of the gateway.

Message Properties

PropertyDescription
ModelCfgInternal routing configuration for the output connection.
DriverCfg.modDevice model definition.
DriverCfg.appApplication protocolId used by the device.
DriverCfg.idDriver ID used to decode the payload. See Supported Drivers.
payloadDecodedErrorError message when decoding the payload fails.
payloadContains the decoded payload.
pointsActility standardized decoded driver data. See Ontology.

Error while decoding the message

When an uplink is not properly decoded due to any possible reason, the payload received while look similar to this:

    {
"DevEUI_uplink": {
"Time": "2022-02-09T12:45:00.380+00:00",
"DevEUI": "70B3D531C00027C8",
"FPort": 1,
"FCntUp": 80,
"ADRbit": 1,
"MType": 2,
"FCntDn": 3,
"payload_hex": "4c0500021d0f3701573c627f38385a553c313b343d3937301b2b292c201e221f161611120a0a0a07",
"mic_hex": "50e6783d",
"Lrcid": "000000CB",
xxxxxxxx
"TxPower": 13,
"NbTrans": 1,
"Frequency": 867.1,
"DynamicClass": "A",
"payloadDecodedError": {
"code": "com-5002",
"message": "driver internal error: Error: Invalid fPort!"
}
}
}

Legacy format

When you expect to receive the legacy format (Dx-Dataflow product), on your connection configuration, you need to set the parameter sendMetadata=true.

{
"Time": "2020-01-06T12:46:54.285+01:00",
"DevEUI": "20635F0108000E09",
"FPort": 17,
"FCntUp": 265,
"ADRbit": 1,
"MType": 2,
"FCntDn": 9,
"payload_hex": "0520be8800400108c9000000",
"mic_hex": "3bcf2927",
"Lrcid": "00000127",
"LrrRSSI": -65.0,
"LrrSNR": 9.5,
"SpFact": 7,
"SubBand": "G1",
"Channel": "LC3",
"DevLrrCnt": 2,
"Lrrid": "08050376",
"Late": 0,
"LrrLAT": 43.615501,
"LrrLON": 7.066182,
"Lrrs": {
"Lrr": [
{
"Lrrid": "08050376",
"Chain": 0,
"LrrRSSI": -65.0,
"LrrSNR": 9.5,
"LrrESP": -65.461838
},
{
"Lrrid": "C0001BC3",
"Chain": 0,
"LrrRSSI": -69.0,
"LrrSNR": 8.75,
"LrrESP": -69.543648
}
]
},
"CustomerID": "100002164",
"CustomerData": {
"alr": {
"pro": "ABEE/APY",
"ver": "1"
}
},
"ModelCfg": "1:TWA_100002157.11278.AS",
"DriverCfg": {
"app": {
"mId": "asset-tracker",
"pId": "abeeway",
"ver": "1"
},
"id": "abeeway:asset-tracker:1"
},
"payload": {
"messageType": "HEARTBEAT",
"mode": "MOTION_TRACKING",
"batteryVoltage": 3.85,
"ackToken": 0,
"firmwareVersion": "1.8.201",
"bleFwVersion": "0.0.0",
"resetCause": 40,
"periodicPosition": false,
"temperature": 24.8,
"userAction": 0,
"appState": 0,
"moving": false,
"onDemand": false,
"payload": "0520be8800400108c9000000",
"InstantPER": 0.0,
"MeanPER": 0.0,
"DevAddr": "055E1C4E",
"AckRequested": 0,
"rawMacCommands": "",
"TxPower": 2.0,
"NbTrans": 1,
"Frequency": 867.9,
"DynamicClass": "A"
}
}