Ficha de referencia
Direcciones I2C
Qué es realmente esa dirección hexadecimal de un escaneo del bus

Referencia de direcciones I2C
Un escáner I2C solo imprime un número hexadecimal — esto convierte ese número en "qué módulo es y qué otra cosa podría ser". Las direcciones son de 7 bits (el byte que muestra un escáner de 8 bits, incluido el bit R/W, es el doble). Varias entradas se solapan a propósito: no es un error de esta tabla, es una trampa real en un bus compartido, señalada en la última columna.
| Dirección | Referencia | Módulo / función | Pin de selección de dirección | Cuidado |
|---|---|---|---|---|
| 0x0C | AK8963 | Magnetómetro integrado en el MPU-9250 | Fija | Solo visible al activar el modo bypass I2C del MPU-9250 — invisible en un escaneo normal |
| 0x18 / 0x19 | LIS3DH | Acelerómetro de 3 ejes | SDO/SA0: GND = 0x18, VDD = 0x19 | — |
| 0x1D / 0x53 | ADXL345 | Acelerómetro de 3 ejes | ALT ADDRESS: VDD = 0x1D, GND = 0x53 | — |
| 0x1E | HMC5883L / QMC5883L | Magnetómetro / brújula digital | Fija | — |
| 0x20–0x27 | PCF8574 | Expansor de E/S de 8 bits | A0–A2 (3 pines, 8 combinaciones) | El típico adaptador I2C para LCD HD44780 suele venir en 0x27 (los tres pines a nivel alto) |
| 0x23 / 0x5C | BH1750 | Sensor de luz ambiente (lux) | ADDR: GND = 0x23, VDD = 0x5C | — |
| 0x29 | VL53L0X / VL53L1X | Sensor de distancia de tiempo de vuelo | Fija | Reprogramable en tiempo de ejecución con el pin XSHUT — el truco habitual para tener más de uno en un bus |
| 0x29 / 0x39 / 0x49 | TSL2561 | Sensor de luminosidad | ADDR: GND = 0x29, flotante = 0x39, VDD = 0x49 | Su ajuste a GND (0x29) choca con el VL53L0X de arriba — comprueba ambos si un escaneo muestra solo uno |
| 0x38–0x3F | PCF8574A | Expansor de E/S de 8 bits | A0–A2 (3 pines, 8 combinaciones) | Misma familia de chip que el PCF8574 de arriba, solo con otro prefijo fijo — por eso un adaptador LCD aparece en 0x27 y otro en 0x3F |
| 0x3C / 0x3D | SSD1306 / SH1106 | Pantalla OLED (0.96″/1.3″) | SA0 — normalmente un puente de soldadura en el módulo, no un pin | — |
| 0x40–0x4F | PCA9685 | Driver PWM/servo de 16 canales | A0–A5 (por defecto 0x40) | Comparte su dirección por defecto con el INA219 de abajo — un montaje con driver de servos y sensor de corriente es el caso clásico en el que hay que mover uno de los dos |
| 0x40–0x4F | INA219 | Sensor de corriente / potencia | A0/A1, cada uno de 4 estados (por defecto 0x40) | Ver el PCA9685 de arriba |
| 0x48–0x4B | ADS1115 / ADS1015 | ADC de 16 bits | ADDR: GND = 0x48, VDD = 0x49, SDA = 0x4A, SCL = 0x4B | — |
| 0x48–0x4F | LM75 / LM75A | Sensor de temperatura | A0–A2 (3 pines) | Se solapa con el propio rango del ADS1115 — es fácil confundirlos en un bus compartido |
| 0x50–0x57 | 24Cxx (24LC256, 24LC512…) | EEPROM serie | A0–A2 (3 pines) | — |
| 0x57 | DS3231 (24C32 integrada) | EEPROM integrada en la mayoría de módulos RTC DS3231 | Fija | Un segundo chip, independiente, en el mismo módulo que el propio reloj DS3231, en 0x68 más abajo |
| 0x5A | MLX90614 | Termómetro IR sin contacto | Fija | — |
| 0x60 / 0x61 | MCP4725 | DAC de 12 bits | A0: GND = 0x60, VDD = 0x61 | Otras variantes del MCP4725 (A1/A2) parten de una dirección base totalmente distinta — comprueba el marcado exacto de la pieza |
| 0x62 | SCD40 / SCD41 | Sensor de CO₂ + temperatura + humedad | Fija | — |
| 0x68 | DS1307 / DS3231 | Reloj de tiempo real | Fija | El conflicto I2C más reportado en un banco de aficionado — ver la fila del MPU-6050 justo debajo |
| 0x68 / 0x69 | MPU-6050 / MPU-9250 | IMU (acelerómetro + giroscopio) | AD0: GND = 0x68, VDD = 0x69 | Por defecto usa exactamente la misma dirección que el RTC DS3231/DS1307 de arriba — un proyecto que combine reloj y sensor de movimiento necesita AD0 a nivel alto |
| 0x70–0x77 | HT16K33 | Controlador de matriz LED / 7 segmentos | A0–A2 (3 pines) | Mismo rango que el multiplexor I2C de abajo — comprueba ambos antes de suponer que una dirección hex pertenece a la pantalla |
| 0x70–0x77 | PCA9548A / TCA9548A | Multiplexor I2C de 8 canales | A0–A2 (3 pines) | La herramienta a la que se recurre para resolver un conflicto de direcciones puede chocar a su vez con una pantalla HT16K33 — ver arriba |
| 0x76 / 0x77 | BMP280 / BME280 / BME680 | Presión barométrica (+ humedad/gas en las piezas BME) | SDO: GND = 0x76, VDD = 0x77 | — |
| 0x77 | BMP180 | Sensor de presión barométrica más antiguo | Fija — sin pin de dirección, a diferencia de sus sucesores BMP280/BME280 | Comparte 0x77 con un BMP280/BME280 puenteado a VDD — solo uno de los dos por bus con ese ajuste |







