@kajmaj I have not had the need to do this myself however I am pretty sure there have been posts about this type of thing so maybe you need to do some specific searching for your answer.
From memory of one discussion I believe you just have to construct an ‘array’
There is documentation here which includes this below:
| Service | Description |
|---|---|
| write_register | Write register. Requires hub, unit, address and value fields. value can be either single value or an array |
I hope that helps a little and I will continue to search myself a little to see what I can find. Try searching “write_register bit” OR “write_register array”
Perhaps if you find the answer please post back here to add your solution? I will as well.
UPDATE: Discussion and a solution here: SOLVED:How to add sensor state in an array inside an automation and send it with modbus.write_register service
NOTE: The automation is how you write the value to your register.