Начало работы с Arduino: VirtualBox: Ubuntu - PullRequest
10 голосов
/ 06 ноября 2011

Я хотел бы поиграть с разработкой Arduino, но я бы хотел сделать это в Ubuntu Linux, и я хотел бы сделать это на виртуальной машине Ubuntu, размещенной на моем компьютере Windows, с использованием VirtualBox или VMWare Player.

Возможно ли это сделать?Нужно ли делать что-то особенное, чтобы сделать USB-порт Arduino хост-ОС (windows) доступным для USB-порта гостевой ОС (Ubuntu / virtualbox)?

Ответы [ 3 ]

5 голосов
/ 15 ноября 2011

Да, VirtualBox позволит вам представить ваши локальные USB-устройства на виртуальной машине.

Когда виртуальная машина выключена (не сохранена), перейдите на страницу настроек ... USB.Включите контроллер USB, если он еще не включен.Затем вы можете создать новый фильтр устройства (USB-штекер с +) и выбрать подходящее устройство.Это устройство всегда будет подключено к виртуальной машине, что может или не может быть желательным.

Если USB уже включен, вы можете добавлять / удалять устройства на работающей виртуальной машине (так же, как на реальной машине).Используйте меню Устройства ... USB и выберите устройство для подключения к ВМ.

3 голосов
/ 10 августа 2013

На самом деле, я уже попробовал метод, предложенный @TevoD, и запуск lsusb действительно показал, что USB-устройство FTDI было распознано в Virtualbox, однако я продолжал получать ошибку avrdude.

Наконец-то решение найдено в этом сообщении на форуме Virtualbox. Это решило проблему, и теперь я могу использовать Arduino IDE (или avrdude в целом из командной строки) из моего Crunchbang 'Waldorf' guestVM (суперлегкий дистрибутив на основе Debain) - работает на Windows 7 Professional 64 -битный хост.

Поскольку эта ссылка может исчезнуть когда-нибудь или может оказаться за схемой аутентификации, ключевые шаги:

  1. Изменение номера COM-порта последовательного USB-порта FTDI, назначенного по умолчанию. Обычно это необходимо, потому что Virtualbox имеет некоторые проблемы, связанные с номером COM-порта в двузначных числах (например, COM11, COM23 и т. Д. Не нравятся, но COM1-COM9 в порядке). Чтобы внести это изменение, вам нужно убедиться, что USB-устройство FTDI не было заявлено и подключено к Virtualbox guestVM, т. Е. Выполнить шаг с отключением guestVM. Через диспетчер устройств Win7> Порты> COMxy (где «xy» - номер порта по умолчанию), выберите «Дополнительные настройки», а затем измените номер COM-порта. быть свободным между 1-9.

  2. Затем в консоли Virtualbox измените свойства guestVM и включите настройки последовательного порта, т. Е. Пусть преобразователь USB-последовательных интерфейсов FTDI будет рассматриваться как последовательный порт в гостевой виртуальной машине, а не как устройство USB. Поэтому внутри Linux драйвер последовательного порта используется, а не usb-serial (драйвер FTDI). Поэтому, если номер COM-порта равен 2, мы устанавливаем порт как COM2, устанавливаем режим для Host-Device и путь / файл для «COM2:» (не забывайте завершающий двоеточие, но, конечно, без «» знаки).

Перезапустите ВМ, и мне также пришлось перезапустить хост, и тогда вы можете идти.

Однако, если этот метод не работает - он не работает на моем нетбуке. Этот альтернативный метод, описанный здесь , работает. Разумеется, для этого требуется установить проприетарную поддержку EHCI USB 2.0, предоставляемую через дополнительный «пакет расширения».

1 голос
/ 06 ноября 2011

Не проверял, но должна быть возможность подключить USB-устройство от Windows к Ubuntu через VirtualBox после установки дополнений VirtualBox. Я предполагаю, что Windows должна знать об устройстве для маршрутизации, поэтому попробуйте установить драйвер микросхемы FTDI в Windows и Ubuntu и попытаться подключить вашу плату (посмотрите, найдут ли устройство Windows и Ubuntu).

Вы упомянули, что C / C ++ работает для вас, поэтому может быть гораздо проще просто выполнить установку прямо в Ubuntu и использовать настройку C / C ++, а не Arduino IDE. На игровой площадке Arduino есть руководство по настройке Ubuntu , а также руководство по средствам разработки

Вы также можете найти этот вопрос полезным. Попробуйте также сайт Electronics , так как он кажется более подходящим для вашего вопроса.

...