arduino-libraries / ArduinoModbus

244 stars 116 forks source link

Incorrect conversion of seconds and micro seconds to milliseconds #127

Closed r2park closed 9 months ago

r2park commented 9 months ago

https://github.com/arduino-libraries/ArduinoModbus/blob/0cee633cb267962e1cf0a780b8028e049656b0da/src/libmodbus/modbus-tcp.cpp#L838C62-L838C62

https://github.com/arduino-libraries/ArduinoModbus/blob/0cee633cb267962e1cf0a780b8028e049656b0da/src/libmodbus/modbus-rtu.cpp#L1262

facchinm commented 9 months ago

It is correct, since struct timeval is defined as https://renenyffenegger.ch/notes/development/languages/C-C-plus-plus/C/libc/structs/timeval . So if you have tv defined as tv = { .tv_sec = 5; .tv_usec = 34000; } the number of milliseconds will be 5*1000 + 34000/1000