Ir al contenido

← Inicio rápido | Contenido | Siguiente: Comunicación UART →

Conexión de hardware

Diagramas de cableado para conectar DimmerLink a microcontroladores y computadoras de placa única populares.





Conector de entrada (a su proyecto)

Pin Función Descripción
VCC Alimentación 1.8V, 3.3V o 5V DC
GND Tierra Tierra común
TX/SDA Datos UART TX o I2C SDA
RX/SCL Reloj UART RX o I2C SCL


Conector de salida (al módulo dimmer)

Pin Función Descripción
VCC Alimentación Igual que la entrada
GND Tierra Tierra común
Z-C Cruce por cero Señal de cruce por cero
Dim Control Señal de compuerta TRIAC



Compatibilidad

DimmerLink soporta un amplio rango de voltajes de alimentación y niveles lógicos:

Voltaje Alimentación VCC Niveles lógicos
1.8V
3.3V
5.0V

✅ ¡Conexión directa a cualquier microcontrolador sin conversores de nivel!




Diagrama de conexión general

diagram

python
┌─────────────────┐      ┌──────────────────┐      ┌─────────┐      ┌──────┐
│  Your Project   │      │   DimmerLink     │      │ Dimmer  │      │ Lamp │
│  (Arduino/RPi)  │◄────►│                  │◄────►│ (TRIAC) │◄────►│      │
└─────────────────┘      └──────────────────┘      └─────────┘      └──────┘
     UART/I2C                                         AC 220V



Plataformas compatibles

DimmerLink funciona con cualquier microcontrolador que tenga interfaz UART o I2C.

Plataforma UART I2C Nivel lógico Conexión
Arduino Uno/Nano 5V Directa
Arduino Mega 5V Directa
Arduino Due 3.3V Directa
ESP8266 3.3V Directa
ESP32 3.3V Directa
STM32 Blue Pill 3.3V Directa
Raspberry Pi Pico 3.3V Directa
Raspberry Pi 3/4/5 3.3V Directa
Orange Pi 3.3V Directa
Banana Pi 3.3V Directa
ATtiny, nRF52, MSP430 1.8V Directa

¡Cualquier controlador con UART o I2C se conecta directamente!




Conexión I2C


Requisitos

  • Resistencias pull-up: Muchos controladores ya tienen pull-ups I2C integrados. Añada resistencias de 4,7 kΩ en SDA y SCL hacia VCC
  • Velocidad: 100 kHz (Standard Mode)
  • Dirección: 0x50


Diagrama de cableado I2C

python
                    VCC (your board)
                     │
                ┌────┴────┐
               4.7kΩ     4.7kΩ
                │         │
┌───────────┐   │         │   ┌──────────────────┐
│           │   │         │   │   DimmerLink     │
│   Your    │───┴─────────│───│ SDA              │
│  Project  │             │   │                  │
│   SDA     │─────────────┴───│ SCL              │
│   SCL     │                 │                  │
│   GND     │─────────────────│ GND              │
│   VCC     │─────────────────│ VCC              │
└───────────┘                 └──────────────────┘



Conexión del dimmer

DimmerLink Dimmer Descripción
VCC VCC Alimentación (igual que del MCU)
GND GND Tierra común
Z-C Z-C (Zero Cross) Señal de cruce por cero
Dim DIM / PWM / Gate Señal de control TRIAC



Arduino Uno / Nano


Conexión I2C

Arduino DimmerLink
A4 (SDA) SDA
A5 (SCL) SCL
GND GND
5V VCC


Conexión UART

Arduino DimmerLink
TX (1) o SoftwareSerial RX
RX (0) o SoftwareSerial TX
GND GND
5V VCC

📝 Nota: En Arduino Uno, los pines 0/1 se usan para USB. Se recomienda usar SoftwareSerial.

cpp
#include 
SoftwareSerial dimmerSerial(10, 11);  // RX, TX

void setup() {
    dimmerSerial.begin(115200);
}



Arduino Mega


Conexión I2C

Arduino Mega DimmerLink
20 (SDA) SDA
21 (SCL) SCL
GND GND
5V VCC


Conexión UART

Arduino Mega DimmerLink
TX1 (18) RX
RX1 (19) TX
GND GND
5V VCC

Arduino Mega tiene 4 UART por hardware (Serial, Serial1, Serial2, Serial3).




ESP8266 (NodeMCU, Wemos D1)


Conexión I2C

ESP8266 DimmerLink
D2 (GPIO4) SDA
D1 (GPIO5) SCL
GND GND
3.3V VCC


Conexión UART

ESP8266 DimmerLink
TX (GPIO1) RX
RX (GPIO3) TX
GND GND
3.3V VCC

📝 Note: GPIO1/GPIO3 are used for USB. Alternatives:
- Use Serial.swap() to remap to GPIO15/GPIO13
- Or use I2C instead of UART




ESP32


Conexión I2C

ESP32 DimmerLink
GPIO21 SDA
GPIO22 SCL
GND GND
3.3V VCC

Los pines I2C se pueden reasignar:

cpp
Wire.begin(SDA_PIN, SCL_PIN);


Conexión UART

ESP32 DimmerLink
GPIO17 (TX2) RX
GPIO16 (RX2) TX
GND GND
3.3V VCC

ESP32 tiene 3 UART por hardware (Serial, Serial1, Serial2).




STM32 Blue Pill


Conexión I2C

STM32 DimmerLink
PB7 (I2C1 SDA) SDA
PB6 (I2C1 SCL) SCL
GND GND
3.3V VCC


Conexión UART

STM32 DimmerLink
PA9 (USART1 TX) RX
PA10 (USART1 RX) TX
GND GND
3.3V VCC



Raspberry Pi Pico


Conexión I2C

Pico DimmerLink
GP4 (I2C0 SDA) SDA
GP5 (I2C0 SCL) SCL
GND GND
3V3 VCC


Conexión UART

Pico DimmerLink
GP0 (UART0 TX) RX
GP1 (UART0 RX) TX
GND GND
3V3 VCC



Raspberry Pi 3/4/5


Conexión I2C

Raspberry Pi DimmerLink
GPIO2 (Pin 3) SDA
GPIO3 (Pin 5) SCL
GND (Pin 6) GND
3.3V (Pin 1) VCC

Habilitar I2C:

bash
sudo raspi-config
# Interface Options → I2C → Enable


Conexión UART

Raspberry Pi DimmerLink
GPIO14 (Pin 8) RX
GPIO15 (Pin 10) TX
GND (Pin 6) GND
3.3V (Pin 1) VCC

Habilitar UART:

bash
sudo raspi-config
# Interface Options → Serial Port → Enable



Orange Pi / Banana Pi

La conexión es similar a Raspberry Pi, pero los números de GPIO pueden diferir.


Orange Pi (ej.: Orange Pi Zero)

⚠️ Warning: GPIO pinout differs between models! Check your specific board's documentation.

General principle:
1. Find I2C pins in your board's documentation
2. Connect SDA → SDA, SCL → SCL
3. Add 4.7kΩ pull-up resistors

Orange Pi DimmerLink
PA12 (TWI0-SDA) SDA
PA11 (TWI0-SCL) SCL
GND GND
3.3V VCC


Banana Pi (ej.: Banana Pi M2)

Banana Pi DimmerLink
GPIO2 (Pin 3) SDA
GPIO3 (Pin 5) SCL
GND GND
3.3V VCC

📝 Nota: Consulte la documentación de su modelo específico de Orange Pi / Banana Pi.




Resistencias pull-up I2C

Para un funcionamiento fiable del I2C, se requieren resistencias pull-up.


Cuándo se necesitan pull-ups externos

Placa Pull-ups integrados Recomendación
Arduino Débiles (~50 kΩ) Funciona con cables cortos, pero se recomiendan 4,7 kΩ
ESP8266/ESP32 Débiles Añadir 4,7 kΩ externos
Raspberry Pi Tiene 1,8 kΩ Generalmente suficiente
STM32 Ninguno Es necesario añadir externos


Cálculo del valor

  • Cables cortos (< 10 cm): 4,7 kΩ – 10 kΩ
  • Cables medios (10–50 cm): 2,2 kΩ – 4,7 kΩ
  • Cables largos (> 50 cm): 1 kΩ – 2,2 kΩ (no recomendado)



Recomendaciones de instalación

  1. Mantenga los cables cortos — El I2C es sensible a la longitud, mantenga los cables por debajo de 30 cm
  2. Blindaje — Para distancias largas, use cable blindado
  3. Alimentación separada — Use una fuente de alimentación separada para DimmerLink si la fuente principal es inestable
  4. Desacoplamiento — Añada un condensador de 100 nF entre VCC y GND cerca de DimmerLink



Conexión a otros controladores

DimmerLink funciona con cualquier microcontrolador que tenga UART o I2C:

  • PIC: Conexión a MSSP (I2C) o EUSART (UART)
  • AVR (ATmega, ATtiny): TWI para I2C, USART para UART
  • MSP430: Módulos eUSCI
  • nRF52: Periféricos TWIM/UARTE
  • RISC-V (ESP32-C3, GD32VF103): I2C/UART estándar

General principle:
1. Find I2C/UART pins in documentation
2. Connect according to tables above
3. Add pull-ups for I2C
4. Done!


← Inicio rápido | Contenido | Siguiente: Comunicación UART →