Data format 3 (RAWv1)
Lifecycle: Deprecated
The data is decoded from "Manufacturer Specific Data" -field, for more details please check Bluetooth Advertisements section. Manufacturer ID is
0x0499
, which gets sent as 0x9904
. The actual data payload is:Offset | Allowed values | Description |
0 | 3 | Data format definition (3 = current sensor readings) |
1 | 0 ... 200 | Humidity (one lsb is 0.5%, e.g. 128 is 64%) Values above 100% indicate a fault in sensor. |
2 | -127 ... 127, signed | Temperature (MSB is sign, next 7 bits are decimal value) |
3 | 0 ... 99 | Temperature (fraction, 1/100.) |
4 - 5 | 0 ... 65535 | Pressure (Most Significant Byte first, value - 50kPa) |
6-7 | -32767 ... 32767, signed | Acceleration-X (Most Significant Byte first) |
8 - 9 | -32767 ... 32767, signed | Acceleration-Y (Most Significant Byte first) |
10 - 11 | -32767 ... 32767, signed | Acceleration-Z (Most Significant Byte first) |
12 - 13 | 0 ... 65535 | Battery voltage (millivolts). MSB First |
The first byte tells the receiver (ie. website) what kind of type of data the packet has.
Values supported: -127.99 °C to +127.99 °C in 0.01 °C increments.
Example
Value | Measurement |
0x0000 | 0 °C |
0x8145 | -1.69 °C |
0x0145 | +1.69 °C |
Values supported: 0.0 % to 100 % in 0.5 % increments.
Example
Value | Measurement |
000 | 0% |
128 | 64.0% |
200 | 100.0% |
Values supported: 50000 Pa to 115536 Pa in 1 Pa increments.
Example
Value | Measurement |
00000 | 50000 Pa |
51325 | 101325 Pa (average sea-level pressure) |
65536 | 115536 Pa |
Values supported: -32000 to 32000 (mG), however the sensor on RuuviTag supports only 16 G max (2 G in default configuration). Values are 2-complement int16_t, MSB first. All channels are identical.
Example
Value | Measurement |
0xFC 0x18 | -1000 mG |
0x03 0xE8 | 1000 mG |
Values supported: 0 mV to 65536 mV in 1 mV increments, practically 1800 ... 3600 mV.
These test vectors are based on ruuvitag-sensor project. There is no specific value for invalid/not available sensor readings, it is suggested to send
0
if value is not available. The tests are bidirectional, decode-encode results in original raw data. Encode-decode must result in same values with given precision, but floating point rounding differences may occur.Raw binary data:
0x03291A1ECE1EFC18F94202CA0B53
Field | Value |
Data format | 3 |
Temperature | 26.3 C |
Pressure | 102766 |
Humidity | 20.5 RH-% |
Acceleration X | -1.000 G |
Acceleration Y | -1.726 G |
Acceleration Z | 0.714 G |
Voltage | 2.899 V |
Raw binary data:
0x03FF7F63FFFF7FFF7FFF7FFFFFFF
Field | Value |
Data format | 3 |
Temperature | 127.99 C |
Pressure | 115535 |
Humidity | 127.5 RH-% |
Acceleration X | 32.767 G |
Acceleration Y | 32.767 G |
Acceleration Z | 32.767 G |
Voltage | 65.535 V |
Raw binary data:
0x0300FF6300008001800180010000
Field | Value |
Data format | 3 |
Temperature | -127.99 C |
Pressure | 50000 |
Humidity | 0.0 RH-% |
Acceleration X | -32.767 G |
Acceleration Y | -32.767 G |
Acceleration Z | -32.767 G |
Voltage | 0.000 V |