This document describes version 4 of the configuration payload introduced with PCR2 Firmware V3.6.0
Older versions of this document:
This payload is used to remotely read / write device configurations over LoRaWAN.
Byte | Property | Description | Uplink Values | Downlink Values |
---|---|---|---|---|
0 | Vendor ID | Always 0xbe for Parametric Devices | be | ignored (*) |
1 | DeviceFamily | Always 0x01 for PCR2 Devices | 01 | ignored (*) |
2 | PayloadVersion | Always 0x03 for V3 Payloads | 04 | ignored (*) |
3 | DeviceType | 00: PCR2-IN 01: PCR2-OD 02: PCR2-R 03: PCR2-T 04: PCR2-XIO |
00-04 | ignored (*) |
4:6 | FirmwareVersion | 0x030600 = V3.6.0 | 030600-0306ff | ignored (*) |
7 | OperatingMode | 00: Timespan 01: Not Zero 02: Trigger 03: CapacityAlert |
00-03 | 00-03 |
8 | PayloadType | 00: ELSYS 01: Cayenne LPP 02: Extended |
00-02 | 00-02 |
9 | DeviceClass | 00: Class A 02: Class C |
00 or 02 | 00 or 02 |
10 | UplinkType | 00: Uncofirmed 01: Confirmed |
00 or 01 | 00 or 01 |
11:12 | UplinkInterval | 1-1440 Minutes | 0001-05a0 | 0001-05a0 |
13:14 | LinkCheckInterval | 1-1440 Minutes, 0 = No LinkChecks | 0000-05a0 | 0000-05a0 |
15:16 | CapacityLimit | 0-65535 Objects | 0000-ffff | 0000-ffff |
17:18 | HoldoffTime | 0-600s | 0000-0258 | 0000-0258 |
19:20 | InactivityTimeout | 1-1440 Minutes, 0 = Off | 0000-05a0 | 0000-05a0 |
21 | MountingDirection | (Currently not used) 90°: Parallel to Movement, 0°: Frontal | 00-5a | 00-5a |
22 | MountingTilt | (Currently not used) 90° = Overhead (Facing downwards), 0° Sideways | 00-5a | 00-5a |
23 | Beam | 30-80° Detection Area (Radar Beam) | 1e-50 | 1e-50 |
24:25 | MinDist | Min Distance to Target 10-3000 cm | 000a-0bb8 | 000a-0bb8 |
26:27 | MaxDist | Max Distance to Target 10-3000 cm | 000a-0bb8 | 000a-0bb8 |
28 | MinSpeed | Min Detection Speed 1-MaxSpeed km/h | 01-50 | 1e-50 |
29 | MaxSpeed | Max Detection Speed MinSpeed-80km/h | 01-50 | 1e-50 |
30 | RadarSensitivity | 10-100% | 0a-64 | 0a-64 |
31 | RadarAutotuning | Enable Autotuning mode to allow device finding optimal radar settings Enable for a while, then disable it 00 = disabledy 01 = enabled |
00-01 | 00-01 |
(*) These fields values are ignored by the device when downlinking this payload
These examples show some example configuration payloads you might use as a starting point.
Default Settings
be 01 04 00 03 06 00 00 02 00 00 00 0a 05 a0 00 00 00 00 00 78 00 5a 50 00 32 01 f4 01 14 50 00
Uplink | Port 190 |
Downlink | Port 190 |
PCR2 devices accept downlink messages to Port 190 in the above format.
After sending the downlink to Port 190 it might take up to the Interval Time before PCR2 receives the data. (PCR2 are Class A devices)
As soon as the device received a proper Configuration Payload it parses the values and restarts with the new settings. Join procedure will start again and you should get the same Configuration Payload you sent before.
Note: Byte 0-6 are read only ROM values and cannot be changed
You can use a config string sent by the device after joining the network and modify it manually. You could also use the PCR Setup tool to generate this string.
PCR2 devices are sending a uplink with this configuration string using Port 190. This is done at least once after devices joined the network.
Saving this information on your application server allows you to always know about your device settings.
Always check for port 190 prior to decoding a configuration payload. Additionally you could also check Bytes 0-2.
// check for valid pcr2 config payload V4
if ( port == 190 && bytes[0] == 0xbe && bytes[1] == 0x01 && bytes[2] == 0x04 )
{
// decode it
}
Find more example code in our public repository.