Der Red-Brick als USB-Blackbox - auf Wunsch

Grundsätzlich ist mit einem stabilen Linux-Kernel und dem riesigen Reservoir an verfügbaren Debian-Software-Paketen der Red-Brick bereits betriebs- und einsatzfähig. Doch der Red-Brick soll mehr sein als noch ein weiterer Kleinrechner. Anwender des Tinkerforge-Baukastens sollen sich nicht mit dem Linux des Red-Brick auseinandersetzen müssen, wenn sie es nicht wollen.

Stellenmarkt
  1. Facility Technology Solution Lead (m/f/x)
    Autodoc AG, Berlin, Szczecin (Polen), Cheb (Tschechische Republik)
  2. Spezialist für IT-Sicherheit (m/w/d)
    ekom21 - KGRZ Hessen, Gießen, Darmstadt, Kassel
Detailsuche

Ähnlich wie der bisherige Masterbrick per USB an einen Rechner angesteckt und die Steuerbefehle von einem Programm von diesem Rechner umgesetzt wurden, soll auch der Red-Brick als Gerät erscheinen, auf dem Programme einfach per Mausklick hochgeladen werden können. Aus diesem Grund muss Olaf Lüke an einer weiteren Softwarekomponente arbeiten: einem speziellen USB-Treiber auf dem Red-Brick, einem sogenannten Composite USB Gadget Driver.

Mit Hilfe dieses Treibers erscheint der Red-Brick beim Anschluss an einen anderen Rechner als USB-Gerät (daher "Gadget") - vergleichbar einem angeschlossenen Handy. Der Begriff "Composite" wiederum verweist darauf, dass der Treiber mehr als einen Betriebsmodus unterstützt. Mit Hilfe des Treibers stellt der Red-Brick über USB nicht nur eine API zur Ansteuerung bereit, sondern auch eine serielle Konsole.

Maschinenkommunikation

Beim bisherigen Tinkerforge-System übernimmt der Masterbrick die Kommunikation zwischen einem angeschlossenen Rechner und den einzelnen Bricks. Die notwendige Vermittlerlogik läuft exklusiv auf einem ARM-Cortex-M3-Microcontroller, die Ansteuerung der Bricks erfolgt über SPI (Serial Peripheral Interface).

Golem Akademie
  1. Scrum Product Owner: Vorbereitung auf den PSPO I (Scrum.org): virtueller Zwei-Tage-Workshop
    3.–4. März 2022, virtuell
  2. Data Engineering mit Apache Spark: virtueller Zwei-Tage-Workshop
    25.–26. April 2022, Virtuell
Weitere IT-Trainings

Auf dem Red-Brick ist die Angelegenheit komplizierter. Die Ansteuerung der Bricks muss weiterhin über SPI erfolgen, um die Kompatibilität zu gewährleisten. Es ist aber nicht mehr möglich, die Kommunikationslogik auf dem "blanken Metall" laufen zu lassen, sondern sie erfolgt innerhalb der Grenzen und der Abstraktionen des Betriebssystems.

Olaf Lüke musste also nicht nur einen Treiber für die SPI-Kommunikation schreiben, sondern dabei auch hoffen, dass das Linux-System schnell genug ist, um den Anforderungen zu genügen.

Beim ersten Versuch gelang das nicht. Die Lösung war ein Umbau der Kommunikation. Mit dem überarbeiteten Protokoll können die empfangenen Daten, zum Beispiel Sensormesswerte, von Bricks per DMA (Direct Memory Access) im Speicher abgelegt werden. Der Prozessor muss nicht mehr explizit angewiesen werden, selbst die empfangenen Daten in den Arbeitsspeicher zu kopieren.

Einziger Nachteil des Umbaus am Kommunikationsprotokoll ist, dass ein Update der Firmware in den Bricks nötig wird, das aber vom Anwender keine speziellen Werkzeuge erfordert.

Durch den Einsatz von DMA wird das System kaum belastet. Laut Lüke benötigt der Tinkerforge-Software-Unterbau zusammen nicht mehr als sechs Prozent der Systemleistung und trotzdem können bis zu 1.000 Messpunkte pro Sekunde ausgewertet werden. Dabei läuft ein Großteil der Software bislang im Userspace, also außerhalb des Kernels. Sollte es sich während der weiteren Entwicklung herausstellen, dass das System ausgebremst wird, besteht immer noch die Option, Code in den Kernel zu verlagern.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Das BetriebssystemCopy'n'Trial 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7.  


Aktuell auf der Startseite von Golem.de
Lego Star Wars UCS AT-AT aufgebaut
"Das ist kein Mond, das ist ein Lego-Modell"

Ganz wie der Imperator es wünscht: Der Lego UCS AT-AT ist riesig und imposant - und eines der besten Star-Wars-Modelle aus Klemmbausteinen.
Ein Praxistest von Oliver Nickel

Lego Star Wars UCS AT-AT aufgebaut: Das ist kein Mond, das ist ein Lego-Modell
Artikel
  1. Kryptowährung im Fall: Bitcoin legt rasante Talfahrt hin
    Kryptowährung im Fall
    Bitcoin legt rasante Talfahrt hin

    Am Samstag setzte sich der Absturz des Bitcoin fort. Ein Bitcoin ist nur noch 34.200 US-Dollar wert. Auch andere Kryptowährungen machen Verluste.

  2. eStream: Airstream-Wohnwagen mit eigenem Elektroantrieb
    eStream
    Airstream-Wohnwagen mit eigenem Elektroantrieb

    Der Wohnwagen Airstream eStream besitzt einen eigenen Elektroantrieb nebst Akku. Das entlastet das Zugfahrzeug und eröffnet weitere Möglichkeiten.

  3. Andromeda: Dieses Microsoft-Smartphone-Betriebssystem erschien nie
    Andromeda
    Dieses Microsoft-Smartphone-Betriebssystem erschien nie

    Erstmals ist ein Blick auf Andromeda möglich - das Smartphone-Betriebssystem, das Microsoft bereits vor einigen Jahren eingestellt hat.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Corsair Vengeance RGB RT 16-GB-Kit DDR4-4000 120,95€ • Alternate (u.a. AKRacing Master Pro Deluxe 449,98€) • Seagate FireCuda 530 1 TB (PS5) 189,90€ • RTX 3070 989€ • The A500 Mini 189,90€ • Intel Core i9 3.7 459,50€ • RX 6700 12GB 869€ • MindStar (u.a. 1TB SSD 69€) [Werbung]
    •  /