AlphaX expects a payload in the correct format to ingest into the cloud. Data must be formatted in this way otherwise it will be rejected.
In an n-byte payload, the first 8 bytes always corresponds to Device data, and the remaining bytes corresponds to Sensor data.
Sample payloads of 12, 16, 20, 24 and 40 byte are given below.
- 12 byte Sample Payload: 0A10010001000000 A00FA00F0000
- Device Data: 0A10 0100 0100 0000
- Sensor Data: A00F0000
- 16 byte Sample Payload: 0A10010001000000 A00F000070170000
- Device Data: 0A10 0100 0100 0000
- Sensor Data: A00F000070170000
- 20 byte Sample Payload: 0A10010001000000 A00F000070170000A00F0000
- Device Data: 0A10 0100 0100 0000
- Sensor Data: A00F000070170000A00F0000
- 24 byte Sample Payload: 0A10010001000000 A00F000070170000A00F000070170000
- Device Data: 0A10 0100 0100 0000
- Sensor Data: A00F00007017000070170000A00F0000
- 40 byte Sample Payload: 0A10010001000000 A00F00007017000070170000A00F000070170000 7017000014500000E00F0100
- Device Data: 0A10 0100 0100 0000
- Sensor Data: A00F00007017000070170000A00F0000701700007017000014500000E00F0100
Decoding Process for a 40 byte Payload:
1. Convert payload data to little-endian format:
After Conversion to little-endian:
Device Data: 100A 0001 0001 0000
Sensor Data: 00000FA0 00001770 00001770 00000FA0 00001770 00001770 00005014 00010FE0
2. Convert this to decimal:
After Conversion to decimal:
Device Data: 4106 1 1 0
Sensor Data: 4000 6000 6000 4000 6000 6000 20500 69600
3. Now divide the Sensor data by 1000:
Device Data: 4106 1 1 0
Sensor Data: 4 6 6 4 6 6 20.5 69.6
4. Final Output Example:
Device Data:
CH255 – Voltage – 4106 mV
CH254 – Message Number: 1
CH253 – RSSI -(dB): 1
CH252 – ErrorCode: 0
Sensor Data:
PM1 – Smoke – 4 ug/m^3
PM2.5 – Smoke – 6 ug/m^3
PM10 – Smoke – 6 ug/m^3
PM1E – Environmental – 4 ug/m^3
PM1.5E – Environmental – 6 ug/m^3
PM10E – Environmental – 6 ug/m^3
Temperature – 20.5 Degrees C
Humidity – 69.6 % RH