This config works but displays a ton of errors at startup of linuxcnc like these
#define MAX_MSG_LEN 16 // may be increased if necessary to max 251
#define DEBUG 1
static const hm2_modbus_chan_descriptor_t channels[] = {
/* {TYPE, FUNC, ADDR, COUNT, pin_name} */
{HAL_U32, 3, 0x0080, 1, "in-01"},
{HAL_U32, 3, 0x0081, 1, "in-02"},
{HAL_U32, 3, 0x0082, 1, "in-03"},
{HAL_U32, 3, 0x0083, 1, "in-04"},
{HAL_U32, 3, 0x0084, 1, "in-05"},
{HAL_U32, 3, 0x0085, 1, "in-06"},
{HAL_U32, 3, 0x0086, 1, "in-07"},
{HAL_U32, 3, 0x0087, 1, "in-08"},
{HAL_U32, 3, 0x0088, 1, "in-09"},
{HAL_U32, 3, 0x0089, 1, "in-10"},
{HAL_U32, 3, 0x008A, 1, "in-11"},
{HAL_U32, 3, 0x008B, 1, "in-12"},
{HAL_U32, 3, 0x008C, 1, "in-13"},
{HAL_U32, 3, 0x008D, 1, "in-14"},
{HAL_U32, 3, 0x008E, 1, "in-15"},
{HAL_U32, 3, 0x008F, 1, "in-16"},
{HAL_U32, 3, 0x0090, 1, "in-17"},
{HAL_U32, 3, 0x0091, 1, "in-18"},
{HAL_U32, 3, 0x0092, 1, "in-19"},
{HAL_U32, 3, 0x0093, 1, "in-20"},
{HAL_U32, 3, 0x0094, 1, "in-21"},
{HAL_U32, 3, 0x0095, 1, "in-22"},
{HAL_U32, 3, 0x0096, 1, "in-23"},
{HAL_U32, 3, 0x0097, 1, "in-24"},
{HAL_U32, 3, 0x0098, 1, "in-25"},
{HAL_U32, 3, 0x0099, 1, "in-26"},
{HAL_U32, 3, 0x009A, 1, "in-27"},
{HAL_U32, 3, 0x009B, 1, "in-28"},
{HAL_U32, 3, 0x009C, 1, "in-29"},
{HAL_U32, 3, 0x009D, 1, "in-30"},
{HAL_U32, 3, 0x009E, 1, "in-31"},
{HAL_U32, 3, 0x009F, 1, "in-32"},
{HAL_U32, 16, 0x0000, 1, "out-01"},
{HAL_U32, 16, 0x0001, 1, "out-02"},
{HAL_U32, 16, 0x0002, 1, "out-03"},
{HAL_U32, 16, 0x0003, 1, "out-04"},
{HAL_U32, 16, 0x0004, 1, "out-05"},
{HAL_U32, 16, 0x0005, 1, "out-06"},
{HAL_U32, 16, 0x0006, 1, "out-07"},
{HAL_U32, 16, 0x0007, 1, "out-08"},
{HAL_U32, 16, 0x0008, 1, "out-09"},
{HAL_U32, 16, 0x0009, 1, "out-10"},
{HAL_U32, 16, 0x000A, 1, "out-11"},
{HAL_U32, 16, 0x000B, 1, "out-12"},
{HAL_U32, 16, 0x000C, 1, "out-13"},
{HAL_U32, 16, 0x000D, 1, "out-14"},
{HAL_U32, 16, 0x000E, 1, "out-15"},
{HAL_U32, 16, 0x000F, 1, "out-16"},
{HAL_U32, 16, 0x0010, 1, "out-17"},
{HAL_U32, 16, 0x0011, 1, "out-18"},
{HAL_U32, 16, 0x0012, 1, "out-19"},
{HAL_U32, 16, 0x0013, 1, "out-20"},
{HAL_U32, 16, 0x0014, 1, "out-21"},
{HAL_U32, 16, 0x0015, 1, "out-22"},
{HAL_U32, 16, 0x0016, 1, "out-23"},
{HAL_U32, 16, 0x0017, 1, "out-24"},
{HAL_U32, 16, 0x0018, 1, "out-25"},
{HAL_U32, 16, 0x0019, 1, "out-26"},
{HAL_U32, 16, 0x001A, 1, "out-27"},
{HAL_U32, 16, 0x001B, 1, "out-28"},
{HAL_U32, 16, 0x001C, 1, "out-29"},
{HAL_U32, 16, 0x001D, 1, "out-30"},
{HAL_U32, 16, 0x001E, 1, "out-31"},
{HAL_U32, 16, 0x001F, 1, "out-32"},
};