Hat-Stacking von Adafruit Motor-Controller ADA2348 und Servo-Controller Adafruit 16-Kanal PWM / Servo HAT ADA2327

  • Moin!

    Ich wollte mir gerade nen Stacking-Header und den Servo-Hat ADA2327 zu meinem vorhandenen Motor-Controller ADA 2348 bestellen, daher nun folgende Frage ...

    Wenn ich die genannten HAT's ADA2348 (Stepper / DC Motor Controller) und Servo Hat ADA2327 in einem Stack haben möchte, so dass ich möglichst viele Motortypen und Servotypen von einem einzigen Pi ansteuern kann, reicht dass dann einfach mit einem Stacking-Header (https://www.berrybase.de/stacking-heade…0-polig-rm-2-54) über die langen Pins die beiden Hardware-Seitig zu verbinden, richtig?

    Würde denn das von Haus aus funktionieren oder muss man da etwas konfigurieren? Falls ja: Was muss man konfigurieren? Gibt es da bereits ein gutes Anfänger-Tutorial?

    Viele Grüße

  • Hat-Stacking von Adafruit Motor-Controller ADA2348 und Servo-Controller Adafruit 16-Kanal PWM / Servo HAT ADA2327? Schau mal ob du hier fündig wirst!

  • Sollte klappen, mußt nur darauf achten, das du unterschiedliche Adressen bei I2C hast.

    Übersicht mit KI
    Um I2C-Adressen auf einem Raspberry Pi anzuzeigen, aktivieren Sie zuerst I2C viasudo raspi-config (unter "Interfacing Options"). Installieren Sie nötige Tools mit sudo apt-get install i2c-tools. Der Befehl sudo i2cdetect -y 1 scannt den Bus und listet verbundene Geräte hexadezimal auf.

    Hier sind die Details:

    • Voraussetzung: Der I2C-Bus muss aktiviert sein (unter Interfacing Options -> I2C in sudo raspi-config).
    • Installation der Tools: Falls nicht vorhanden, installieren Sie die Werkzeuge mit:
      sudo apt-get install i2c-tools.
    • Adressen anzeigen: Führen Sie folgenden Befehl im Terminal aus:
      sudo i2cdetect -y 1.
      • Hinweis: Bei sehr alten Raspberry Pi Modellen (Revision 1) muss 0 statt 1 verwendet werden (also sudo i2cdetect -y 0).
    • Ausgabe verstehen: Eine Tabelle wird angezeigt. Nummern (z.B. 3c oder 68) zeigen die Hexadezimal-Adressen der gefundenen Geräte, -- bedeutet kein Gerät an dieser Adresse.

    Hab es leider nicht mehr auswendig gewußt, deshalb KI gefragt, sollte so richtig sein.

  • Danke für Deine Antwort.

    Also die Ausgabe sieht so aus:

    Code
    pi@raspberrypi:~ $ sudo i2cdetect -y 1
         0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
    00:                         -- -- -- -- -- -- -- -- 
    10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
    20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
    30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
    40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
    50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
    60: 60 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
    70: 70 -- -- -- -- -- -- --      

    Bevor ich den ADA2348 draufgesteckt hatte war die 60 und die 70 nicht da. Jetzt muss ich aber noch auf den Servo Hat warten :-).

    Jetzt bräuchte ich noch einen Hat für Sensoren - ich habe noch einige analoge Sensoren, die ich damals am Arduino über die Analog-Eingänge angeschlossen hatte, gibt es da was für den Raspberry, was ich auch auf den Stack machen könnte?

    Edited 2 times, last by Gude_Doc (January 31, 2026 at 11:51 AM).

  • Ich bin mir nicht sicher ob ich dich richtig verstehe. Du willst über den HAT Servo's steuern und zusätzlich noch an I2C weitere Sensoren anschließen? Sind das auch I2C sensoren?

    Der Pi hat noch einen zweiten I2C Bus (sudo i2cdetect -y 4). Bus 4. Schau mal in die GPIO Tabelle von deinem Pi. SDA und SCL findest du noch auf GPIO 27,28 für den Bus.

    Bei mir werkelt ein MPU6050 Gyrosensor - und ein QMC8550P als Kompass auf Bus 4.

  • Hi 4zap,

    danke für Deine Antwort.

    Du willst über den HAT Servo's steuern und zusätzlich noch an I2C weitere Sensoren anschließen? Sind das auch I2C sensoren?

    Ja genau, ich will quasi zusätzlich zu dem Stack aus ADA2348 (Motor Controller Hat) und den ADA2327 (Servo Hat) einen Hat drauf machen, womit man weitere Sensoren auslesen kann. Z.B. einen Ultraschallsensor, einen Infrarotsensor oder einen Infrarotentfernungsmessersensor. Ich hab nur leider nicht so viel Ahnung von Elektrotechnik selber, deswegen wäre es cool wenn man es einfach nur zusammenstecken müsste :-). Eine Halterung könnte ich mir per FreeCAD für den Kram designen.

    Ich habe auch noch nicht die Frage für eine vernünftige, mobile Stromversorgung geklärt, da es auf einen Roboter soll. Der Motorcontroller hat ja einen eigenen Stromkreis für die Motoren und ich muss zusätzlich zu der Powerbank noch Batterien dran klemmen - ich bräuchte dann später am Besten eine einzelne Stromversorgung, das würde ich dann versuchen in dem anderen Unterforum zu klären.

    Die alten Sensoren sind leider keine I2C-Sensoren (also haben keinen Chip). Ich habe sie damals beim Arduino Uno in die analogen Eingänge gesteckt. Wäre es ratsamer lieber I2C Sensoren zu kaufen?

    Der Pi hat noch einen zweiten I2C Bus (sudo i2cdetect -y 4). Bus 4. Schau mal in die GPIO Tabelle von deinem Pi. SDA und SCL findest du noch auf GPIO 27,28 für den Bus.

    Bei der Option -y 4 erhalte ich aktuell (mit nur einem ADA2348 Hat) die folgende Meldung:

    Bei mir werkelt ein MPU6050 Gyrosensor - und ein QMC8550P als Kompass auf Bus 4.

    Braucht man dafür einen Hat oder steckt man die auf den Raspberry irgendwo drauf? Ich hab damit noch nicht so viel Erfahrungen und versuche damit gerade zu lernen wie man das macht :-).

    Viele Grüße

  • Klingt nach irgendwas was fliegt oder fährt. Abstandssensoren sind so eine Sache für sich. Welche Sensoren man einsetzt hängt davon ab wie schnell sich das bewegt und in welchen Abständen agiert werden soll. Manche Sensoren taugen im unteren, andere im oberen Bereichen nicht gut.

    Grundsätzlich werden i2c Sensoren mit 3,3V betrieben, manche können zwar 5V ab aber das sollte man lassen. Zu der Spannungsversorgung kommen das die SDA und SCL Datenverbindung zum pi. An Bus 4 scheint nichts verbunden zu sein, da könnte man einzelne Sensoren hinzufügen wenn die GPIOs frei sind. Sind die richtig verbunden und initialisiert siehst du auf Bus 4 auch weitere Adressen.
    Es gibt den Sense HATs von waveshare, der macht das recht flexibel und stellt die passenden GPIOs oben zur Verfügung. Die Frage ist ob du den noch obenrauf stecken kannst. Wie sieht das ganze Konstrukt denn jetzt aus? Es sind ja schon zwei Boards oben drauf. Es wäre gut zu wissen welche GPIOs belegt sind durch die HATs und welche frei verfügbar wären bevor man jetzt erweitert. Mach mal n Foto und schau mal in code welche GPIOs benutzt werden.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!