Alexa-gestuurde LED-kerstboom: DIY-gids
Onderdelen en benodigdheden
| Amazon Alexa / Amazon Echo | × | 1 |
| Arduino Yun | × | 1 |
| Jumper wires (standaard) | × | 1 |
| WS2811 LED-strip | × | 1 |
Over dit project
Hier vind je de broncode voor een aangepaste Alexa-skill die een LED-strip op een kerstboom bedient. De repository bevat:
- Java-code voor een AWS Lambda-functie die fungeert als endpoint voor de Alexa-skill
- Een Arduino-sketch die de brug slaat tussen AWS IoT en een WS2811 LED-strip, geoptimaliseerd voor de Arduino Yun
De hardware-opstelling
Om je eigen Alexa-gestuurde kerstboom te bouwen heb je de volgende componenten nodig:
- 1× Arduino Yun met Linino OS
- 2× WS2811 LED-strip met 50 LEDs elk
- 3× Jumper wires
- 1× Voedingadapter en 2,1 mm × 5,5 mm DC-connector
- 1× Micro-USB naar USB-kabel
- 1× Amazon Echo, Dot of Tap
De software-oplossing
De volgende afbeelding illustreert een typische ronde reis om een spraakverzoek van de gebruiker af te handelen.

De oplossing gebruikt diverse AWS-cloudservices om te communiceren met de hardware-backend – de kerstboom. De enige dingen die je echt hoeft in te stellen zijn de Lambda-functie, een S3-bucket met de MP3-bestanden en een IAM-rol met AWS IoT- en DynamoDB-rechten. De tabel in DynamoDB en de thing-shadow in AWS IoT worden bij de eerste aanroep van de skill automatisch aangemaakt.
Wat er gebeurt bij een spraakverzoek:
- De gebruiker spreekt tegen Alexa: "open the christmas tree". ASR en NLU-verwerking gebeuren in de Alexa-cloudservice.
- Een intent wordt doorgestuurd naar de skill-code in AWS Lambda.
- Als de gebruiker een actie wenst zonder kleur (bijv. "turn on the tree"), zoekt de skill de laatst ingestelde kleur op in DynamoDB. Wél met kleur? Dan wordt die opgeslagen. Vervolgens worden actie en kleur geschreven naar een thing-shadow in AWS IoT.
- Bij een shadow-update wordt een MQTT-bericht gepubliceerd op het delta-topic. De Arduino Yun is hierop geabonneerd. Let op: de thing-naam is gelijk aan de skill-ID (met punten vervangen door streepjes).
- De Arduino ontvangt het JSON-commando via MQTT, haalt de informatie eruit en stuurt de LED-strip aan (nieuwe kleur, kerstshow, aan, uit).
- De Arduino bevestigt de actie via een MQTT-bericht naar het update-topic. AWS IoT schrijft dit terug als reported state in de shadow.
- De skill-code retourneert direct output-spraak en optioneel een SSML-tag met audio (kerstgeluiden uit de S3-bucket), losgekoppeld van de hardware.
- Alexa leest de tekst voor en speelt de audio af.
Statusindicatie
Terwijl de Arduino werkt, geeft de eerste LED van de strip de status weer:
- 1× rood knipperen = AWS IoT verbindingsinstelling mislukt
- 2× rood knipperen = AWS IoT verbindingspoging mislukt
- 3× rood knipperen = AWS IoT configuratie mislukt
- Groen flashen = succesvolle verbinding met AWS IoT
- Blauw knipperen = constant polle naar AWS IoT-topic
- Geel knipperen = fout tijdens polle naar AWS IoT-topic
Bij opstart kun je rode knipperingen zien tijdens de WiFi-verbinding. Zodra WiFi werkt, volgt groen en daarna constant blauw – de boom is klaar voor commando's. Bij geel knippert de Arduino 10 keer, probeert opnieuw te verbinden (rood/groen), en keert terug naar blauw zodra de verbinding hersteld is.
Code
Broncode voor de Alexa-aangedreven kerstboom: GitHub-repository
Schema's

Productieproces
- Fault Tree Analysis Uitgelegd: Doel, Proces en Praktische Implementatie
- De Kunst en Industrie van Cadeaupapier: Van Geschiedenis tot Productie
- Je Chromecast Besturen met Amazon Alexa via Raspberry Pi en Python
- Alexa-gecontroleerde ARDrone 2.0 Demo: Stem-geactiveerde Drone met Raspberry Pi & Hologram Nova
- Je plafondventilator bedienen met Alexa: Stap-voor-stap handleiding
- Slimme 3D-sensor: Stemgeactiveerde lampbesturing voor Amazon Echo
- Vreugde delen: Sure Controls' kerstgeest & gemeenschapssteun
- Verander uw kerstdecoratie met OMNI CNC's in elkaar grijpende houten boomstand en gelaserde sieraden
- Waarom 2017 het Jaar van Steminterfaces Werd
- Hoe IoT de operaties van de Kerstman dit kerstmis transformeert
- Versnel Alexa‑integratie met developer kits en reference designs