QP MODBUS Protocol Version 1
Please mind, that not all registers are supported on all device types.
Registers
MODBUS READ function 0x46 (8-bit bytes, not 16bit-words!)
MODBUS WRITE function 0x47 (8-bit bytes, not 16bit-words!)
Fnc 0x46/0x47 Description Value type
address [DEC]
0 Sensor value / reading (RO) 32bit float
4 Scale factor (RO) uint8_t
5 Unit (RO) uint8_t
6 Measurement type (RO) uint8_t
7 Serial baud rate (1: 9600) (RW) uint8_t
8 Serial databits (0:5, 1:6, 2:7, 3:8) (RW) uint8_t
9 Serial parity (0:none, 1:even, 2:odd) (RW) uint8_t
10 Serial stopbits (0:1, 1:2) (RW) uint8_t
11 MODBUS address (RW) uint8_t
12 Sensor absolute minimum (RO) 32bit float
16 Sensor absolute maximum (RO) 32bit float
20 Sensor serial number (RO) uint32_t
RO denotes read-only register, RW denotes read-write register.
Example of writing to ROM
Writing 1 byte of value 0xAA to device number 1 starting on index 8 using function 0x47.
=> 01 45 0008 0001 01 AA A4ED 0008 = start index to write to 0001 = number of 8-bit bytes to write 01 = number of bytes which follow in this packet
Writing 4 bytes of value 0xAABBCCDD to device number 1 starting on index 2 using function 0x42. CRC is 0x1409.
=> 01 42 0002 0002 04 AABBCCDD 1459 00002 = start index to write to 0002 = number of 16-bit registers to write 04 = number of bytes which follow in this packet
Measurement type lookup table
Pressure Absolute (against vacuum) 0 Pressure Relative (against atmosphere (gauge pressure)) 1 Temperature 2 Binary (open / close; yes / no; 1 / 0) 3 Pulses 4
Units of measurements and scale factors lookup tables
Units
°K - Kelvin (temperature) = 0 °C - Celsius (temperature) = 1 °Ré - Réaumur (temperature) = 2 °F - Fahrenheit (temperature) = 3 °R - Rankine (temperature) = 4 Pa - Pascal (pressure) = 5 bar (pressure) = 6 atm (pressure) = 7 torr (pressure) = 8 mmHg (pressure) = 9 psi (pressure) = 10 m (level) = 11 reserved = 12 m3 (volume) = 13 l (volume) = 14 m3/s (flow) = 15 m3/h (flow) = 16 l/s (flow) = 17 l/h (flow) = 18 A (current) = 19 V (voltage) = 20 % (humidity) = 21
Unit scale factors
This is the unit scale factor. For example, if the unit is Pa and the scale factor is KILO, then the reading is in kPa.
no scale factor = 0 a (atto) = 1 f (femto) = 2 p (piko) = 3 n (nano) = 4 u (mikro) = 5 m (mili) = 6 c (centi) = 7 d (deci) = 8 da (deka) = 9 h (hekto) = 10 k (kilo) = 11 M (Mega) = 12 G (Giga) = 13 T (Tera) = 14 P (Peta) = 15 E (exa) = 16