Aus Raspberry Pi Geek 06/2021

Neue Flash-Software für Microchips PIC-Prozessoren

© Ganna Poltoratska / 123RF.com

Feuer und Flamme

Bernhard Bablok

Zum Flashen von PIC-Prozessoren des US-Herstellers Microchip Technology braucht es einen Programmer wie den PICKit 2. Die dafür nötige Software gibt es jetzt auch für den Raspberry Pi.

Microchip offeriert mit MPLAB X [1] eine eigene, der Arduino-IDE ähnelnde grafische Entwicklungsumgebung, aber der Support für Linux war bisher halbherzig und die Performance unzureichend. Darüber hinaus möchten Entwickler ihren Code sowieso am liebsten mit dem gewohnten Editor erstellen. Das Starten einer fetten IDE, nur um den fertig übersetzten und gelinkten Code auf den Chip zu schreiben, verursacht dabei zu viel Overhead.

Für den weniger als 10 Euro teuren Programmer PICkit 2 von Microchip (Abbildung 1) gibt es die Schaltung und Software zwar im Quellcode [2], doch der Hersteller pflegt und unterstützt beides bereits seit 2009 nicht mehr [4]. Besitzer neuerer Chips mit anderen Transferprotokollen haben genauso das Nachsehen wie Besitzer des Nachfolgemodells PICKit 3. Das gilt übrigens auch unter Windows, denn Microchip hat den Support für die beliebten Geräte 2012 eingestellt.

Abbildung 1: Der PICKit-2-Programmer von Microchip Technology kostet weniger als 10 Euro. Offiziell wird die dafür nötige Software jedoch seit 2009 nicht mehr weiterentwickelt.

Abbildung 1: Der PICKit-2-Programmer von Microchip Technology kostet weniger als 10 Euro. Offiziell wird die dafür nötige Software jedoch seit 2009 nicht mehr weiterentwickelt.

Hier springt die kleine britische Software-Schmiede PICKitPlus-Team, inzwischen ein offizieller Partner von Microchip Development, in die Bresche. Mit ihrem Programm PICKitPlus erweckt sie die alten Flasher wieder zum Leben. Das Besondere: Seit Kurzem gibt es auch eine native Version für den Raspberry Pi [4].

Installation

Die Software für den RasPi gibt es nicht zum Nulltarif, aber für einen fairen Preis von 13 britischen Pfund, je nach Kurs etwa 14 bis 15 Euro. Er schließt Updates für ein Jahr mit ein. Die Einzelnutzerlizenz erlaubt die Installation des Programms auf mehreren Geräten, so lange nur der registrierte Anwender es nutzt.

Die Datenbank mit den Chips steht auf Github [5] bereits, sodass die Software auch nach dem offiziellen Support-Ende neue Chips unterstützt, so lange sie nicht neue Flash-Protokolle erfordern. Nach der Lizenzierung bekommen Sie einen Link zu Ihrer personalisierten PICKitPlus-Version. Es handelt sich um ein Tar-Archiv mit der ausführbaren Datei im AppImage-Format [6] sowie einer Reihe von Support-Dateien.

Normalerweise ist der Autor kein AppImage-Fan, da damit im ungünstigsten Fall dieselben Bibliotheken immer und immer wieder auf der Platte landen, aber bei PICKitPlus hält sich der Overhead in Grenzen, und das Entwicklerteam und die Nutzer profitieren von der einfachen Installation.

Die Installation erledigen Sie mit den Befehlen aus Listing 1. Die Kommandos entpacken das Tar-Archiv und setzen anschließend einen symbolischen Link auf das AppImage. Da das Verzeichnis /usr/local/bin/ normalerweise in der $PATH-Variable steht, können Sie das Programm anschließend mit dem Befehl pkcmd-pi ohne Eingabe des vollständigen Pfads ausführen.

Listing 1

Installation der Software

$ sudo tar -xvzpf pkcmd-pi-3.02.tar.gz -C /usr/local/lib
$ sudo ln -s /usr/local/lib/pkcmd-pi/pkcmd-pi-armhf.AppImage /usr/local/bin/pkcmd-pi
$ sudo pkcmd-pi --configure-no-root
$ sudo udevadm control --reload

Die letzten beiden Zeilen des Listings konfigurieren per Udev-Regel den Zugriff von normalen Benutzern auf die USB-Flasher PICKit 2 und 3. Steckt das Gerät bereits am Rechner, müssen Sie es nach der Installation noch einmal ab- und wieder anstecken, damit die neue Regel greift.

Bei einem späteren Update genügt es, nur den ersten Befehl zu wiederholen und dabei lediglich die Versionsnummer der heruntergeladenen Datei anzupassen. Die Installation funktionierte auf diversen Pi-OS-Versionen, auf OpenSuse sowie unter Armbian auf einem NanoPi Neo. Die Software steht aktuell nur für 32-Bit-Systeme bereit, und laut Hersteller bleibt das so, bis Bedarf an einer 64-Bit-Version entsteht.

Die Software läuft auf jedem RasPi, auf einem Pi Zero allerdings recht langsam. Ginge es nur um das Flashen der finalen Version der Hex-Datei gehen, könnte man damit problemlos leben. Während der Entwicklungsphase mit vielen Testzyklen greifen Sie besser zu einem leistungsfähigeren RasPi-Modell. Beim Arbeiten auf einem Raspberry Pi 4 spüren Sie kaum einen Unterschied mehr zu einem Desktop-Linux auf einem klassischen PC; hier ist der Chip selbst das begrenzende Element.

Erste Schritte

Der Aufruf pkcmd-pi -h spuckt eine Übersicht der verfügbaren Optionen aus (Abbildung 2). Der Schalter -j liefert stattdessen eine Liste der angeschlossenen Flasher, und der erste Befehl in Abbildung 3, pkcmd-pi -w -p12f1612 -i -gc, gibt Informationen über den aktuell verbundenen Chip aus.

Abbildung 2: Mit dem Kommando <code>pkcmd-pi -h</code> erhalten Sie zum Einstieg eine &Uuml;bersicht aller wichtigen Optionen des Flash-Werkzeugs.

Abbildung 2: Mit dem Kommando pkcmd-pi -h erhalten Sie zum Einstieg eine Übersicht aller wichtigen Optionen des Flash-Werkzeugs.

Abbildung 3: Bevor Sie mit dem Flashen starten, liefert der entsprechende Aufruf von <code>pkcmd-pi</code> Informationen zum eingelegten Chip.

Abbildung 3: Bevor Sie mit dem Flashen starten, liefert der entsprechende Aufruf von pkcmd-pi Informationen zum eingelegten Chip.

Sind Sie sich nicht sicher, welcher Chip genau angeschlossen ist, kennen aber zumindest die Chip-Familie, hilft die Variante pkcmd-pi -w --family 18 -i -gc des Kommandos (Abbildung 3, ganz unten). Deren Ausgabe unterscheidet sich nicht von der ersten Version des Aufrufs. Das funktioniert übrigens bei allen Befehlen, die eine Angabe des Chips erfordern, etwa beim Auslesen des Speichers oder beim Schreiben des Programms.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben