Project:Müllampel
This page is INCOMPLETE and still missing some important information before it can be used as a resource.
ProjectInfoBox Müllampel | |
---|---|
![]() | |
Status: | planned |
Initiator: | Martin, Johannes |
Tools Used: | LaserCutter, Drill, Hot Glue Gun |
Approx. Cost: | 10€ |
Das Projekt Müllampel ist ein Projekt, das zum Ziel hat, den Space vor dem Versinken im Müll zu bewahren. Dazu bietet es ein Schild, das mithilfe eines ESP32 und adressierbarer LEDs eine Erinnerung bietet, die Mülltonnen rechtzeitig rauszustellen.
Dies erreicht es, indem es anhand der Daten des aktuellen Abfallkalenders blinkt und mithilfe von drei verschiedenen Farben signalisiert, welche Tonnen herausgestellt werden müssen: Weiß für Restmüll, Blau für Papier und Gelb für Wertstoff.
Aktuell blinkt sie mittwochs um 21:30 Uhr zum Reinholen und freitags um 21:30 Uhr zum Herausstellen der Tonnen, damit diese meist Dienstags morgens abgeholt werden können.
Die Integration in Home Assistant ermöglicht es uns, das Schild perfekt auf unsere Abholtermine abzustimmen.
Bauanleitung
Material:
- Bilderrahmen
- ESP8266 Mikrocontroller
- Netzteil für den LED-Streifen (z. B. 5V, 2A für 30 LEDs)
- USB-Kabel
- Klebematerial (z. B. Heißkleber oder doppelseitiges Klebeband)
- Adressierbarer LED-Streifen (22 LEDs)
- Schwarze Sprühfarbe
Werkzeuge
- Laser Cutter
- Computer mit Zugang zu HomeAssistant und ESPHome
- Schraubendreher, Cutter oder Schere (für den LED-Streifen)
Schritt-für-Schritt-Anleitung
1. Vorbereitung des Bilderrahmens
- Entferne die Glasscheibe aus dem Bilderrahmen.
- Sprühe die Vorderseite der Glasscheibe gleichmäßig mit schwarzem Sprühlack ein. Lass die Farbe vollständig trocknen (ca. 24 Stunden).
- Nutze den Laser Cutter, um ein Mülltonnen-Symbol aus der lackierten Glasscheibe zu gravieren. Du kannst eine eigene SVG-Datei erstellen oder eine Vorlage verwenden.
2. Vorbereitung der Elektronik
- Schneide den LED-Streifen auf die passende Länge, damit er in den Bilderrahmen passt.
- Verbinde den LED-Streifen mit dem ESP8266 gemäß der folgenden Pinbelegung:
- LED-Datenpin -> GPIO Pin des ESP8266 (z. B. GPIO 4)
- Stromversorgung (5V) -> Netzteil
- GND -> GND des ESP32 und des Netzteils
- Sichere den LED-Streifen und den ESP32 mit Klebematerial hinter der Glasscheibe im Rahmen. Achte darauf, dass die LEDs direkt hinter dem gravierten Symbol positioniert sind.
3. Installation der Software
- Flashe den ESP8266 mit ESPHome. Die folgende Konfiguration kann als Vorlage verwendet werden:
esphome:
name: muelllampel
esp8266:
board: esp8266dev
wifi:
ssid: "DEIN_SSID"
password: "DEIN_PASSWORT"
light:
- platform: neopixelbus
pin: GPIO4
num_leds: 30
name: "Muelllampel LEDs"
effects:
- random:
name: "Blinken"
transition_length: 1s
update_interval: 0.5s
- Verbinde den ESP8266 mit deinem Home Assistant.
4. Integration der Mülltermine in Home Assistant
Um die Abholtermine deiner Mülltonnen in Home Assistant zu nutzen, folge diesen Schritten:
- Installiere das Add-on **"ICS Kalender Integration"** in Home Assistant (falls noch nicht vorhanden).
- Lade die ICS-Datei deines lokalen Müllabfuhrkalenders herunter (oft von der Website deines Abfallwirtschaftsamts verfügbar).
- Importiere die ICS-Datei in Home Assistant:
* Gehe zu **Einstellungen > Integrationen > Kalender hinzufügen**. * Wähle "ICS" aus und lade die Datei hoch.
- Die Termine erscheinen nun in Home Assistant als Kalenderentitäten (z. B. `calendar.muellerinnerung`).
5. Automatisierung für die Mülllampel
- Erstelle eine Automatisierung in Home Assistant, die prüft, welche Mülltonnen in den nächsten 7 Tagen abgeholt werden, und die LEDs entsprechend steuert. Beispiel:
alias: Garbage Light
description: >-
Let´s the Garbage Light in the Wood Workshop blink for ~30 Minutes. Starts 30
minutes before an event in our calendar ends
triggers:
- trigger: calendar
entity_id: calendar.coms_public_events
event: end
offset: "-0:30:0"
conditions: []
actions:
- action: calendar.get_events
metadata: {}
data:
duration:
hours: 168
minutes: 0
seconds: 0
target:
entity_id: calendar.heidelberg
response_variable: calendar_entries_7_days
- repeat:
count: 130
sequence:
- repeat:
sequence:
- choose:
- conditions:
- alias: Restmüll
condition: template
value_template: "{{ \"Restmüll\" in repeat.item.summary }}"
sequence:
- action: light.turn_on
target:
device_id:
- e7df0dab88007c0d27d62348c4eb39b9
data:
rgb_color:
- 255
- 255
- 255
- delay:
hours: 0
minutes: 0
seconds: 5
milliseconds: 0
- action: light.turn_off
metadata: {}
data: {}
target:
device_id:
- e7df0dab88007c0d27d62348c4eb39b9
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- conditions:
- alias: Gelber Sack
condition: template
value_template: "{{ \"Gelber Sack\" in repeat.item.summary }}"
sequence:
- action: light.turn_on
target:
device_id:
- e7df0dab88007c0d27d62348c4eb39b9
data:
rgb_color:
- 238
- 255
- 0
- delay:
hours: 0
minutes: 0
seconds: 5
milliseconds: 0
- action: light.turn_off
metadata: {}
data: {}
target:
device_id: e7df0dab88007c0d27d62348c4eb39b9
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- conditions:
- alias: Papier
condition: template
value_template: "{{ \"Papier\" in repeat.item.summary }}"
sequence:
- action: light.turn_on
target:
device_id:
- e7df0dab88007c0d27d62348c4eb39b9
data:
rgb_color:
- 0
- 42
- 255
- delay:
hours: 0
minutes: 0
seconds: 5
milliseconds: 0
- action: light.turn_off
metadata: {}
data: {}
target:
device_id:
- e7df0dab88007c0d27d62348c4eb39b9
- delay:
hours: 0
minutes: 0
6. Montage und Test
- Setze die Glasscheibe wieder in den Bilderrahmen ein.
- Schließe den ESP32 und den LED-Streifen an die Stromversorgung an.
- Teste die Automatisierung, um sicherzustellen, dass die LEDs korrekt blinken.
Fehlersuche
- Problem: Die LEDs leuchten nicht.
* Prüfe, ob der LED-Streifen richtig an den ESP32 und die Stromversorgung angeschlossen ist. * Stelle sicher, dass die ESPHome-Konfiguration korrekt hochgeladen wurde.
- Problem: Home Assistant erkennt den Kalender nicht.
* Verifiziere, ob die ICS-Datei korrekt importiert wurde.
Bilder und Beispiele
- [Bild des fertigen Projekts einfügen]
- [Screenshot der Home Assistant Konfiguration einfügen]