tiny little gizmos

Nokia 6100 Display am Arduino

Ich hatte seit längerem ein Arduino und das “Nokia 6100” LCD Shield von Sparkfun (eine Platine mit 128x128Pixel Farbdisplay zum Aufstecken) in einer Kiste rumliegen, hatte aber nie etwas damit gemacht. Da ich auf dem 29c3 auch ein bischen rumgelötet habe, dachte ich mir, dass ich jetzt auch mal das LCD Shield fertigbauen könnte.

Gesagt, getan, gelötet

Um das Shield auf den Arduino aufstecken zu können, müssen zunächst einmal Stiftleisten angelötet werden. Das st mir trotz meiner beiden linken Daumen auf Anhieb gelungen. LCD aufgesteckt, Arduino an Strom angeschlossen und das Display ist beleuchtet, zeigt aber natürlich noch nichts an. Soweit ist erst einmal alles toll!

Bastelstunde

Bastelstunde

Nun wollte ich das Display gleich mal mit den Beispielen (siehe Sparkfun Produktseite) testen. Also zunächst die Treiber und Beispiele runtergeladen und installiert. Meine Arduino IDE läuft auf einem Netbook mit Linuxmint 12 – also quasi Ubuntu. Das komplette Verzeichnis ColorLCDShield wird unter

~/sketchbook/libraries/

abgelegt. Danach können die Beispiele in der IDE unter

Datei/Sketchbook/libraries/ColorLCDShield/Examples/

geladen werden.

Troubleshooting – Arduino.h und bunter Schnee

Bei mir ließen sich die Beispiele natürlich erst einmal nicht übersetzen, sondern brachen mit der Fehlermedung “Fatal error : Arduino.h not found” ab. Diese Headerdatei sollte eingentlich im Verzeichnis

/usr/share/arduino/hardware/arduino/cores/arduino/

zu finden sein. Das war bei mir nicht der Fall. Nach längerem Hin- und Her habe ich die Arduino Software, die ich über die Softwareverwaltung installiert hatte, gelöscht und durch ein aktuelles Paket von Google ersetzt. Danach funktionierte die Übersetzung.

Leider zeigte das Display nach dem Hochladen der Beispiele nur bunten Schnee an. Mein erster Verdacht (Lötbrücken oder so) bestätigte sich nicht. Die Ursache lag am falschen Displaytyp. Sparkfun schrieb auf der Produktseite, dass zwei verschiedene Displaytypen verbaut werden: Bei einem roten Aufkleber von Epson und bei einem blauen Aufkleber von Phillips. Mein Display hatte einen roten Aufkleber und war trotzdem von Phillips. Nachdem ich im Programmcode die initialisierung von

lcd.init(EPSON);

auf

lcd.init(PHILLIPS);

geändert hatte, lief alles wie gewünscht.

Letztlich doch Erfolg

Letztlich doch Erfolg

Und jetzt schauen wir mal, was man tatsächlich mit dem Teil anfangen kann…