Erste Schritte mit einem Arduino Leonardo ETH

Send to Kindle

Gestern hat mich ein Bekannter eines Bekannten gefragt, ob ich nicht Lust hätte, für eines seiner Projekte die Arduino-Arbeit zu übernehmen. Das Projekt ist cool und die Leute mit denen ich zusammenarbeite sind sehr ruhig und angenehm. Da passt alles, so habe ich zugesagt. Details, Links und Youtube-Videos darf ich in etwa einem Monat posten.

Passende Arduinos hatte der Kunde auch schon zur Hand. Auf den ersten Blick perfekt passende: Arduino Leonardo ETH. ATmega32u4 und Wiznet 5500 Ethernet. Ein toller, schneller Ethernetchip mit 16k-Puffer sieht ideal dafür aus, UDP mit geringer Latenz zu verarbeiten und der 32u4 ist so schlecht nicht. Dieses Board hatte nich nicht auf dem Radar, da ich seit des Beginns des Rosenkriegs vor allem Boards von Drittanbietern bevorzuge, welche sich die Unterstützung der IDE auf die Fahnen geschrieben haben.

Anyway, Leonardo ETH schaut tauglich aus, also losgelegt.

Erstes Problem: Die Arduino IDE (die von .cc und die von .cc) meldet jeweils, dass der Port /dev/ttyACM0 belegt sei. Ich war das nicht. WTF? Stellt sich heraus, dass der Modem Manager vom Network Manager sich die Device greift. Ein weiterer Grund, auf NetworkManager und Co zu verzichten und Connman zu verwenden. Doch ich schweife ab. Die Lösung für dieses Problem findet sich hier: Per UDEV-Regeln dem Modem Manager den Zugriff auf Geräte von Arduino.org entziehen.

Zweites Problem: Dieser eine Leonardo ETH ließ sich erst nicht zuverlässig flashen. Daraufhin ersetzte ich den Bootloader durch den des „normalen“ Leonardo. Da war erst einmal alles gut, aber nach ein paar Stunden war wieder System und Bootloader korrumpiert. Ich hoffe, nur eine faule Platine erwischt zu haben und flashe mal den Sketch ohne Bootloader…