Zum Inhalt springen

Inhaltsverzeichnis | Weiter: Schnellstart →

DimmerLink — Benutzerdokumentation

AC-Dimmer-Controller zur Steuerung der Lampenhelligkeit über TRIAC. Verbindet sich mit Ihrem Projekt (Arduino, ESP32, Raspberry Pi usw.) und ermöglicht die Steuerung von AC-Dimmern mit einfachen Befehlen.

diagram

Die Arbeit mit DimmerLink ist einfach.




Inhaltsverzeichnis

Abschnitt Beschreibung
Schnellstart Hier starten — minimales Beispiel in 5 Minuten
Hardware-Anschluss Verdrahtungspläne für gängige Boards
UART-Schnittstelle Befehle und Beispiele für UART
I2C-Schnittstelle Register und Beispiele für I2C
Einplatinencomputer Raspberry Pi, Orange Pi, Banana Pi
Erweiterte Nutzung USB-UART, LoRa, GSM, Bluetooth
FAQ & Fehlerbehebung Häufige Fragen und Lösungen

DimmerLink




Hauptmerkmale

FLIMMERFREI — Ein dedizierter Cortex-M+ übernimmt alle kritischen Timings. Keine Software-Verzögerungen, Interrupt-Konflikte oder Flimmern.

KEINE BIBLIOTHEKEN ERFORDERLICH — Senden Sie einfache 3–4-Byte-Befehle über UART oder I2C. Funktioniert mit jeder Programmiersprache. Buchstäblich 5 Zeilen Code.

UNIVERSELLE KOMPATIBILITÄT — Arduino, ESP32, ESP8266, Raspberry Pi, STM32, jeder MCU mit UART/I2C. Unterstützt Logikpegel von 1.8V, 3.3V und 5V.

HELLIGKEITSSTEUERUNG — Bereich 0–100%

DIMMKURVEN — Linear, RMS (für Glühlampen), Logarithmisch. Automatische Erkennung der Netzfrequenz 50/60 Hz.

NETZERKENNUNG — Automatische Erkennung der Netzfrequenz (50/60 Hz)

DUALE SCHNITTSTELLE — UART (115200 8N1) oder I2C. Umschaltung per Befehl jederzeit möglich.

ULTRA-COMPACT — Only 18×12mm. Standard 0.1" pins. Fits in any enclosure.

PLUG & PLAY — Anschließen, einschalten, Befehl senden. Funktionierender Dimmer in 5 Minuten.




Das Problem, das wir lösen

Jeder Maker kennt dieses Problem: Man fügt eine AC-Dimmer-Bibliothek zum Projekt hinzu, und plötzlich fangen die Lampen an zu flimmern, die Timings geraten durcheinander, und man verbringt Stunden mit dem Debuggen von Interrupt-Konflikten. DimmerLink beseitigt dieses Problem vollständig, indem alle zeitkritischen Operationen auf einen dedizierten Cortex-M+-Mikrocontroller ausgelagert werden.



Funktionsweise

Verbinden Sie DimmerLink zwischen Ihrem Controller (Arduino, ESP32, Raspberry Pi oder einem beliebigen MCU) und einem AC-Dimmer-Modul. Senden Sie einen 3-Byte-Befehl wie SET 50% über UART oder schreiben Sie einen Wert in ein I2C-Register. Der Controller übernimmt die Nulldurchgangserkennung, berechnet den Phasenwinkel und steuert den TRIAC mit Mikrosekunden-Präzision. Keine Bibliotheken. Keine Interrupts. Keine Konflikte mit Ihrem Code.

Oder verbinden Sie sich mit Fernübertragungsmodulen wie LoRa, GSM/GPRS, Bluetooth oder WiFi-Bridges, oder einfach mit Ihrem PC über USB-UART-Module wie CH340, CP2102/CP2104. Industrielle RS-232-Module. Kein Code erforderlich — nur Befehle über das Terminal.




Welche Schnittstelle wählen?

Kriterium UART I2C
Einfachheit der Verbindung 2 Drähte + Stromversorgung 2 Drähte + Stromversorgung
Geschwindigkeit 115200 Baud 100 kHz
Mehrere Geräte Nein Ja (verschiedene Adressen)
Funktioniert mit Bridges Ja (USB-UART, WiFi, LoRa) Eingeschränkt
Empfehlung Für Fernsteuerung Für lokale Steuerung

💡 Tipp: Für Anfänger empfehlen wir I2C — einfacherer Code, klarere Struktur.




Kompatibilität

DimmerLink unterstützt Logikpegel von 1.8V, 3.3V und 5V — direkter Anschluss ohne Pegelwandler!

Plattform UART I2C Logikpegel
Arduino Uno/Nano 5V ✓
Arduino Mega 5V ✓
ESP8266 3.3V ✓
ESP32 3.3V ✓
STM32 (Blue Pill) 3.3V ✓
Raspberry Pi Pico 3.3V ✓
Raspberry Pi 3/4/5 3.3V ✓
Orange Pi 3.3V ✓
Banana Pi 3.3V ✓
ATtiny, nRF52, MSP430 1.8V ✓

Dies ist nur eine Basisliste — DimmerLink funktioniert mit jedem Mikrocontroller, der UART oder I2C hat!




Schnellbeispiel

Arduino + I2C — Helligkeit auf 50% setzen:

cpp
#include 

void setup() {
    Wire.begin();

    // Set brightness to 50%
    Wire.beginTransmission(0x50);
    Wire.write(0x10);  // Brightness register
    Wire.write(50);    // 50%
    Wire.endTransmission();
}

void loop() {}

Python + UART:

python
import serial

ser = serial.Serial('/dev/ttyUSB0', 115200)
ser.write(bytes([0x02, 0x53, 0x00, 50]))  # SET dimmer 0 to 50%
response = ser.read(1)
print("OK" if response[0] == 0 else "Error")

Beispiel mit seriellem Terminal:

python
1. Port → select your COM port
2. Baud: 115200
3. Send → "Send Numbers" tab
4. Enter: 02 53 00 32 or 0x02 0x53 0x00 0x32 (HEX 32 is 50 in decimal)
5. Click "Send Numbers"



Codebeispiele

Fertige Beispiele befinden sich im Ordner examples/ :

python
examples/
├── arduino/
│   ├── uart_basic.ino
│   └── i2c_basic.ino
├── python/
│   ├── uart_example.py
│   └── i2c_example.py
└── micropython/
    ├── uart_example.py
    └── i2c_example.py



Support


Documentation Version: 1.0
Date: 2026-01

Inhaltsverzeichnis | Weiter: Schnellstart →