In diesem Beitrag möchte ich dir zeigen, wie du den Speaker HAT am M5StickC mit UI Flow programmieren kannst.
Den M5StickC habe ich dir bereits im Beitrag M5StickC – Ein ESP32 Zwerg mit nützlichen onboard Funktionen in einem coolen Gehäuse vorgestellt und in den Beiträgen:
- Ausgeben der Temperaturwerte des DS18B20 Sensors auf dem M5StickC
- eine digitale Wasserwaage mit dem M5StickC
- M5StickC mit Temperatur & Luftfeuchtigkeit & Luftdruck Sensor (ENV HAT)
ein paar kleine Projekte mit und ohne HAT Sensoren / Aktoren gezeigt.
Bezug des SPK HAT
Der Speaker HAT war Bestandteil eines Dreierpacks welchen ich auf amazon.de für knapp 19€ inkl. Versandkosten erstanden habe. Ich konnte leider keinen Shop finden auf welchem du diesen Aktor einzeln erwerben kannst.
Du findest zbps. auf aliexpress.com einige Sets mit M5StickC für knapp 19,58$ (ca. 16,12€) oder aber du bestellst diesen im offiziellen Shop von M5Stack für 2,5$ (ca. 2,06€).
Lieferumfang
Der Lieferumfang des SPK HAT ist sehr übersichtlich es ist „nur“ eine kleine Plastikkiste mit Schaumstoff. Aber das liegt auch vielmehr daran das der Aktor einfach, an den Microcontroller mit Hilfe der Stiftleiste, angesteckt wird.



technische Daten des Speaker HAT für den M5StickC
- Betriebsspannung: 2.8V bis 5.5V (5V bevorzugt)
- Impedanz: 4 Ohm
- Leistung: 3 Watt
- Abmaße (L x B x H)
- Produktgröße: 25 mm x 24 mm x 14 mm
- Verpackung: 40 mm x 42 mm x 30 mm
Anschluss & Pinout
Der SPK HAT verfügt über eine 8 Pin Stiftleiste mit welcher man diesen einfach an den M5StickC stecken kann und somit entfällt eine aufwändige Verkabelung.


Pinout des Speaker HAT
Der Speaker HAT verfügt über eine 8polige Stiftleiste welche an die nachfolgende Pin angeschlossen werden:
M5StickC | Speaker HAT |
---|---|
GPIO0 | SD |
GPIO26 | IN- |
5 V | 5 V |
GND | GND |
Beispiele
Hier nun das kleine Lied „Twinkle Twinkle little Star“ auf dem M5StickC mit dem Speaker HAT. (Dieses findest du auf dem GitHub Repository StefanDraeger/m5Stack/samples/hats/SPK_HAT.)
from m5stack import * from m5ui import * from uiflow import * import hat import time setScreenColor(0x111111) hat_spk0 = hat.get(hat.SPEAKER) c = 523 g = 784 a = 889 f = 698 e = 659 d = 587 song = [[c,c,g,g,a,a,g], [f,f,e,e,d], [g,g,f,f,e,e,d], [g,g,f,f,e,e,d], [c,c,g,g,a,a,g], [f,f,e,e,d,d,c]] hat_spk0.setVolume(1) for tones in song: time.sleep(0.450) for tone in tones: hat_spk0.sing(tone, 1/2) time.sleep(0.300)
Hier nun ein kleines Video in welchem das Lied abgespielt wird: