Таймаут в DeviceLocator уменьшен до 100, т.к. я не успевал подхватить загрузчик монитора. И теперь таймер работает стабильнее
Теперь CanProg по-умолчанию Dispose-тся с ProgSubmit = Cancel
CanProg.Submit() стала публичной, теперь применять изменения нужно через неё
Аккуратнее сделал таймер на CanProg.GetMsg()
Добавил глупой отладки в процессе подключения
Немного причёсан ProgList.cs