Arduino!

“War ich Dir eigentlich bisher ein guter Ehemann?” Mit dieser leicht suggestiven Frage habe ich Schöne darauf vorbereitet, dass ich ihr heute einfach übers Wochenende nach Köln verschwunden bin – auf das Computersportfreundetreffen Sigint 09. Die Verlockung: Einen ganzen Tag unter Geeks – und dann auch noch: selber machen.Nach Jahren der 8bittigen Enthaltsamkeit mal wieder selbst mit Mikrocontrollern herumspielen – das klappt am besten, wenn man nicht allein ist dabei. Und ich werde, wie sich zeigen soll, alles andere als allein sein.

r9u Auch Seminarleiter Philip – er betreibt unter anderem das Bausteinbastler-Blog bausteln.de – ist vom Andrang überascht – er hatte sich das Ganze wohl ein wenig intimer vorgestellt. Aber er lässt sich nicht abschrecken. Zunächst theoretisch, dann praktisch will er den Neugierigen den “Arduino”-Mikrocontroller nahe bringen – und hat eine ganze Kiste der Controller dabei: Learning by doing. (Eine Kiste Lötkolben hat Philip auch dabei, die aber aus Zeitgründen nicht zum Einsatz kommen werden.)

Das Großartige an der Arduino-Hardware ist, dass sie nicht von Geeks entwickelt wurde (naja – nicht von hauptberuflichen), sondern von Künstlern. Die wollten nicht möglichst mächtige Hardware haben, sondern einen einfachen, robusten, billigen Controller. Der sich in einer Art Küchen-C programmieren lässt – wie sagte doch der grimmige Security-Hacker heute morgen in seiner Keynote? Ein Großteil aller Sicherheitsprobleme leiten sich ab von dem Satz: “Echte Männer programmieren in C”? Anyway: der sich unkompliziert programmieren lässt und für den es eine wunderbar einfache Entwicklungsumgebung gibt. Für Windows, MacOS und Linux. Und damit fangen die Probleme an.

Wie es nämlich bei einer solchen Veranstaltung auch nicht anders zu erwarten ist, sind die Linuxer stark in der Überzahl. Philip wiederum entwickelt normalerweise nicht mit einer Linux-Maschine, und kann bei der Installation des Entwicklungssystems leider nicht helfen. Das erwartet eine Reihe von Paketen, die (a) herausgefunden und (b) nachinstalliert werden wollen; da sich in nullkommanix verschiedenste Systemstände ergeben und auch noch genau in diesem Moment dasWorkshop-WLAN ächzend zusammenbricht, entwickelt die nun folgende kleinkollektive Lösungssuche eine gewisse fröhliche Dynamik. (Der Vollständigkeit halber: Ein Linux-Howto am Ende dieses Artikels.)

Knobeln an Arduino-Library-Problemen auf der Sigint 09

Darüber wäre fast die Mittagspause verstrichen – gemeinsam mit ein paar sehr sympathischen Mitgliedern der “Piratenpartei” rette ich mich as dem Raum in die nächst gelegene Pizzeria.

Vor Jahr und Tag war ich in Berlin mal auf einem ganz ähnlichen Workshop. Ein Wien Musiker und Künstler, der auf dem Medienkunst-Fest “Transmediale” einen Workshop für Gameboy Hacking anbot (er selbst produzierte mit gehackten Gameboys Tanzmusik). Der Workshop richtete sich gezielt an Kinder – und die Kids waren schneller. Aber es muss ja nicht immer ein großes Projekt sein – wie sagte einer der sympathischen Piraten: “Nocch nie habe ich mich so über eine blinkende Leucchtdiode gefreut!” Und ich fahre zufrieden mit einem Arduino samt Ethernet-Board nach Hause und kann von daher nur ein uneingeschränkt positives Fazit ziehen: In der Gruppe war die Berührungsangst mit der neuen Hardware im Nu verflogen. Mal sehen, ob der vom geschätzten Kollegen Klein moderierte Talk über Games Culture ein ebensolches Highlight wird.

Nachtrag, 24.5.: Bericht eines versierten Arduino-Enthusiasten aus demselben Workshop hierund: die “Freeduino”-Seite der dahinter stehenden User Group enthält nützliche Einsteiger-Tipps, Beispiele und viele Hacks.

Womit wir bei diesem Thema wären: Hier noch die versprochenen Zusatzinfos für Arduino-Interessierte.Ein Arduino ist ein 8-Bit-Controller, der mit 16MHz gemütlich getaktet wird, 14 digitale i/O und 6×10 Bit Analog In bietet (und noch ein bisschen). Er ist per USB programmierbar; in einer auf C/C++ aufsetzenden Sprache; deutsche Sprachreferenz hier beim Freeduino-Projekt.

Wer sich die in Java realisierte Entwicklungsumgebung installieren will, sollte unter Linux die folgenden Pakete installieren:

  • gcc-avr (der Crosscompiler für den Atmel-Mikroprozessor)
  • avr-libc (die Basis-Bibliothek)
  • avrdude (Kommunikation mit dem Arduino)
  • binutils-avr (wird vom Compiler benötigt)

Diese Pakete mit sudo apt-get install <paketname> ziehen, und dann… klappt alles, wenn man nicht Pech hat. Beziehungsweise eine wilde Linux-Variante wie einer meiner Tischnachbarn, der mit einem Einfachst-Fenstermanager und Eigenbaukernel in ein paar Probleme geriet. Oder ein anderer Mitbastler, der eine ältere Ubuntu-Version einsetzte, die aber dummerweise nur die Version 4.2 des Crosscompilers GCC installierte – erst die aktuelle 4.3 kennt unseren Arduino und sein Atmel328-Herz.

Oh, und wenn die Entwicklungsumgebung ohne Fehler gestartet ist, sollte man im Menü “Tools/Board…” noch den richtigen Controller einstellen – und wenn man lesen kann, dass es da neben dem “Arduino Duemilanuove” ganz oben noch einen “Arduino Duemilanuove w/ AtMega 328” gibt und gleich diesen einstellt, ist man mir gegenüber klar im Vorteil. Die richtige “serielle Schnittstelle” über USB findet man am besten per Ausprobieren raus – bei mir war’s ttyUSB1, was ber schon deshalb logisch war, weil es diese Schnittstelle ohne eingestöpselten Arduino an meinem EEE nicht gibt.

Und jetzt… Gentlemen, start your engines. Bin selbst gespannt, was mein erstes Ard-Projekt wird. Eine Espressomaschine mit Webinterface? Ein Senso 2.0? Eine Katzenschrecke? Ein simpler Universal-Sensor per Ethernet und USB? Stay tuned.

Verwandte Artikel:

5 thoughts on “Arduino!

  1. Hallo untergeek,

    als Teilnehmer muss ich sagen, dass Dein Artikel sehr gut die Atmosphäre des Workshops wiedergibt, da macht sich der Journalist bemerkbar ;-).

    Darf ich eines Deiner Bilder für den Artikel auf freeduino.de verwenden?

    Übrigens habe ich mir dann auch noch ein Ethernet-Shield gekauft, das mit den Beispielcodes dann auch gezuckt hat. Am PC funktioniert das ganze mit einem Cross-Over-Kabel (Macs sollen das intern wohl selber switchen) oder eben direkt an einem Router.

  2. Hallo Untergeek,

    gibts noch mehr Arduinosfreunde im Rhein Main Gebiet? Hier in Darmstadt sieht es dünn aus. Auch im Forum ist aus der Mitte wenig zu sehen.

  3. Danke für die Erlaubnis ein Foto zu verwenden. Dummerweise hatte ich gar nicht an meine Kamera gedacht.

    Und verhelft Martin zu einer Usergroup oder sonstwas in Rhein-Main ;-), am übernächsten Wochenende wird er extra von Rhein-Main nach Aachen. Wenn ihr den nicht haben wollt, wir nehmen in mit Kusshand ;-)

  4. … bin auch in Rhein-Main (privat Nähe Hanau, beruflich Ffm), bastele mit div. Microcontrollern – auch einem Arduino Mega – und beschäftige mich hauptsächlich mit der Entwicklung/Optimierung fürs CNC-Fräsen, 3D-Drucken und Laserschneiden/LOM-fabben …

    VDX

Leave a Reply

Your email address will not be published.