HAT Zero Brick

Features

  • Raspberry Pi HAT mit Raspberry Pi Zero Formfaktor
  • Vier Anschlüsse für Bricklets
  • Misst die USB Versorgungsspannung

Beschreibung

Der HAT Zero Brick ist ein Raspberry Pi HAT im Standard-Zero-HAT-Formfaktor. Der Brick ist zur HAT-Spezifikation konform und funktioniert automatisch mit Raspbian ohne irgendwelche Änderungen.

Mit dem HAT Zero Brick können bis zu vier Bricklets an ein Raspberry Pi angeschlossen werden.

Bemerkung

Das HAT Zero Brick besitzt 7-Pol-Bricklet-Anschlüsse. Über ein 7-Pol <-> 7-Pol Kabel können Bricklets an das Brick angeschlossen werden. Es werden nur Bricklets unterstützt die über einen 7-poligen Anschluss verfügen.

Die USB Versorgungsspannung kann gemessen werden und ist über die API zugänglich.

Der HAT Zero Brick ist elektronisch kompatibel zu den Raspberry Pi 2B, 3B, 3B+, 4B, Zero und Zero W. Die Befestigungslöcher snd kompatibel zum Raspberry Pi Zero und Zero W. Der Brick ist darauf ausgelegt, möglichst wenig Platz zu benötigen. Zusätzlich bieten wir mit dem HAT Brick eine größere Version mit acht Bricklet-Anschlüssen und weiteren Features. Die Befestigungslöcher sind bei der Version kompatibel zu den standard Raspberry Pis 2/3/4.

Technische Spezifikation

Eigenschaft Wert
Stromverbrauch 90mW (18mA bei 5V)
   
Bricklet-Anschlüsse 4
   
Abmessungen (B x T x H) 65 x 30 x 5mm (2,56 x 1,18 x 0,2")
Gewicht 12g

Ressourcen

Erste Schritte

Um mit dem HAT Zero Brick zu beginnen, muss zuerst der Brick Daemon auf dem Raspberry Pi installiert werden. Der Brick Daemon agiert als Proxy zwischen den Bricklet-Anschlüssen des HATs und den API Bindings.

Nachdem der Brick Daemon installiert ist, kann der HAT Zero Brick auf den Raspberry Pi gesteckt und dieser neugestartet werden.

Anschließend kann der Brick Viewer genutzt werden, um sich mit dem HAT Zero Brick und den angeschlossenen Bricklets zu verbinden. Der Brick Viewer kann entweder direkt auf dem Raspberry Pi oder aber auf einem externen PC, der über WLAN Zugriff auf den Raspberry Pi besitzt, installiert werden. Von einem externen PC aus muss sich auf den Hostnamen oder die IP des Raspberry Pis verbunden werden, vom Raspberry Pi aus auf localhost.

Im Brick Viewer sollte ein Tab namens "HAT Zero Brick" und für jedes angeschlossene Bricklet ein weiterer Tab angezeigt werden.

HAT Zero Brick in Brick Viewer

Im HAT Zero Brick Tab des Brick Viewers kann die gemessene USB-Spannung betrachtet werden und die an den HAT Zero angeschlossenen Bricklets werden angezeigt.

Sollte unklar sein, ob der HAT Zero Brick korrekt erkannt wurde, kann ein Blick in den Ordner /proc/device-tree/hat/ auf dem Raspberry Pi helfen:

cd /proc/device-tree/hat/
echo Name: "$(tr -d '\0'<name)", Product: "$(tr -d '\0'<product)",  Product ID: "$(tr -d '\0'<product_id)", Vendor: "$(tr -d '\0'<vendor)"

Dies sollte etwa das folgende ausgeben:

Name: hat, Product: HAT Zero Brick, Product ID: 0x085d, Vendor: Tinkerforge GmbH

Falls der Order nicht exisitiert, oder die Ausgabe nicht korrekt ist, war die Installation nicht erfolgreich. Dann sollte geprüft werden, ob der HAT Zero Brick korrekt verbunden wurde und ob der Raspberry Pi nach dem aufstecken neugestartet wurde.

HAT Zero Brick auf normalen Raspberry Pi befestigen

Das HAT Zero Brick kann zusammen mit einem normalen (nicht-zero) Raspbery Pi 2/3/4 verwendet werden.

HAT Zero Brick mit Raspberry Pi 4

Zur Befestigung empfehlen wir die Nutzung eines Raspberry Pi Befestigungskit.

Nutze die Zwei Montagelöcher auf der Rückseite des HATs und des RPi. Die Zwei Montagelöcher auf der Vorderseite des HATs bleiben unbenutzt. Das HAT Zero Brick ist so bereits hinreichend befestigt, es löst sich auch nicht bei Vibrationen. Zwei weitere Abstandshalter und Muttern des Befestigungskits können auf der Vorderseite des RPi genutzt werden um den Aufbau eben zu machen oder woanders zu befestigen.

Zwischen RPi und HAT Zero Brick ist genug Platz um alle vier Bricklet ports mit Bricklets zu verbinden.

Kompatibilität zu anderen Boards und Images

Wird Raspbian genutzt, wird der HAT Zero Brick automatisch erkannt und kann verwendet werden. Die Pins werden automatisch für eine Kommunikation mit den Bricklets konfiguriert, indem die gespeicherte HAT-Konfiguration aus dem EEPROM des HAT Zero Bricks gelesen wird.

Wird ein Linux-Image, welches das raspi-config Framework nicht bietet, oder ein anderes Board mit Raspberry Pi kompatiblen GPIO-Pinheadern aber anderem Prozessor genutzt, funktioniert dies nicht automatisch.

In diesem Fall kann der Brick Daemon die notwendige SPI und GPIO Pinkonfiguration vornehmen, falls sie in der Datei /etc/brickd.conf angegeben wird.

Für ein Standard-Raspberry Pi beispielsweise:

bricklet.group0.spidev = /dev/spidev0.0

bricklet.group0.cs0.driver = gpio
bricklet.group0.cs0.name = gpio27
bricklet.group0.cs0.num = 27

bricklet.group0.cs1.driver = gpio
bricklet.group0.cs1.name = gpio23
bricklet.group0.cs1.num = 23

bricklet.group0.cs2.driver = gpio
bricklet.group0.cs2.name = gpio24
bricklet.group0.cs2.num = 24

bricklet.group0.cs3.driver = gpio
bricklet.group0.cs3.name = gpio22
bricklet.group0.cs3.num = 22

bricklet.group0.cs4.driver = gpio
bricklet.group0.cs4.name = gpio25
bricklet.group0.cs4.num = 25

Als erstes muss das SPI-Device, das genutzt werden soll, konfiguriert werden (/dev/spidev0.0 für den Raspberry Pi). Anschließend müssen ein GPIO-Treiber, sowie Name und Nummer des GPIO für jeden Chip Select Pin definiert werden. Es gibt vier Chip Selects für die vier Bricklet-Anschlüsse und ein Chip Select für den HAT Zero Brick selbst.

Wird ein komplett anderes Board genutzt, so kann der Schaltplan des Boards Aufschlüsse darüber bieten, wie die Konfiguration angepasst werden muss. tinkerunity.org bietet eine Möglichkeit, Hilfe zu finden.

Programmierschnittstelle

Siehe Programmierschnittstelle für eine detaillierte Beschreibung.

Sprache API Beispiele Installation
C/C++ API Beispiele Installation
C/C++ für Mikrocontroller API Beispiele Installation
C# API Beispiele Installation
Delphi/Lazarus API Beispiele Installation
Go API Beispiele Installation
Java API Beispiele Installation
JavaScript API Beispiele Installation
LabVIEW API   Installation
Mathematica API Beispiele Installation
MATLAB/Octave API Beispiele Installation
MQTT API Beispiele Installation
openHAB API Beispiele Installation
Perl API Beispiele Installation
PHP API Beispiele Installation
Python API Beispiele Installation
Ruby API Beispiele Installation
Rust API Beispiele Installation
Shell API Beispiele Installation
Visual Basic .NET API Beispiele Installation
TCP/IP API    
Modbus API