Bouw een RGB Matrix Audio Visualizer met Arduino – Stapsgewijze Handleiding
Onderdelen en Benodigdheden
| Arduino UNO | 1 |
| Adafruit NeoPixel Shield voor Arduino (40 RGB LEDs, 8x5 matrix) | 1 |
| SparkFun Spectrum Shield (dubbele MSGEQ7, 7-band per kanaal) | 1 |
| ProtoStax Behuizing voor Arduino (stackbare, modulaire acrylic behuizing) | 1 |
| SPST Pushbutton (blauw, paneelmontage) | 1 |
| 3.5mm Stereo Jack (paneelmontage, geïsoleerd) | 2 |
| 3.5mm Aux-kabels (90 graden) | 2 |
| Patchkabel 3.5mm stereo man-man (1.8m) | 1 |
Benodigd Gereedschap
- Draadloze boor/schroevendraaier
Over dit Project
In deze handleiding bouw je een RGB LED-matrix audio visualizer: een Arduino met NeoPixel Shield en Spectrum Shield, in een nette ProtoStax-behuizing. Het resultaat is een zelfstandig apparaat dat je naast je audiosysteem kunt plaatsen voor een mooi lichtspel.
Hoe het Werkt
- Spectrum Shield: Twee MSGEQ7-chips splitsen stereo-audio in 7 frequentiebanden per kanaal (63Hz, 160Hz, 400Hz, 1kHz, 2.5kHz, 6.25kHz, 16kHz). De Arduino leest de amplituden via ADC (0-1023).
- NeoPixel Shield: 40 WS2812 RGB LEDs in een 8x5 matrix, aangestuurd via 1 pin (D6). De Adafruit_NeoMatrix-bibliotheek vereenvoudigt adressering.
- ProtoStax Behuizing: Modulaire acrylic behuizing die stackbaar is, bescherming biedt en open toegang geeft tijdens prototypen.
Stap 1: Arduino Monteren op Basisplaat
Monteer de Arduino Uno op de basisplaat van de ProtoStax-behuizing. Voeg rubberen voeten toe. Zie de afbeeldingen/gif voor stapsgewijze instructies.
Stap 2: Spectrum Shield Voorbereiden
De Spectrum Shield wordt geleverd zonder headers. Gebruik de stackende headers van de NeoPixel Shield. Let op: de USB/voeding-poort van de Uno kan in de weg zitten. Twee aanpassingen:
- Knip het uiteinde van de Spectrum Shield af (prototyping-gedeelte).
- Kort de poten van de stackende headers iets in.
Stap 3: NeoPixel Shield Monteren
Zet de NeoPixel Shield (met gewone headers) op de Spectrum Shield. Solder de terminal-connector optioneel. Voeding via Arduino is voldoende (niet alle LEDs branden tegelijk).
Stap 4: Democode Analyse
De code (GitHub) bestaat uit twee delen:
- Spectrum Analyse: Initialisatie van STROBE/RESET pinnen, uitlezen 7 banden per kanaal, opslaan in arrays
Frequencies_One[7]enFrequencies_Two[7]. - RGB Matrix Weergave: Mapping van amplitude (0-1023) naar 5 kolommen per band. Kleurenschema's via HSV voor vloeiende overgangen.
Frequentiebanden & Rangeschikking
- BASS: 63Hz, 160Hz (band 0-1)
- MID-RANGE: 400Hz, 1kHz, 2.5kHz (band 2-4)
- TREBLE: 6.25kHz, 16kHz (band 5-6)
NeoMatrix Coördinaten
De matrix is 5 breed x 8 hoog. Oorsprong [0,0] is linksboven. Gekozen orientatie: NEO_MATRIX_TOP + NEO_MATRIX_RIGHT + NEO_MATRIX_COLUMNS + NEO_MATRIX_PROGRESSIVE. Dit plaatst de laagste frequentie linksonder.
Kleurenschema's
MAGNITUDE_HUE: Groen→Rood/Roze per amplitude.MAGNITUDE_HUE_2: Roze/Blauw verschoven.HSV_COLOR_WHEEL: Volledige kleurcirkel cycling.
Selectie via seriële monitor (0, 1, 2).
Stap 5: Testen
Sluit audiobron aan (telefoon/laptop) op input-jack. Optioneel: output-jack naar versterker. Upload code, open seriële monitor, stuur 0/1/2 voor kleurenschema. Geniet van het lichtspel!
Stap 6: Behuizing Afsluiten
Plaats zijwanden, bovenste beugels, audio-kabels en deksel. Zie afbeeldingen/gif.
Stap 7: Uitbreidingsmogelijkheden
- Paneelmontage stereo-jacks aan zijwand voor nette aansluiting.
- Meer kleurenschema's/patronen.
- Toets voor frequentiebereik-wissel (BASS/MID/TREBLE/ALL).
- Toets voor kleurenschema-wissel (ipv seriële monitor).
- Lichtdiffuserend toplakje (licht schuren).
Code
Volledige sketch: ProtoStax Audio Visualizer Demo op GitHub
Productieproces
- K30 CO2-sensor: Real-time binnenluchtkwaliteitmonitoring met Arduino
- Communicatie voor doofblinden vergemakkelijken met 1Sheeld en Arduino
- Slimme spaarpot bouwen: Muntenacceptor besturen met Arduino Nano
- Bouw een 24×16 LED Pong-console met Arduino Nano & MAX7219
- Arduino Audio Frequentie Detector – Meet de luidste geluidspieken met hoge gevoeligheid
- Een LED bedienen via Bluetooth met Arduino – Eenvoudige DIY Handleiding
- Een DFRobot Capacitieve Vingerafdruksensor integreren met Arduino of ESP8266
- Audio afspelen met Arduino UNO en DFPlayer Mini – Stap-voor-stap handleiding
- Je Billy Bass Vis Laten Zingen met Elke Audiobron – Stapsgewijze Handleiding
- Arduino RGB LED Kleurmixer – Beginner-vriendelijk DIY-project
- Een 8×8 LED-matrix beheersen met Arduino Uno: Stap-voor-stap handleiding