for (;;)
{
int rc = modbus_receive(mb, rxbuf);
update_registers_from_device(mb_mapping);
copy_registers(mb_mapping, before_update); // stores all registers from mb_mapping
modbus_reply(mb, rxbuf, rc, mb_mapping);
send_changed_registers_to_device(mb_mapping, before_update); // compares mb_mapping to before_update, send json updates based on changes
}