µISP-Stick

Für allgemeine Fragen gibt es hier die FAQ.

LadyAda hat vor einiger Zeit einen low-cost AVR-ISP entwickelt.

Im µC.net gab es eine Weiterentwicklung des Projekts unter dem Namen „AVR ISP Stick“ oder „Volksprogrammer“

Ich greife das Projekt auf und entwickle es mit Erlaubnis von Ada weiter.

Das gesamte Projekt bleibt unter der GPLv2 bzw CC AT/SA und kann also von jedem unter den entsprechenden Lizenzbedingungen weiterverwendet, … werden.

Da meine erste Version AVR-ISP-Sticks sehr gut ankommt habe ich nun eine weitere Version entwickelt. Bei dieser Version sind sämtliche SMD-Bauteile vorbestückt, sie ist also für Lötanfänger geeignet, die nicht den SMD-Schritt wagen wollen.

Die Kabellänge für das 6polige Programmierkabel sollte nicht über 30cm betragen. → Link

Die Treiberinstallation für Windows ist hier beschrieben.

Layout als PDF

  • Lötstopplack beidseitig
  • Bestückdruck
  • Durchkontaktiert
  • Pads chemisch Gold

Der Aufbau des Sticks ist sehr einfach, es müssen nur die zwei Stecker angelötet werden.

Falls man den Stick mit einem gewöhnlichen 6-poligen Programmierkabel mit Wannenbuchse verwenden will, müssen folgende zwei Pins aus der Stiftleiste entfernt werden:

Pins entfernen

Das geht am Einfachsten, wenn man die entsprechenden Pins zuerst mit dem Lötkolben erhitzt und sie dann mit einer Zange rauszieht.

Danach werden die Stiftleiste und der USB-Stecker in die Platine gesteckt:

Bitte überprüfen, dass der markierte Lötjumper NICHT verbunden ist

Bauteile einstecken

Und auf der Unterseite komplett verlötet:

Alle Pins verlöten

Nun ist der Stick bereits fertig. Damit sich die Platine über USB versorgt, muss noch der Jumper bei Power gesteckt werden, soll der Stick seine Spannung (2,4V - 5V) von der Zielplatine erhalten, kann der Jumper offen bleiben.

Damit der Stick unter Windows verwendet werden kann, muss zuerst ein Treiber installiert werden.

Wie das funktioniert ist in diesem Artikel beschrieben.

Alle Bausätze im Shop werden mit diesem Stick programmiert, jedoch mit avrdude.

Man kann mit diesem kleinen Tool über die Konsole den kompletten Programmiervorgang vornehmen (Flash, Fuses, …).

Eine kleine Anleitung wie man das macht gibt's hier.

Da nach aktuellem Stand (08.05.2016) die PID und VID des ispsticks nicht in avrdude eingepflegt ist, muss die avrdude.conf angepasst werden. Wie das geschieht ist in diesem Artikel beschrieben.

Dieser Stick dient wie angekündigt nicht nur als Programmierstick sondern ist eine komplette USB-Entwicklungs-Platform.

Auf der 10-poligen Stiftleiste befinden sich:

  • +5V
  • GND
  • MOSI
  • MISO
  • SCK
  • PB4
  • RxD
  • Txd
  • 2 Pins für Power (Brücke)

Die Belegung findet man auch hier im Wiki: ISP-Belegung

Zusätzlich sind noch folgende Kontakte auf Lötpads (durchkontaktiert) geführt:

  • PB1
  • PB2
  • PB3

Die Belegung der Pads kann man dem Bestückdruck oder dem Schaltplan/Layout entnehmen.

Für die Ausgabe sind zwei Pins mit Leuchtdioden verbunden:

  • PD5 (LED grün)
  • PB0 (LED rot)

Um den Stick über seinen eigenen ISP-Stecker zu programmieren (ein anderes Programmiergerät ist dafür nötig, auf ISP achten) muss der Lötjumper „RESET“ verbunden werden. Dieser verbindet den Reset-Pin des Controllers mit der Resetleitung des ISP-Steckers.

Für den normalen Betrieb muss der Lötjumper wieder entfernt werden.

Falls jemand ein Projekt mit dem Stick verwirklichen will oder schon hat stelle ich dafür gerne eine Seite (oder auch mehrere) im Wiki zur Verfügung