Prepare NEWS file for next release
[libmodbus.git] / docs / modbus_read_bits.md
blob67965142b90b8730c701c07eb0fab7f1fd4ede54
1 # modbus_read_bits
3 ## Name
5 modbus_read_bits - read many bits
7 ## Synopsis
9 ```c
10 int modbus_read_bits(modbus_t *ctx, int addr, int nb, uint8_t *dest);
11 ```
13 ## Description
15 The *modbus_read_bits()* function shall read the status of the `nb` bits (coils)
16 to the address `addr` of the remote device. The result of reading is stored in
17 `dest` array as unsigned bytes (8 bits) set to `TRUE` or `FALSE`.
19 You must take care to allocate enough memory to store the results in `dest`
20 (at least `nb * sizeof(uint8_t)`).
22 The function uses the Modbus function code 0x01 (read coil status).
24 ## Return value
26 The function shall return the number of read bits if successful. Otherwise it
27 shall return -1 and set errno.
29 ## Errors
31 - *EMBMDATA*, too many bits requested
33 ## See also
35 - [modbus_write_bit](modbus_write_bit.md)
36 - [modbus_write_bits](modbus_write_bits.md)