Як перезапустити USB-підсистему?


13

Я розробляю Arduino, і іноді USB-порт, який використовується, перестає працювати. Потім мені потрібно підключити пристрій до іншого USB-порту. Після того, як усі порти USB перестануть працювати, мені доведеться перезапустити машину, яка справді дратує.

Наскільки я пам'ятаю, є команда, яка здатна перезапустити USB підсистему окремо, але я не можу запам’ятати. Як можна перезапустити USB, не перезавантажуючи всю систему?

Я використовую macOS Sierra.

Це відрізняється від питання Скидання USB-порту на MacBook Pro, оскільки мені потрібно лише рішення програмного забезпечення, оскільки мої порти USB заморожені - це означає, що вони припиняють роботу до повного перезавантаження системи. Повинно існувати спосіб перезавантаження USB-підсистеми окремо.


Яку модель (-ів) Mac ви використовуєте?
IconDaemon

2
Чому це не пов'язано з Mac? Йдеться про порти USB на його Mac, а також про те, як перезапустити USB-систему на Mac, а не на Arduino. З іншого боку, спільнота Ardiono може бути кориснішою, оскільки вони частіше будуть бачити цю проблему. arduino.stackexchange.com
SPRBRN

З мого коментаря, який починається "З того, як формулюється ваше запитання ..." розповідається, чому, здається, це не пов'язано з Mac. Вам потрібно чітко сформулювати, у чому полягає ваша проблема, який ви очікуєте результату та яке ваше оточення. Пам'ятайте, ми не там, щоб дивитися через ваше плече. Крім того, на це запитання нещодавно відповіли, що стосується вашого питання apple.stackexchange.com/questions/294944/…, тож тепер ваше запитання (на основі коментарів) потенційно є дурним.
Аллан

Цей вид звучить як проблема XY. Можливою причиною проблеми є те, що пристрій Arduino забирає занадто багато енергії та перегріває шину USB. Підключіть його до зовнішнього USB-концентратора та підключіть зовнішній пристрій USB-концентратора до Mac.
користувач3439894

Відповіді:


5

Ви можете скинути USB-шину за допомогою USB Prober.app. Він не входить до XCode, але ви можете завантажити його окремо зі сторінки завантаження розробника Apple . Вам потрібно буде зареєструватися та увійти.

  1. шукати iousbfamily
  2. Завантажте останній файл випуску журналу IOUSBFamily (на момент публікації цього повідомлення IOUSBFamiliy Log Release for OS X 10.9.3)
  3. Змонтуйте .dmg і перейдіть до каталогу за допомогою IOUSB-XXXXXX-журналу.
  4. НЕ встановлюйте. Просто клацніть правою кнопкою миші пакет і "Показати зміст пакета"
  5. Розпакуйте Archive.pax.gz; файл USBProber.app буде в/Archive/DevTools/Hardware


Важливо:

Щойно запустивши програму, ви скинете шину USB. Переконайтесь, що ви демонтували будь-які диски, які ви не хочете безцеремонно та неправильно видалити!


Я не в змозі скинути USB за допомогою цього USB Prober. Чи можете ви вказати, як це зробити?
haxpanel

Щойно запустивши USB-пробник, його буде скинуто. Що ти робив і що сталося?
Аллан

2
Я робив усе відповідно до вашої відповіді, але додаток не скидає її.
haxpanel

Я чітко пам’ятаю, що була команда перезапустити прокляту USB дурницю. 1 команда, в терміналі. Мені просто не потрібно перезапускати його в звичайний день, щоб я його забув ....
haxpanel

Дійсно, це тут не працює. Намагався встановити "погану" палицю USB на останню Сьєрру. Більше жодних паличок не розпізнається до перезавантаження. Зовнішня периферія все ще працює після поганої палички, USBProber нічого не скидає при запуску. Іншим способом?
LаngLangС

2

Мені вдалося скинути свій адаптер USB LAN за допомогою цієї команди

$ USB\ Prober.app/Contents/Resources/reenumerate -v 0x00000bda,0x00008153
Verbose mode ON
Looking for vid: 0xbda, pid: 0x8153
Found "USB 10/100/1000 LAN" @ 0x14640000
Calling USBDeviceReEnumerate
ResetDevice returns 0x00000000

Як отримати Prober.app пояснюється тут: Як перезапустити USB-підсистему?


1
Що таке Prober.app? Що саме тут відбувається? Який каталог USB?
IceFire

1
У Mojave ця команда за допомогою USB Prober не працює для мене. Я бачу перші два рядки, але нічого після цього.
Патрік Чу
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.