Saltar al contenido principal

Primeros pasos con XIAO ePaper Display Board - EE04

XIAO ePaper Display Board EE04

Introducción

Impulsada por XIAO ESP32-S3 Plus, la placa de visualización EE04 es compatible con pantallas ePaper de 24 pines y 50 pines. Incorpora un conector de batería JST de 2,0 mm con interruptor de encendido, un CI de carga integrado y viene con un botón de reinicio y tres botones de usuario. Es ideal para proyectos ePaper de bajo consumo, como señalización digital, etiquetas electrónicas y paneles de información portátiles.

Características

  • Impulsada por XIAO ESP32-S3 Plus: Funciona inmediatamente al conectarla a una pantalla ePaper compatible.
  • Compatibilidad versátil de pantallas: Compatible con una amplia gama de pantallas ePaper, admitiendo interfaces de 24 pines y 50 pines con cambio sencillo mediante jumpers.
  • Conector de batería con interruptor: Proporciona una conexión de batería sencilla e integra un interruptor, lo que permite una gestión de energía eficiente y ahorro energético.
  • Botones fáciles de usar: Incluye 1 botón de reinicio y 3 botones programables por el usuario, ofreciendo flexibilidad para acelerar proyectos y funciones personalizables.

Especificaciones

ParámetroDescripción
ProcesadorXIAO ESP32-S3 Plus
Conector ePaperFPC 24 Pin 0.5mm
FPC 50 Pin 0.5mm
Conector de bateríaJST 2.0mm
InterruptorEncendido/Apagado de alimentación por batería
Alimentación- Batería de litio de 3,7 V
- USB Type-C
Botón- 1x Botón de reinicio
- 3x Botón de usuario

Guía de selección de placa ePaper

ProductoePaper Display Board EE04ePaper BreakoutePaper Driver Board
ProcesadorXIAO ESP32-S3 PlusSerie XIAOSerie XIAO
Pantallas ePaper compatiblesePaper de 24 pines
ePaper de 50 pines
ePaper de 24 pinesePaper de 24 pines
Conector ePaperFPC 24 Pin, 0.5mm
FPC 50 Pin, 0.5mm
FPC 24 Pin 0.5mmFPC 24 Pin 0.5mm
Conector de bateríaJST 2.0mm/JST 2.0mm
InterruptorEncendido/Apagado de alimentación por batería/Encendido/Apagado de alimentación por batería
Puerto de extensión IO/conexión de otros controladoresconexión de sensores adicionales
Puerto de extensión IO/conexión de otros controladoresconexión de sensores adicionales

Aplicaciones

  • Panel de control para hogar inteligente: Muestra información en tiempo real como actualizaciones del clima, eventos del calendario y notificaciones de varios dispositivos del hogar inteligente.
  • Monitorización de energía: Muestra datos de consumo energético de contadores inteligentes, ayudando a los propietarios a seguir y gestionar su uso de energía de forma más eficiente.
  • Alertas de seguridad: Muestra alertas y notificaciones sobre eventos de seguridad, como detección de movimiento o activación de sensores de puertas/ventanas.
  • Pantalla de termostato inteligente: Muestra niveles de temperatura y humedad, así como los ajustes de control de tu termostato inteligente.
  • Marco de fotos digital: Crea un marco de fotos digital con WiFi que pueda mostrar imágenes desde tu red de hogar inteligente.

Descripción general del hardware

tip

Esta versión XIAO ePaper Display Board(ESP32-S3) - EE04 no es compatible con la funcionalidad NFC.

ePaper compatible

Conector de 24 pines

tip

Al usar la XIAO ePaper Display Board, asegúrate de configurar el jumper según el tipo de pantalla ePaper:

  • Para pantallas ePaper de 24 pines → ajusta el jumper a 24 pines

⚠️ Usar una configuración de jumper incorrecta puede hacer que la pantalla ePaper no muestre nada o muestre contenido anómalo. Verifica siempre la posición del jumper antes de encender.

Conector de 50 pines

tip

Al usar la XIAO ePaper Display Board, asegúrate de configurar el jumper según el tipo de pantalla ePaper:

  • Para pantallas ePaper de 50 pines → ajusta el jumper a 50 pines

⚠️ Usar una configuración de jumper incorrecta puede hacer que la pantalla ePaper no muestre nada o muestre contenido anómalo. Verifica siempre la posición del jumper antes de encender.

Descripción general del software

Instalar la biblioteca Seeed GFX

tip

Esta biblioteca tiene la misma función que la biblioteca TFT y no es compatible con ella. Si has instalado la biblioteca TFT u otras bibliotecas de pantalla similares, desinstálalas primero.

Descarga e instala la biblioteca Seeed GFX desde GitHub.

Desplázate hacia abajo y abre este enlace.

Selecciona el tipo de tu dispositivo y generará algo de código. Copia ese código y lo usaremos más tarde.

tip

Si haces una elección incorrecta, la pantalla no mostrará nada.

Así que asegúrate del tipo de tus dispositivos o componentes.

Después de descargar la biblioteca, ve a Sketch -> Include Library -> Add .ZIP Library y selecciona la biblioteca descargada.

Hay 4 ejemplos básicos, abre un ejemplo básico que te guste:

  1. Bitmap: Muestra una imagen de mapa de bits.
  2. Clock: Muestra un reloj.
  3. Clock_digital: Muestra un reloj digital.
  4. Shape: Muestra aleatoriamente palabras y formas de diferentes tamaños.

Primeros pasos

Aquí usamos una pantalla de 5,83 pulgadas como ejemplo. Los pasos son los mismos para todas las pantallas de 24 pines; la única diferencia es seleccionar el tamaño de pantalla adecuado en el controlador.

Crea un nuevo archivo "driver.h" y pega ese código en él. El código debería ser como:

#define BOARD_SCREEN_COMBO 503 // 5.86 inch monochrome ePaper Screen (UC8179)
#define USE_XIAO_EPAPER_DISPLAY_BOARD_EE04

Después de eso, ve a Tools -> Board -> XIAO ESP32S3 y Tools -> Port -> Select the port your board is connected to. Luego haz clic en Upload para cargar el código.

¡Ahora verás la respuesta en tu pantalla de epaper! A continuación se muestran los resultados de los ejemplos de Helloworld.

tip

⚠️ Nota: Orientación del cable de ePaper Al conectar la pantalla ePaper a la XIAO ePaper Display Board, asegúrate de que el cable FPC esté insertado en la dirección correcta.

⚠️ ¡No inviertas el conector! Insertar el cable al revés puede hacer que el ePaper no muestre nada o incluso dañar la pantalla/placa. La imagen de abajo muestra la conexión correcta:

Botones de usuario en la XIAO ePaper Display Board (ESP32-S3) - EE04

La EE04 incorpora tres botones programables por el usuario que se pueden utilizar para varios propósitos de control. Esta sección muestra cómo leer los estados de los botones y responder a las pulsaciones usando Arduino.

En la EE04, los tres botones están conectados a la XIAO ESP32-S3 Plus:

KEY1KEY2KEY3
GPIO2_D1/A1GPIO3_D2/A2GPIO5_D4/A4

Todos los botones son activos en bajo, lo que significa que leen LOW cuando se presionan y HIGH cuando se sueltan.

Ejemplo básico de lectura de botones

Este ejemplo muestra cómo detectar pulsaciones de botones e imprimir mensajes en el monitor serie.


// reTerminal E Series - Button Test
// Based on hardware schematic

// Define button pins according to schematic
const int BUTTON_KEY0 = 2; // KEY0 - GPIO2
const int BUTTON_KEY1 = 3; // KEY1 - GPIO3
const int BUTTON_KEY2 = 5; // KEY2 - GPIO5

// Button state variables
bool lastKey0State = HIGH;
bool lastKey1State = HIGH;
bool lastKey2State = HIGH;

void setup() {
// Initialize serial communication
Serial.begin(115200);
while (!Serial) {
delay(10); // Wait for serial port to connect
}

Serial.println("=================================");
Serial.println("Press any button to see output");
Serial.println();

// Configure button pins as inputs
// Hardware already has pull-up resistors, so use INPUT mode
pinMode(BUTTON_KEY0, INPUT_PULLUP);
pinMode(BUTTON_KEY1, INPUT_PULLUP);
pinMode(BUTTON_KEY2, INPUT_PULLUP);

// Read initial states
lastKey0State = digitalRead(BUTTON_KEY0);
lastKey1State = digitalRead(BUTTON_KEY1);
lastKey2State = digitalRead(BUTTON_KEY2);

Serial.println("Setup complete. Ready to detect button presses...");
}

void loop() {
// Read current button states
bool key0State = digitalRead(BUTTON_KEY0);
bool key1State = digitalRead(BUTTON_KEY1);
bool key2State = digitalRead(BUTTON_KEY2);

// Check KEY1
if (key0State != lastKey0State) {
if (key0State == LOW) {
Serial.println("KEY0 (GPIO2) pressed!");
} else {
Serial.println("KEY0 (GPIO2) released!");
}
lastKey0State = key0State;
delay(50); // Debounce delay
}

// Check KEY2
if (key1State != lastKey1State) {
if (key1State == LOW) {
Serial.println("KEY1 (GPIO3) pressed!");
} else {
Serial.println("KEY1 (GPIO3) released!");
}
lastKey1State = key1State;
delay(50); // Debounce delay
}

// Check KEY3
if (key2State != lastKey2State) {
if (key2State == LOW) {
Serial.println("KEY2 (GPIO5) pressed!");
} else {
Serial.println("KEY2 (GPIO5) released!");
}
lastKey2State = key2State;
delay(50); // Debounce delay
}

delay(10); // Small delay to prevent excessive CPU usage
}

Batería de usuario en la XIAO ePaper Display Board (ESP32-S3) - EE04

Cuando funcione con alimentación por batería:

  • El dispositivo entrará automáticamente en modo de bajo consumo entre las actualizaciones

  • La duración de la batería depende de la frecuencia de actualización (normalmente 3 meses con una carga completa y la configuración predeterminada)

  • El dispositivo mostrará un icono de batería baja en la esquina superior derecha cuando el nivel de batería sea inferior al 20%

tip

Si quieres escribir algo de código por tu cuenta para leer el voltaje de la batería, será más preciso añadir un retardo de 10 ms antes de la función analogRead().

#define VOLTAGE_PIN A0 //GPIO1
#define ADC_ENABLE_PIN A5 //GPIO6

void setup() {
Serial.begin(115200);
delay(10);

pinMode(VOLTAGE_PIN, INPUT);
pinMode(ADC_ENABLE_PIN, OUTPUT);
digitalWrite(ADC_ENABLE_PIN , HIGH);
}


void loop() {
analogReadResolution(12);
int adcValue = analogRead(VOLTAGE_PIN);
float voltage = (adcValue / 4096.0) *7.16;
Serial.print("ADC Value: ");
Serial.print(adcValue);
Serial.print(" Voltage: ");
Serial.print(voltage, 3);
Serial.println(" V");
delay(10);
}

Mostrar imágenes personalizadas en la XIAO ePaper Display Board (ESP32-S3) - EE04

Busca el ejemplo Bitmap en la biblioteca GFX y selecciónalo.

Ten en cuenta que necesitas crear un archivo driver.h dentro del directorio de tu proyecto. Para más detalles, haz clic para Más información..

A continuación, navega a la herramienta SenseCraft HMI en https://sensecraft.seeed.cc/hmi/tools/dither y sube la imagen que deseas mostrar.

Después de subir la imagen, genera el array en C (datos de la imagen).

Copia el contenido del array. Ten cuidado de copiar solo los datos hexadecimales y no incluir caracteres irrelevantes.

tip

Si los colores de tu pantalla aparecen invertidos en comparación con tu diseño original, selecciona la opción Invert Colors en la herramienta HMI antes de generar el código.

Sobrescribe el array existente en el archivo image.c o image.h dentro de tu sketch de Arduino.

Por último, carga el programa en tu XIAO ESP32-S3. Ahora deberías ver tu imagen personalizada mostrada en la pantalla ePaper.

Recursos

Soporte técnico y debate sobre el producto

¡Gracias por elegir nuestros productos! Estamos aquí para ofrecerte diferentes tipos de soporte para garantizar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para adaptarnos a diferentes preferencias y necesidades.

Loading Comments...