Hi serbod,
'Good way is create some public class/object that represent remote device or devices, interact with single serial port, send commands and parse replies.'
Yes, I think that looks like the way forward. Perhaps creating a dummy form named CAN_LINK and writing a range of Public Functions to deal with the specifics of my communications will be best.
I am most grateful for the very helpful responses from this forum which clarify what must be done !
Regards,
docwat