🛠 Configurar E/S en Xerxes Pi 2026
Objetivos
Este tutorial tiene como objetivo dominar las Entradas/Salidas (E/S) en la placa portadora Xerxes Pi 2026. Utilizaremos los conectores Qwiic para periféricos I2C y el conector mezzanine para señales específicas. El objetivo es leer un sensor y mostrar datos en una pantalla OLED, utilizando los pines expuestos por esta placa compacta de 120 x 40 mm.
Material Necesario
- Placa Xerxes Pi 2026 con módulo Raspberry Pi CM4 o CM5 insertado.
- Fuente de alimentación USB-C o PoE (según el puente seleccionado).
- Cables Qwiic SH-series (4 pines) para I2C.
- Sensor I2C (ej: BME280) y pantalla OLED I2C (SSD1306).
- Raspberry Pi OS o Ubuntu Server instalado en el almacenamiento NVMe M.2.
- Terminal SSH o pantalla HDMI vía el conector mezzanine.
Pasos
- Preparación del Hardware: Asegúrese de que el módulo CM4/CM5 esté bien encajado en los dos conectores mezzanine de 100 pines. Verifique el puente de alimentación para elegir USB-C o PoE. Conecte el cable Qwiic del sensor BME280 a uno de los conectores SH-series disponibles en la placa.
- Configuración de Software: Conéctese por SSH. Active la interfaz I2C usando la utilidad de configuración:
sudo raspi-config nonint do_i2c 0
sudo reboot
- Instalación de Bibliotecas: Instale las herramientas necesarias para comunicarse con periféricos I2C:
sudo apt update
sudo apt install python3-smbus i2c-tools
- Detección de Periféricos: Escanee el bus I2C para confirmar que el sensor y la pantalla son reconocidos. Debería ver sus direcciones (ej: 0x76 para BME280, 0x3C para OLED):
sudo i2cdetect -y 1
- Script de Prueba: Cree un script Python simple para leer el sensor y mostrar la temperatura en el OLED. Use las bibliotecas
adafruit-circuitpython-bme280yadafruit-circuitpython-ssd1306.
import board
import busio
import adafruit_bme280
import adafruit_ssd1306
i2c = busio.I2C(board.SCL, board.SDA)
bme = adafruit_bme280.Adafruit_BME280_I2C(i2c)
display = adafruit_ssd1306.SSD1306_I2C(128, 64, i2c)
while True:
display.fill(0)
display.text(f"Temp: {bme.temperature:.1f}C", 0, 0)
display.show()
- Ejecución: Ejecute el script. Los datos deben aparecer en el OLED. Si no se muestra nada, verifique las conexiones Qwiic y las direcciones I2C.
Verificación
El sensor debe transmitir datos consistentes y la pantalla debe actualizar la temperatura en tiempo real. Use dmesg para verificar la ausencia de errores del bus I2C. El sistema debe permanecer estable bajo carga ligera.
Para Ir Más Allá
Explore la expansión de audio I2S a través de los conectores Qwiic. Integre esta configuración en Docker para una gestión aislada, como sugiere la aplicación de monitoreo para macOS. Consulte los archivos KiCad en GitHub para entender el enrutamiento de las señales CSI y HDMI expuestas en el mezzanine.
Otros tutoriales para esta placa
Ejemplos de código para esta placa
poe-status-monitor.pypythonnvme-benchmark.shbashqwiic-bme280-reader.pypythonpwm-fan-control.pypythonethernet-poe-config.shbashnvme_storage_benchmark-6.inobash