이 일반적인 방법으로 할 까다로울 수있다.
짐승 - 강제 방법은 다음과 같습니다 차례로 열려있는 USB 시리얼 장치를() 각 열거하고 펌웨어 부팅 헤더가 다른 쪽 끝에서 전송되는 경우를 참조하십시오. OSX에서 USB 직렬 장치는 /dev/tty.*에 있지만 향후 OS 업데이트로 변경 될 수 있습니다. 이 방법은 효과가 있지만 느리고 시간에 민감 할 수 있습니다. 나는 머리글을 보내기 전에 Arduino의 시작 지연뿐만 아니라 간단한 "안녕하세요, 거기 있습니까?"명령을 사용하여 호스트가 생명의 징후를 강타 할 수 있음을 알았습니다.
또한 마지막으로 발견 된 포트를 저장하여 후속 앱을 시작하면 해당 포트를 먼저 시도 할 수 있습니다.
변형 : 사용자가 시작시 Arduino를 플러그인하도록 요청하는 경우/dev에 USB 포트를 나열하고 사용자가 플러그인되어 있는지 확인한 다음 포트를 다시 나열 할 수 있습니다. 새로 등장한 장치가 Arduino 일 가능성이 큽니다.
다음 단계에서
, 당신은 USB 공급 업체 및 제품 ID (VID & PID)에서 볼 수 있었다. 그러나이 ID는 모두 Arduino-land의지도 위에 있습니다. 모델, 버전, 개정판, 중국어 복제본 및 다양한 Arduino 호환 장치에 따라 다릅니다. 이 writeup at Adafruit을 참조하십시오.
그냥 일이 매우 좁은 하드웨어 세트와 함께 작동하도록하려는 경우 (예를 들어, 당신의 벤치에 한 아두 이노), 당신은 USB 장치 정보를보기 위해 OSX 명령을 사용할 수 있습니다
system_profiler SPUSBDataType
을 내 시스템으로, 내가 얻을 : /dev/cu.usbmodem3d11
하는 01,238,123,435,946,791,563,267,527,773를 참조하십시오
이
...
USB Bus:
Host Controller Location: Built-in USB
Host Controller Driver: AppleUSBUHCI
PCI Device ID: 0x7fff000027c9
PCI Revision ID: 0x7fff00000002
PCI Vendor ID: 0x7fff00008086
Bus Number: 0x3d
Communication Device:
Product ID: 0x0043
Vendor ID: 0x2341
Version: 0.01
Serial Number: 75331313133351800000
Speed: Up to 12 Mb/sec
Manufacturer: Arduino (www.arduino.cc)
Location ID: 0x3d100000/2
Current Available (mA): 500
Current Required (mA): 100
위치 ID가 (0x3d100000/2) 장치 이름과 일치하는 것은 Ruby 스크립트에서 명령 줄 명령을 실행하는 데 사용됩니다.
'lsusb'를 파싱 해 보셨습니까? – screenmutt
내 질문을 편집했습니다. OSX – Himberjack
https://github.com/jlhonora/lsusb? – screenmutt