Устройство CP2102 не указано в /dev в macOS 10.13

У меня есть плата ESP32 с контроллером Silicon Labs CP2102. Когда я подключаю его к своему MacBook, я могу получить информацию об этом устройстве с помощью команды system_profiler SPUSBDataType, но оно не указано /devкак виртуальный последовательный порт, поэтому я не могу с ним связаться.

    CP2102 USB to UART Bridge Controller:

      Product ID: 0xea60
      Vendor ID: 0x10c4  (Silicon Laboratories, Inc.)
      Version: 1.00
      Serial Number: 0001
      Speed: Up to 12 Mb/sec
      Manufacturer: Silicon Labs
      Location ID: 0x14200000 / 5
      Current Available (mA): 500
      Current Required (mA): 100
      Extra Operating Current (mA): 0

Я использую официальный драйвер, загруженный с https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers .

Любые идеи, как сделать его видимым в /dev? У меня также установлена ​​​​Windows на том же компьютере, где она работает нормально, поэтому аппаратное обеспечение и кабель USB в порядке.

Ответы (2)

Я обнаружил, что macOS High Sierra заблокировала все неподписанные/неуправляемые расширения ядра, а в руководстве по расширению ядра SiLabs нет информации о том, как вручную включить необходимые расширения.

Отличный обзор этого процесса можно найти в блогах человека — вот одно из таких руководств:

Вот шаги, чтобы разрешить это расширение:

  1. Перейдите в «Системные настройки» -> «Безопасность и конфиденциальность».
  2. В нижней части окна вы увидите сообщение «Системное программное обеспечение от разработчика «SiLabs» заблокировано для загрузки».
  3. Нажмите на кнопку «Разрешить»
  4. Перезагрузите свой Mac

Теперь мое устройство указано как /dev/cu.SLAB_USBtoUARTи все работает как положено.

Отличный вопрос и еще лучший ответ. Спасибо, что сообщили людям о дополнительных шагах. Я добавил блог. Надеюсь, вы не возражаете, если я добавлю его на «отлично». Пожалуйста, отредактируйте сообщение по мере необходимости в соответствии с вашими потребностями, если это необходимо.

Проверьте, распознается ли ваша плата, как описано в этой ссылке, и если да, но связь по-прежнему отсутствует, вам может потребоваться установить libusb с доморощенным или аналогичным. Хорошим инструментом, с которым можно поэкспериментировать прежде всего, является CoolTerm (легко найти...).