Wikipedia · einfach zusammengefasst · Stand
Arduino (Plattform)
Arduino ist eine aus Soft- und Hardware bestehende Physical-Computing-Plattform. Beide Komponenten sind quelloffen. Die Hardware besteht aus einem einfachen …
Inhalt6 Abschnitte
Was ist Arduino?
Arduino ist eine Physical-Computing-Plattform, die aus Soft- und Hardware besteht; beide Teile sind quelloffen (Open Source). Die Hardware ist ein einfaches E/A-Board mit einem Mikrocontroller sowie analogen und digitalen Ein- und Ausgängen. Die Entwicklungsumgebung basiert auf Processing und soll auch technisch weniger Versierten den Zugang zur Programmierung und zu Mikrocontrollern erleichtern. Programmiert wird in einer C- bzw. C++-ähnlichen Sprache (Dateien meist mit der Endung .ino); technische Details wie Header-Dateien werden weitgehend verborgen, und umfangreiche Bibliotheken und Beispiele vereinfachen die Arbeit. Arduino kann eigenständige interaktive Objekte steuern oder mit Software auf Computern interagieren (z. B. Adobe Flash, Processing, Max/MSP, Pure Data, SuperCollider, Skriptsprachen, Terminal, vvvv). Es wird z. B. an Kunsthochschulen für interaktive Installationen genutzt. Beim Prix Ars Electronica 2006 erhielt das Projekt eine Anerkennung in der Kategorie Digital Communities. Die Software steht unter LGPL/GPL, das Projekt unter www.arduino.cc.
Geschichte
Grundlage war das Board Wiring von Hernando Barragán (ATmega168). 2005 entwickelten Massimo Banzi und David Cuartielles den ersten Arduino, der auf dem günstigeren ATmega8 basierte. Der Name stammt von einer Bar in Ivrea, in der sich einige Gründer trafen; die Bar war nach Arduin von Ivrea benannt, der von 1002 bis 1014 König von Italien war. David Mellis erweiterte die ebenfalls auf Barragáns Arbeit basierende C/C++-basierte Diktion. Der Schaltplan wurde im Netz unter einer Creative-Commons-Lizenz veröffentlicht. Die erste Auflage umfasste 200 Boards, davon gingen 50 an eine Schule; bis 2008 wurden etwa 50.000 Boards verkauft.
Rechtsstreit um die Marke Arduino
Von Januar 2015 bis Ende August 2016 stritten die Gründergruppe (Arduino LLC) und die Board-Produzenten (Arduino S.r.l.) um die Inhaberschaft der Marke Arduino: Arduino S.r.l. hatte die Marke für die Nizza-Klassen 9 und 42 registriert, Arduino LLC zeitgleich in den USA nur für Klasse 9. Im März 2015 gab Banzi bekannt, dass Arduino S.r.l. seit einem Jahr keine Lizenzgebühren mehr zahle, mit denen zuvor die relativ hohen Board-Preise begründet wurden. Zeitweise gab es zwei Webseiten (arduino.org der S.r.l., arduino.cc der LLC) mit unterschiedlichen, nicht vollständig kompatiblen IDE-Varianten; mit Version 1.8 wurden beide wieder zusammengeführt, sodass eine offizielle Version die Boards beider Unternehmen unterstützt.
Marke Genuino und Kauf durch Qualcomm
Am 16. Mai 2015 stellte Banzi bei einer Make-Veranstaltung in San Mateo den Markennamen „Genuino“ vor, für Orte, wo die Markenrechte an Arduino ungeklärt sind. Künftig sollten mehrere Hersteller Boards fertigen; erster offizieller Hersteller war Adafruit Industries (Bestätigung durch Gründerin Limor Fried). Im Juni 2015 kündigte Banzi in Shenzhen die Zusammenarbeit mit Seeedstudio an, das Boards für den asiatischen, insbesondere chinesischen Markt fertigen soll. Auf der Maker Faire Rom im Oktober 2015 wurden erstmals europäisch produzierte Genuino-Boards verkauft, gefertigt von Watterott electronic (Deutschland) und AXEL Elettronica (Italien). Genuino-Boards sollten außerhalb der USA verkauft werden und sich außer dem Namen nicht von den bisherigen Boards unterscheiden; die Rechtslage zu Arduino sei offenbar nur in den USA eindeutig. Bei der World Maker Faire 2016 einigten sich beide Seiten: Vertrieb aller Produkte über eine neu gegründete Arduino Holding, Gründung der gemeinnützigen Arduino Foundation für die Open-Source-Entwicklung der Arduino Desktop IDE. Arduino S.r.l. und Arduino LLC gingen Ende 2016 in der Arduino AG auf; diese wurde nach Betrugsvorwürfen gegen Geschäftsführer und Hauptanteilseigner Federico Musto von der BCMI (gegründet von Arduino-Gründern) aufgekauft. Am 7. Oktober 2025 wurde die Übernahme Arduinos durch Qualcomm bekannt.
Hardware
Typische Arduino-Boards basieren auf einem Microchip-AVR-Mikrocontroller der megaAVR-Serie, z. B. dem ATmega328. Abweichungen gibt es u. a. beim Arduino Due (Arm Cortex-M3 32-Bit-Prozessor Atmel SAM3X8E) sowie bei Yún, Tre, Gemma und Zero. Die Boards Yún und Tre besitzen zusätzlich zum Mikrocontroller einen stärkeren Mikroprozessor. Alle Boards werden über USB (5 V) oder eine externe Spannungsquelle (7–12 V) versorgt und haben einen 16-MHz-Schwingquarz; es gibt Varianten mit 3,3 V und abweichendem Takt. Dritthersteller bieten Arduino-kompatible Industrievarianten mit Hutschienenmontage und 24 V an, die einige Aufgaben einer SPS (Speicherprogrammierbare Steuerung) übernehmen können. Konzeptionell werden alle Boards über eine serielle Schnittstelle programmiert, wenn Reset aktiv ist; ein vorinstallierter Bootloader erlaubt Programmierung ohne externes Programmiergerät. Ältere Boards nutzten RS-232, spätere einen USB-Seriell-Konverter (zuerst FT232RL von FTDI, dann ATmega8u2). Der Arduino Leonardo verwendet den ATmega32u4 mit nativer USB-Unterstützung und kann sich gegenüber einem PC auch als Tastatur oder Maus ausgeben. Alle Boards außer dem Esplora stellen digitale I/O-Pins bereit, viele davon mit PWM-Ausgabe; zusätzlich gibt es analoge Eingänge (optional auch als digitale Ausgänge nutzbar). Zur Erweiterung gibt es aufsteckbare Platinen („Shields“) sowie Steckplatinen für den Schaltungsaufbau.
Software und Programmierung
Arduino bringt eine eigene integrierte Entwicklungsumgebung (IDE) mit, basierend auf der Wiring IDE. Es ist eine kostenlose Java-Anwendung für Windows, Linux und macOS, aufgebaut auf der Processing-IDE (spezialisiert auf Grafik, Simulation, Animation). Die IDE enthält einen Code-Editor und bindet gcc als Compiler sowie die avr-gcc-Library und weitere Arduino-Bibliotheken ein, die die C-/C++-Programmierung stark vereinfachen. Über Erweiterungen können auch andere Mikrocontroller wie ESP8266, ESP32, STM32 oder MSP430 programmiert werden. Ein Programm (in Arduino-Sprache: „Sketch“) benötigt nur zwei Funktionen: setup() (beim Start einmalig aufgerufen, z. B. um Pins als Ein- oder Ausgang zu definieren) und loop() (danach in einer Endlosschleife immer wieder aufgerufen, solange das Board eingeschaltet ist). Beispiel „Blinken“: Eine LED an Pin 13 wird im Sketch per pinMode als Ausgang festgelegt; loop() schaltet sie mit digitalWrite abwechselnd HIGH und LOW, dazwischen je 1000 Millisekunden delay – so entsteht eine Rechteckschwingung (0,5 Hz, Tastgrad 50 %) und die LED blinkt. Für Einsteiger gibt es visuelle Programmierung mit S4A (Scratch for Arduino) und mblock (Scratch-basiert). Zudem bietet Arduino mit Arduino Create eine webbasierte Lösung: Sketche werden in einer Cloud gespeichert, die Kommunikation läuft über Plug-ins für das Betriebssystem; Boards sind über USB und Netzwerk ansprechbar, eine kostenlose Registrierung ist nötig, betrieben wird die Plattform durch Amazon Web Services.