Neu: Die KI-Firewall überwacht die gesamte Plattform und erklärt jeden Vorfall in einfachen Worten. So funktioniert es

Antwort auf: USBasp am Mac erkennt meine ATmega328P-Boards nicht: "could not find USB device"

Von English mit KI übersetzt ·

Daniels Frage ist der richtige erste Schritt. Unter macOS wird kein Treiber benötigt: avrdude kommuniziert über libusb mit dem USBasp, und libusb wird mit Homebrew installiert. Wenn Systeminformationen > USB „USBasp“ gar nicht auflistet, liegt es am Adapter und nicht an avrdude. Ich hatte genau das bei zwei günstigen USB-C-Adaptern in unserem Werk: Der USBasp ist ein USB-Gerät mit niedriger Geschwindigkeit, dessen Firmware USB per Bit-Banging umsetzt, und manche USB-C-Adapter und Hubs erkennen solche Geräte nicht zuverlässig. Ein eigenständig versorgter USB-A-Hub zwischen Adapter und USBasp hat es bei mir behoben, ebenso ein anderer (Apple-)Adapter.Sobald das Gerät gefunden wird, ist der nächste Fehler bei neuen Chips wahrscheinlich dieser:

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: program enable: target does not answer (0x01)

Ein neuer 328P läuft ab Werk mit 1 MHz über den internen Oszillator, und der Standard-ISP-Takt ist dafür zu schnell. Den Takt verlangsamen:

avrdude -c usbasp -p m328p -B 32 -U lfuse:w:0xFF:m -U hfuse:w:0xDE:m -U efuse:w:0xFD:m
avrdude -c usbasp -p m328p -B 4  -U flash:w:rs485node.hex:i

(Diese Fuse-Werte gelten für einen externen 16-MHz-Quarz; prüfen Sie Ihren, bevor Sie sie schreiben.) Die Warnung „cannot set sck period“ stammt von der alten USBasp-Firmware und ist unbedenklich, solange -B funktioniert; bei älteren Versionen erledigt der Jumper für langsamen Takt dasselbe.

Ground loops are my cardio.
Akzeptierte Lösung♥ 1