i looked into simplemulticam, but still hard to grasp for me and multicam seems to have more things that i can use.
In simplemulticam, m.connect_all connects to all available cameras. m.exec runs codes on the. You should be able to use m.exec as model for a function that sends messages using lcon:write_msg_pcall instead. While it may not be easy to understand, it is surely less complicated than multicam.
plus, i wanted to have as tight as possible timing between cams and thought that you wrote somewhere multicam was more accurate.
multicam is only "more accurate" if you use the camera side script, or implement similar logic yourself. What multicam tries to do is
1) calculate offsets of each cameras tick counter relative to PC time (mc:init_sync)
2) estimate the time required to send commands to each camera (also mc:init_sync)
3) for synchronized commands (mc:cmd with syncat, which is also used by other function like mc:shoot) tell each camera to do the action at some point in absolute time in the future (calculated using the tick counter offsets) such that all cameras will have time to receive the command.
although, the fact that setclock did not work without starting cam side script was a bit dissapointing 
i was actually just about to ask you what i did wrong that it had missing params when you gave me my answer.
but i'll get over that when i've figured out how to put utc+1 in that !mc:cmd message.
...or when i disabled whatever is blocking setclock to work as it does with single cam connect.
If you want to implement setclock without the normal multicam camera side script, you would need to implement the corresponding code in your own camera side script. You can find it in cmds.setclock in multcam.lua, but it depends on other parts of the camera side script and uses the sync system.