Atmel Atmega ISP Programmierung schlägt fehl

Von Pollin gibt es für 2,99 € ein ‚Entwicklungsboard‘ mit einem Atmega 168PA drauf. Die Beschreibung ist dürftig, insbesondere, wie der In System Programmiert werden kann. Bei mir lag so ein Board etwas länger rum, weil einfach die Zeit fehlte.

Durchpiepen der Leitungen zeigte dann, dass der Programmer an folgende Pins am Pollinboard angeschlosen werden musste:

ICSP 1 (MOSI) – 11
ICSP 2 (Vcc) – Vcc
ICSP 4 (Gnd) – GND
ICSP 5 (RST) – RST
ICSP 7 (SCK) – 13
ICSP 9 (MISO) – 12

Vergleiche dazu das Anschlusslayout des Olimex Programmers.

Aber alles, was ich versuchte, die Kommunikation funktionierte nicht. Die Fehlermeldung war:

Timestamp: 2018-10-29 18:08:45.435
Severity: ERROR
ComponentId: 20100
StatusCode: 1
ModuleName: TCF (TCF command: Device:startSession failed.)

Failed to enter programming mode. ispEnterProgMode: Error status 
received: Got 0xc0, expected 0x00 (Command has failed to 
execute on the tool)

Da keine meiner Ideen fruchtete, bin ich diesem Troubleshooting gefolgt. Oszilloskop an der RESET Leitung zeigte dann nicht einen, sondern mehrere (ich glaube 5) Reset-versuche durch den Programmer. Das sollte so nicht sein. Das Lesen der Gerätesignatur in Atmel Studio schickt einen Reset, wenn alles gut geht.

Letztlich stellte sich heraus, dass ich zwar die Pins richtig raus gesucht hatte, aber einfach meiner eigenen Anleitung nicht gefolgt bin. MOSI hatte ich mit GND verbunden, und schon ging nichts mehr.

Meine Lehre daraus: bei diesem Fehler kann es ganz einfach sein, dass ein Kabel nicht richtig angeschlossen ist. Am falschen Pin oder ein Kabelbruch – der Fehlercode ist immer derselbe wenn eins der ISP Signale fehlt, egal ob MOSI, MISO, SCK oder RST.

Atmel Mikrocontroller Programmieren mit Olimex AVR-ISP-MK2

Ich wollte ein Projekt mit AVR Mikrocontrollern machen. Zum einen, weil ich glaube, dass das für mein aktuelles Problem eine gute Idee ist, zum anderen, weil ich mal einen µC programmieren wollte. Auf Mikrocontroller.net gibt es ein Tutorial, das am Ende der Hardwareeinführung schön schreibt, dass man erst weiter machen soll, wenn die IDE mit der Hardware spricht….

Dafür habe ich mir bei Pollin den Olimex AVR-ISP-MK2 Programmer gekauft. (Bei Pollin 34,95€ + 4,95€ Versand, bei Olimex direkt 19,95€ + 15,76€ Versand).
Mit dem Atmel Studio 7 unter Windows 7 wollte der zunächst nicht laufen, die Fehlermeldung war „Unable to connect to tool AVRISP mkII (000200212345)“. In dieser Diskussion habe ich zum Glück eine Lösung dafür gefunden: Zadig mit dem Treiber libusb-win32. Allerdings habe ich auch Meldungen gefunden, dass das nicht zuverlässig sei, mal sehen.

Alleine mit dem Umstellen des USB-Treibers hat es bei mir immer noch nicht funktioniert. Erst, als der Olimex Programmer direkt an einem USB-Port am Rechner hing, und nicht – wie vorher – an einem USB-Hub, konnte ich das erste Programm tatsächlich zum Laufen bekommen.