Запуск программы под виртуальной машиной


Wiki

При запуске SFPTotal Wizard в контейнере виртуальной машины с использованием программного обеспечения VirtualBox или Parallels может присутствовать проблема постоянной потери соединения с устройством или невозможности выполнить операции чтения и записи в память трансивера.

Данная проблема проявляется преимущественно при использовании программного обеспечения в виртуальном контейнере, где родительская ОС представлена OS X (MacOS) или Linux, а дочерняя - Windows.

В чем причина?

При выполнении команды чтения программа ожидает получение ответа длиной 256 символов от устройства через интерфейс виртуального серийного порта. При использовании виртуализации может возникать ситуация, когда дочерняя операционная система теряет часть передаваемых устройством данных.

Причина кроется в проблемах эмуляции OHCI/EHCI контроллера USB и особенностях работы стандартного драйвера виртуального серийного порта.

Решение

Чтобы устранить проблему, в настройках виртуальной машины выберите Контроллер USB (xHCI) и выполните подключение программатора через данный контроллер.

Если возможность изменения типа контроллера отсутствует, выполните команду:

USBDELAY=80

Данная команда принудительно замедлит передачу данных от программатора компьютеру и уменьшит вероятность того, что данные будут потеряны при пробросе интерфейса устройства программатора для дочерней операционной системы в виртуальном контейнере.