Directrices de Uso de Interfaces del Kit de Desarrollo para Módulo reComputer RK3576

Última actualización:

Configuración del sistema

WiFi

De forma predeterminada, las antenas de WiFi y Bluetooth no están montadas. Instale las antenas antes de usar el dispositivo para mejorar la intensidad de la señal y asegúrese de que estén conectadas a los conectores correctos.

Prueba de WiFi

Shell
nmcli device wifi list
sudo nmcli device wifi connect STU-TE password seeedkey968
sudo nmcli device wifi connect test-ap password 88888888
sudo nmcli device wifi connect SEEED-OFFICE password edgemaker2025
# 1-hour ping packet loss test
ping -w 3600 192.168.254.100

Bluetooth

Prueba de Bluetooth

Shell
bluetoothctl
scan on
scan off

Guía de acceso remoto (SSH)

Hardware: Módulo reComputer RK3576

Sistema operativo: Debian 12

Esta guía explica cómo acceder remotamente a su reComputer mediante el protocolo Secure Shell (SSH).

Habilitar SSH tras el primer flasheo

Después de instalar el sistema por primera vez, es posible que el servicio SSH no se inicie automáticamente. Habilítelo localmente en el dispositivo siguiendo estos pasos:

Inicie el servicio SSH:

bash
sudo systemctl start ssh

Configure SSH para que se inicie automáticamente al arrancar:

bash
sudo systemctl enable ssh

Compruebe el estado del servicio SSH:

bash
systemctl status ssh

Requisitos previos

  • El reComputer debe estar encendido y conectado a la misma red local (LAN) que su equipo principal.
  • Se recomienda una conexión Ethernet durante la configuración inicial para garantizar la estabilidad.

Identificar la dirección IP del dispositivo

Necesita la dirección IP del reComputer para establecer la conexión.

  • Desde un terminal local: Si tiene un monitor y un teclado conectados al reComputer, ejecute:
bash
hostname -I
  • Desde el panel del router: Acceda a la interfaz web de su router y busque un dispositivo llamado recomputer o similar en la lista de clientes DHCP.

Métodos de conexión

Opción A: Windows (PowerShell o Símbolo del sistema) Las versiones modernas de Windows incluyen un cliente SSH integrado.

  1. Pulse Win + R, escriba cmd y presione Enter.
  2. Introduzca el siguiente comando (sustituya 10.0.x.x por su IP real):
bash
ssh seeed@10.1.x.x
  1. Escriba yes cuando se le pida confirmar la huella digital del host.
  2. Introduce la contraseña seeed (los caracteres no se muestran al escribir).

Opción B: Terminal de Linux / macOS Abre tu terminal nativa y ejecuta:

bash
ssh seeed@<Your_Device_IP>

Opción C: Herramientas profesionales (recomendado) Para un entorno de desarrollo más robusto, considera usar:

  • MobaXterm: Incluye una barra lateral SFTP integrada para arrastrar y soltar archivos fácilmente.

Solución de problemas

  • Conexión rechazada: Asegúrate de que el servicio SSH esté activo en el reComputer. Puedes verificarlo localmente ejecutando:
bash
sudo systemctl status ssh
  • Problemas de firewall: Si el servicio está en ejecución pero bloqueado, permite el puerto 22 a través del firewall:
bash
sudo ufw allow 22
  • Fallo en la verificación de clave de host: Si has reinstalado recientemente el sistema operativo en la misma dirección IP, borra la clave antigua en tu PC usando:
bash
ssh-keygen -R <Your_Device_IP>

Depuración

Depuración serie por UART0

Depuración mediante UART0

Para la depuración serie, necesitas un cable USB-a-serie para conectar la interfaz UART0 de la placa al puerto USB del PC.

9.png

Inicio de sesión por serie

Parámetros de serie

Baudios: 1500000

Bits de datos: 8

Bits de parada: 1

Paridad: Ninguna

Inicio de sesión por USB-C OTG

Iniciar sesión con MobaXterm

Si te conectas vía USB-C durante el primer inicio de sesión, debes completar la configuración inicial de usuario:

10.png

Plain
root
1234

Una vez completada la configuración, puedes acceder al escritorio.

11.png

Uso de interfaces

Ranura para tarjeta SD

La tarjeta microSD puede usarse como medio de arranque del sistema o como almacenamiento adicional. Es compatible con tarjetas microSD / microSDHC / microSDXC.

17.png

Cuando se usa como medio de arranque del sistema, el módulo reComputer RK3576 inicia desde la tarjeta microSD por defecto. Consulta el tutorial de instalación del sistema para ver el procedimiento de grabación de imágenes.

Si se usa como almacenamiento ampliado, basta con insertar la tarjeta para que sea reconocida sin necesidad de grabar una imagen.

Reconocimiento en caliente y prueba de velocidad de lectura/escritura:

Shell
lsblk

18.png

Shell
# read
dd if=/dev/mmcblk1p1 of=/dev/null bs=512M count=1 iflag=direct
#clear cache
echo 3 > /proc/sys/vm/drop_caches
# write
dd if=/dev/zero of=/dev/mmcblk1p1 bs=512M count=1 oflag=direct conv=fdatasync

19.png

Uso de la interfaz M.2 Key M

La placa ofrece una interfaz M.2 Key M, capaz de satisfacer necesidades de ampliación de memoria o de potencia de cálculo.

20.png

La interfaz M.2 Key M permite conectar SSDs y diversos aceleradores de IA. Los modelos de SSD y acelerador de IA probados son los siguientes:

  • SSD

    • Seeed NVMe (128GB/256GB/512GB/1TB/2TB)

    • SAMSUNG 980

    • KIOXIA-EXCERIA G2 SSD

    • NXM-128

    • TWSC TSC3AN128-F2T70S

  • Acelerador de IA

    • RK1820/RK1828

    • Hailo-8/8L/10H

Nota

Los modelos anteriores solo indican que se ha completado la verificación de compatibilidad bajo las versiones actuales de hardware y software; no garantizan la compatibilidad de otros modelos de la misma marca o de diferentes lotes. El dispositivo puede comportarse de manera distinta debido a diferencias en el controlador, firmware, consumo energético y versión del hardware. Se recomienda verificarlo en la práctica antes de realizar compras al por mayor o despliegues. Esta interfaz solo admite SSDs PCIe NVMe, no SSDs M.2 SATA.

Guía de uso del SSD

Utilice el siguiente comando para identificar el dispositivo SSD:

Plain
lsblk

21.png

Pruebe la velocidad de lectura/escritura del SSD:

Shell
# Read
dd if=/dev/nvme0n1 of=/dev/null bs=1024M count=4 iflag=direct
#Clear Cache
echo 3 > /proc/sys/vm/drop_caches
# Write
dd if=/dev/zero of=/dev/nvme0n1 bs=1024M count=4 oflag=direct conv=fdatasync

donde /mnt/nvme debe reemplazarse por el directorio de montaje real del SSD.

22.png

Guía de uso de Hailo

Siga el video de instalación de Hailo y luego instale los paquetes necesarios indicados a continuación.

23.png

Instala los paquetes de software. Tras instalar el controlador PCIe básico, debes reiniciar el sistema para que los cambios surtan efecto.

24.png

Plain
# Install the PCIe driver
sudo dpkg -i hailort-pcie-driver_4.24.0_all.deb

# Reboot the system
sudo reboot

# After reboot, verify that the driver has been loaded
lsmod | grep hailo

# Install HailoRT
sudo dpkg -i hailort_4.24.0_arm64.deb

# Scan and verify the device status
hailortcli scan

# Create and activate the virtual environment
python3 -m venv hailo_env
source hailo_env/bin/activate

# Install the HailoRT Python library
pip install hailort-4.24.0-cp312-cp312-linux_aarch64.whl

# Verify the installation and device connection
python3 -c "from hailo_platform import VDevice; vdev = VDevice(); print('Successfully connected via VDevice! Device info:', vdev)"

25.png

26.png

27.png

Instala Hailo Model Zoo. Para ejecutar los modelos preentrenados oficiales, necesitas instalar Hailo Model Zoo y sus dependencias del sistema.

Plain
# 1. Install the required system libraries
sudo apt update
sudo apt install -y git libglib2.0-0t64 libgl1 libglx-mesa0

# 2. Clone the official repository (the latest branch is recommended)
git clone https://github.com/hailo-ai/hailo_model_zoo.git
cd hailo_model_zoo
mkdir -p ~/hailo_models
cd ~/hailo_models

wget \
https://hailo-model-zoo.s3.eu-west-2.amazonaws.com/ModelZoo/Compiled/v2.19.0/hailo8/yolov8n.hef

Confirma el archivo:

Plain
ls -lh yolov8n.hef

Luego, analiza primero el HEF:

Plain
hailortcli parse-hef yolov8n.hef

Asegúrate de confirmar que es para:

Plain
HAILO8

en lugar de:

Plain
HAILO8L
HAILO10H

Después, ejecútalo directamente:

Plain
hailortcli run yolov8n.hef

28.png

Guía de uso de RK182x

El módulo Seeed reComputer RK3576 soporta nativamente las tarjetas aceleradoras de la serie RK182x. No se requieren pasos complejos de instalación de controladores; funcionan directamente al conectarlas.

Instalar RK1820

Apaga el reComputer RK3576.

Inserta el acelerador de IA RK1820 en la ranura M.2 correspondiente y fíjalo con un tornillo.

Tras la instalación, enciende el dispositivo e inicia sesión en el sistema. La siguiente imagen muestra la posición de instalación.

Nota:

No insertes ni retires el RK1820 mientras el dispositivo esté encendido.

29.png

Verificar la conexión PCIe del RK1820

Una vez dentro del sistema, ejecuta:

Plain
lspci

En condiciones normales, el RK1820 debe reconocerse como un acelerador de procesamiento PCIe.

Ejemplo:

30.png

Verifica además el ID de proveedor y el ID de dispositivo PCI:

Plain
lspci -nn

Ejemplo:

31.png

Plain
1d87:182a

indica que el sistema ha enumerado correctamente el RK1820.

Verificar el estado del enlace PCIe

Ejecuta:

Plain
sudo dmesg | grep -Ei "pcie|rkep|182a"

En condiciones normales, deberías ver algo similar a:

Plain
PCIe Link up
PCIe Gen.2 x1 link up
pcie-rkep 0000:01:00.0

32.png

Esto indica que el enlace PCIe entre el RK3576 y el RK1820 se ha establecido correctamente.

Verifica además el nodo de dispositivo del RK1820:

Plain
ls -l /dev/pcie-rkep-*

Ejemplo:

33.png

Plain
/dev/pcie-rkep-0000:01:00.0

Si ves este nodo de dispositivo, significa que el controlador PCIe del RK1820 funciona correctamente.

Instalar el runtime RKNN3

Este artículo utiliza RKNN3 V1.1.0. El paquete de instalación está disponible en este enlace de descarga.

Nombre del paquete de instalación:

Plain
rknn3_rk182x_m2_v1.1.0_installer_arm64.tgz

34.png

Después de descargarlo al PC, súbelo al reComputer RK3576 Dev Kit. Aquí usamos como ejemplo la subida a la carpeta Downloads.

Accede al directorio de descargas:

Plain
cd ~/Downloads

Crea un directorio para la extracción:

Plain
mkdir -p rk182x_m2_installer

Extrae el paquete de instalación:

Plain
tar -xzf rknn3_rk182x_m2_v1.1.0_installer_arm64.tgz \
-C rk182x_m2_installer

Accede al directorio de instalación:

Plain
cd rk182x_m2_installer

Ejecuta la instalación:

Plain
sudo ./install.sh

Reinicia el sistema después de la instalación:

Plain
sudo reboot

Nota:

La versión de RKNN3 Runtime debe ser compatible con la versión de RKNN3 Toolkit utilizada durante la conversión del modelo.

Si las versiones del modelo y del Runtime no coinciden, pueden producirse errores como los siguientes durante la inicialización del modelo:

Plain
MODEL_SETUP fail
rknn3_model_init fail

Verificar el entorno de RKNN3 Runtime

Tras reiniciar el sistema, comprueba el servicio RKNN3:

Plain
systemctl status rknn3.service --no-pager

En condiciones normales, debería mostrar lo siguiente:

Plain
Active: active (running)

35.png

Comprobar la versión de RKNN3

Plain
sudo rknn-smi -v

Puedes consultar:

Plain
rknn-smi version
PCIe driver version
RC chips connect version
EP chips connect version
PCIe Device firmware version
rknn3 API version

36.png

Comprobar la información del dispositivo RK1820

Plain
sudo rknn-smi info -l

En condiciones normales, deberías ver algo similar a esto:

Plain
Device Count: 1

Device ID: 0
Communication mode: PCIe
Product Name: RM1820MC0-F
Chip Count: 1
Chip ID: 0
Chip Name: RK1820

37.png

Esto indica que RKNN3 Runtime ha reconocido correctamente el RK1820.

Comprobar el estado del Runtime de RK1820

Plain
sudo rknn-smi info

Puedes consultar:

  • Estado del dispositivo

  • Salud (Health)

  • Utilización de la NPU

  • Temperatura

  • Uso de memoria

En condiciones normales, debería mostrar lo siguiente:

Plain
Status: Online
Health: OK

38.png

Si necesitas ver el estado del RK1820 en tiempo real, ejecuta:

Plain
sudo rknn-smi info -w

Este comando es útil para observar los cambios en la utilización de la NPU, la memoria y la temperatura durante la inferencia del modelo.

39.png

Probar el RK1820 con Qwen3.5-0.8B

A continuación, utiliza Qwen3.5-0.8B para verificar la capacidad de inferencia LLM del RK1820. El enlace de descarga del modelo es:

Paquete del modelo (rknn3_models/v1.1.0):

Descargar el modelo Qwen3.5-0.8B (código de extracción: rknn)

El directorio del modelo Qwen3.5-0.8B contiene los siguientes archivos:

Plain
Qwen3.5-0.8B/
鈹溾攢鈹€ Qwen3.5-0.8B.rknn
鈹溾攢鈹€ Qwen3.5-0.8B.weight
鈹溾攢鈹€ Qwen3.5-0.8B.tokenizer.gguf
鈹斺攢鈹€ Qwen3.5-0.8B.embed.bin

Accede al directorio del modelo:

Plain
cd ~/Downloads/Qwen3.5-0.8B

Visualiza los archivos:

Plain
ls -lh

Ejemplo:

Plain
Qwen3.5-0.8B.embed.bin        485M
Qwen3.5-0.8B.rknn              21M
Qwen3.5-0.8B.tokenizer.gguf     11M
Qwen3.5-0.8B.weight            499M

40.png

Antes de ejecutar el modelo, se recomienda verificar la versión de RKNN3 Toolkit utilizada por el modelo.

Ejecuta:

Plain
strings Qwen3.5-0.8B.rknn | \
grep -Eai "compiler version|rknn3-toolkit|RK1820"

Confirma el modelo:

  • La plataforma objetivo es RK1820

  • La versión de RKNN3 Toolkit es compatible con el Runtime actual

Si la versión del modelo no coincide con el Runtime actual, se recomienda reemplazar el modelo o actualizar el RKNN3 Runtime en lugar de continuar ejecutándolo.

41.png

Ejecuta la prueba de rendimiento de Qwen3.5-0.8B. Ejecuta:

Plain
sudo rknn3_session_test \
Qwen3.5-0.8B.rknn \
Qwen3.5-0.8B.weight \
Qwen3.5-0.8B.tokenizer.gguf \
Qwen3.5-0.8B.embed.bin \
1024 256 0xff

Los parámetros principales utilizados en esta prueba son:

Plain
Context Length : 1024
Max Output     : 256 Tokens
NPU Core Mask  : 0xff

Los parámetros son:

Longitud de contexto

Plain
1024

indica la longitud de contexto utilizada en esta prueba.

Salida máxima

Plain
256

indica que esta prueba genera como máximo 256 Tokens.

Máscara de núcleo NPU

Plain
0xff

indica que se utilizan todos los núcleos NPU disponibles del RK1820.

Los resultados medidos de Qwen3.5-0.8B, probados en el Dev Kit reComputer RK3576 + Acelerador de IA RK1820, son los siguientes:

Datos detallados de la prueba:

42.png

Explicación de los resultados de la prueba

Prefill indica la velocidad a la que el modelo procesa el Prompt de entrada.

Medido en esta prueba:

Plain
319.55 tokens/s

Generate indica la velocidad a la que el modelo genera texto token por token, y es una métrica más importante para evaluar la experiencia interactiva real de un LLM.

Medido en esta prueba:

Plain
95.81 tokens/s

El tiempo promedio de generación por token es:

Plain
10.44 ms/token

Los resultados de las pruebas muestran que:

Qwen3.5-0.8B se ejecuta correctamente en el RK1820. Con esta configuración de prueba, la velocidad de generación medida es de aproximadamente 95.81 tokens/s.

Monitorizar el RK1820 durante la inferencia

Mientras se ejecuta la prueba del modelo, puede abrir otra terminal y ejecutar:

Plain
sudo rknn-smi info -w

Observe en tiempo real:

Plain
NPU Utilization
Memory Usage
Temperature
Health Status

Esto le permite evaluar la carga, el uso de memoria y el estado térmico del RK1820 mientras el modelo está en ejecución.

Problemas comunes

Fallo de MODEL_SETUP

Si aparece lo siguiente al ejecutar el modelo:

Plain
MODEL_SETUP fail, ack = ACK_FAIL
rknn3_model_init, recv model setup fail ack

Primero, verifique la versión de conversión del modelo:

Plain
strings *.rknn | \
grep -Eai "compiler version|rknn3-toolkit|RK1820"

Luego, compruebe el Runtime actual de RKNN3:

Plain
rknn-smi version

Asegúrese de que el Runtime sea compatible con la versión de RKNN3 Toolkit utilizada durante la conversión del modelo.

RK1820 no reconocido

Ejecute:

Plain
lspci -nn

Confirme si existe lo siguiente:

Plain
1d87:182a

Después, revise el nodo del dispositivo:

Plain
ls -l /dev/pcie-rkep-*

Finalmente, compruebe:

Plain
rknn-smi info -l

Si lspci no logra reconocer el RK1820, revise primero la instalación M.2 y el enlace PCIe, antes que el Runtime de RKNN3.

Estado anormal del RK1820

Ejecute:

Plain
sudo rknn-smi info

El estado normal debería ser:

Plain
Online
Health: OK

Si el dispositivo está desconectado, puede verificar adicionalmente:

Plain
sudo dmesg | grep -Ei "pcie|rkep|182a"

Revise los registros relacionados con PCIe y el controlador del RK1820.

Conclusión de la prueba

Tras completar la configuración anterior, puede utilizar el acelerador de IA RK1820 en el reComputer RK3576 Dev Kit a través de PCIe.

Esta prueba utiliza Qwen3.5-0.8B para la verificación:

Plain
Model            : Qwen3.5-0.8B
Prefill Speed    : 300.49 tokens/s
Generate Speed   : 92.89 tokens/s
Time per Token   : 10.77 ms
Result           : PASS

Esto demuestra que toda la cadena de inferencia LLM RK3576 → PCIe → RK1820 → RKNN3 → Qwen3.5-0.8B funciona correctamente.

Guía de HDMI 2.1

La placa cuenta con una interfaz HDMI 2.1 para conectar pantallas y otros dispositivos de vídeo, con soporte de hasta 4K a 120 fps.

Nota

La resolución y la tasa de refresco realmente disponibles dependen del dispositivo de visualización, el cable HDMI y el controlador del sistema. Al usar 4K@120 Hz, se recomienda un cable HDMI 2.1 que soporte el ancho de banda correspondiente.

43.png

En el sistema de escritorio Armbian, puede ajustar los parámetros de salida HDMI mediante la interfaz gráfica o la línea de comandos.

Configuración a través de la interfaz gráfica

  1. Abra Settings desde el escritorio de Armbian.

  2. Abra Displays.

  3. Seleccione el dispositivo de visualización HDMI conectado.

  4. Establezca la resolución, la frecuencia de actualización, la orientación de la pantalla y la relación de escala.

  5. Haga clic en Apply, confirme que la visualización es correcta y guarde la configuración.

44.png

Configuración a través de la línea de comandos

Primero, compruebe el tipo de sesión de escritorio actual:

Plain
echo "$XDG_SESSION_TYPE"

Si la salida es x11, puede usar xrandr para configurar los parámetros de salida HDMI. Ejecute los siguientes comandos en una terminal del escritorio Armbian como usuario actual; no utilice sudo.

Compruebe las interfaces de visualización y sus resoluciones y frecuencias de actualización admitidas:

Plain
xrandr --query

Si el sistema informa que no se encuentra el comando xrandr, ejecute:

Plain
sudo apt update
sudo apt install x11-xserver-utils

El nombre de la interfaz HDMI puede aparecer como HDMI-1, HDMI-A-1 u otro. Utilice el nombre reportado por xrandr --query en los comandos siguientes.

Por ejemplo, para establecer la salida HDMI en 4K 60 Hz:

Plain
xrandr --output HDMI-1 --mode 3840x2160 --rate 60

Si la lista de modos de xrandr --query incluye 4K 120 Hz, ejecute:

Plain
xrandr --output HDMI-1 --mode 3840x2160 --rate 120

Establecer HDMI como monitor principal:

Plain
xrandr --output HDMI-1 --primary

Desactivar la salida HDMI:

Plain
xrandr --output HDMI-1 --off

Nota:

  • La configuración de xrandr suele tener efecto solo en la sesión gráfica actual y puede volver a sus valores predeterminados tras reiniciar. Para hacerla persistente, configure los parámetros a través de la configuración gráfica de visualización.

  • Si $XDG_SESSION_TYPE devuelve wayland, utilice primero la interfaz gráfica para ajustar los parámetros de visualización.

  • Si la salida es tty, no hay ningún escritorio gráfico en ejecución, por lo que ni la configuración gráfica ni xrandr pueden utilizarse directamente.

  • Si la resolución o frecuencia de actualización objetivo no aparece en la lista de admitidas, verifique las especificaciones del monitor, el cable HDMI y el controlador del sistema.

Guía de la interfaz Ethernet (con soporte PoE)

Conecte el puerto Ethernet para acceder a una red cableada.

45.png

Obtén la dirección de red:

Plain
ip -br addr
ip route
nmcli device status

Comprueba la velocidad de enlace negociada:

Plain
sudo apt install -y ethtool
sudo ethtool <interface>

Prueba la red:

Plain
ping -c 4 8.8.8.8
ping -c 4 www.seeedstudio.com

Prueba de velocidad:

Plain
sudo apt install -y iperf3
iperf3 -c <server_ip>

Uso de PoE

La placa IO reComputer RK3576 admite la conexión de un HAT Raspberry Pi PoE+, que proporciona tanto alimentación como conectividad de red a través de un único cable Ethernet.

El suministro de energía PoE lo gestiona automáticamente el HAT PoE+. No se requiere instalar controladores ni realizar configuraciones adicionales en Armbian.

Instala el HAT PoE+ siguiendo las instrucciones de instalación del hardware y, a continuación, conecta el cable Ethernet.

Una vez iniciado el sistema, puedes usar los siguientes comandos para comprobar las interfaces de red y la dirección IP:

Plain
ip -br addr

Si se obtiene una dirección IP correctamente, la conexión Ethernet está disponible.

PoE y DC 12V pueden conectarse simultáneamente a la placa IO reComputer RK3576.

Cuando ambas fuentes de alimentación están conectadas:

  • Si desconectas PoE, el sistema seguirá funcionando con DC 12V sin reiniciarse.

  • Si desconectas DC 12V, el sistema seguirá funcionando con PoE sin reiniciarse.

Esto significa que puedes cambiar la fuente de alimentación entre PoE y DC 12V durante el uso sin interrumpir la operación del sistema.

Antes de instalar o retirar el HAT PoE+, desconecta todas las fuentes de alimentación. Se recomienda utilizar un switch o inyector PoE+ compatible con el estándar IEEE 802.3at.

Guía MIPI CSI

La placa IO reComputer RK3576 ofrece dos interfaces MIPI CSI, CSI1 y CSI2, que admiten la conexión directa de la Raspberry Pi Camera Module 3.

46.png

En el sistema Armbian preinstalado, la Camera Module 3 funciona sin necesidad de instalar controladores adicionales ni configurar el árbol de dispositivos; está lista para usarse tras una conexión correcta.

Conexión de hardware

No insertes ni retires la cámara CSI mientras el dispositivo esté encendido, para evitar daños en la cámara o en la placa IO.

Instalación de herramientas

Instala GStreamer y las herramientas de detección de cámaras:

Plain
sudo apt update
sudo apt install -y \
    v4l-utils \
    gstreamer1.0-tools \
    gstreamer1.0-plugins-base \
    gstreamer1.0-plugins-good \
    gstreamer1.0-plugins-bad \
    gstreamer1.0-plugins-ugly \
    gstreamer1.0-libav

Localizar el nodo de la cámara

Utiliza el siguiente comando para ver los dispositivos de cámara reconocidos por el sistema:

Plain
v4l2-ctl --list-devices

También puedes consultar la topología del controlador multimedia (Media Controller):

Plain
media-ctl -d /dev/media2 -p

En la imagen del sistema actual, los nodos de dispositivo de vídeo predeterminados son los siguientes:

Los nodos de vídeo pueden cambiar según la versión del sistema, el método de conexión de la cámara o el orden de arranque del dispositivo. Si los nodos predeterminados no están disponibles, confirma los nodos de vídeo reales mediante v4l2-ctl --list-devices y media-ctl.

Capturar una foto con CSI1

Cuando la cámara esté conectada a CSI1, ejecuta:

Plain
gst-launch-1.0 \
    v4l2src device=/dev/video22 num-buffers=1 ! \
    videoconvert ! \
    jpegenc ! \
    filesink location=test1.jpg

Tras capturar la foto, se guardará en el directorio actual:

Plain
ls -lh test1.jpg

Capturar una foto con CSI2

Cuando la cámara esté conectada a CSI2, ejecuta:

Plain
gst-launch-1.0 \
    v4l2src device=/dev/video31 num-buffers=1 ! \
    videoconvert ! \
    jpegenc ! \
    filesink location=test2.jpg

Visualiza la foto generada:

Plain
ls -lh test2.jpg

47.png

Solución de problemas

Si no se encuentra ningún nodo de cámara, verifica lo siguiente:

  1. Que el cable plano de la cámara esté completamente insertado.

  2. Que la orientación del cable plano sea correcta.

  3. Que el cierre del interfaz CSI esté bloqueado.

  4. Que la cámara se haya conectado con el dispositivo apagado.

  5. Que el sistema reconozca el Camera Module 3:

Plain
dmesg | grep -Ei "imx708|csi|rkisp"

El Raspberry Pi Camera Module 3 utiliza el sensor IMX708. Si el registro contiene imx708, rkisp o información relacionada con CSI, significa que el sistema ha reconocido la cámara.

Guía de MIPI DSI

La placa IO reComputer RK3576 admite la conexión de la pantalla táctil DSI oficial de 7 pulgadas de Raspberry Pi. Antes de usarla, debes conectar el cable plano DSI, cerrar el puente I虏C y habilitar la superposición del árbol de dispositivos correspondiente en Armbian.

48.png

Conexión de hardware

Sigue el diagrama de conexión de hardware mostrado arriba.

La interfaz I虏C se utiliza para la comunicación con el controlador táctil. Si este puente no está cerrado, la pantalla puede mostrar imágenes, pero la función táctil no funcionará correctamente.

Si adquiriste la serie reComputer RK3576 Module Dev Kit, la tapa del puente viene preinstalada, por lo que no necesitas preocuparte por este problema.

49.png

Habilitar la superposición del árbol de dispositivos (Device Tree Overlay)

Para habilitar la superposición del árbol de dispositivos, haz una copia de seguridad del archivo de configuración actual:

Plain
sudo cp /boot/armbianEnv.txt /boot/armbianEnv.txt.bak

Abre el archivo de configuración:

Plain
sudo vim /boot/armbianEnv.txt

Establece overlay_prefix en:

Plain
overlay_prefix=recomputer-rk3576-ioboard

Añade la siguiente superposición:

Plain
overlays=raspi-7inch-touchscreen

Tras la configuración, el contenido relevante debe ser similar al siguiente:

Plain
overlay_prefix=recomputer-rk3576-ioboard
overlays=raspi-7inch-touchscreen

Si overlays= ya tiene otras superposiciones habilitadas, sepáralas con espacios y conserva el contenido original. Por ejemplo:

Plain
overlays=existing-overlay raspi-7inch-touchscreen

En sistemas sin otras superposiciones habilitadas, también puedes usar el siguiente comando para completar la configuración rápidamente:

Plain
sudo sed -i '/^overlay_prefix=/d; /^overlays=/d' /boot/armbianEnv.txt

printf '%s\n' \
    'overlay_prefix=recomputer-rk3576-ioboard' \
    'overlays=raspi-7inch-touchscreen' \
    | sudo tee -a /boot/armbianEnv.txt

Configurar la pantalla de escritorio

Crea el directorio de configuración de Xorg:

Plain
sudo mkdir -p /etc/X11/xorg.conf.d

Crea la configuración de la pantalla DSI:

Plain
sudo tee /etc/X11/xorg.conf.d/99-dsi.conf > /dev/null <<'EOF'
Section "Device"
    Identifier "DSI"
    Driver "modesetting"
    Option "kmsdev" "/dev/dri/card1"
    Option "DRI" "3"
    Option "AccelMethod" "glamor"
EndSection

Section "Screen"
    Identifier "Screen0"
    Device "DSI"
EndSection

Section "ServerLayout"
    Identifier "Layout"
    Screen 0 "Screen0" 0 0
EndSection
EOF

Reinicia el sistema para aplicar los cambios:

Plain
sudo reboot

Verificar pantalla y táctil

Después de reiniciar el sistema, la pantalla DSI debería mostrar el escritorio de Armbian y admitir la operación táctil.

Para confirmar si se reconoce el dispositivo táctil, ejecuta:

Plain
sudo apt install -y evtest
sudo evtest

Selecciona el dispositivo táctil correspondiente en la lista de dispositivos y luego toca o desliza sobre la pantalla. Si la terminal sigue mostrando coordenadas táctiles y eventos de teclas, la función táctil funciona correctamente.

La configuración actual utiliza /dev/dri/card1 como dispositivo de pantalla DSI. Si el número del dispositivo DRM cambia tras una actualización del sistema, verifícalo con el siguiente comando:

Plain
ls -l /dev/dri/

Guía de la interfaz GPIO

Shell
# Calculation formula: gpionum=(letter_index-1)*8+num
recomputer-rk3576-module:~:# gpioset 0 23=0
recomputer-rk3576-module:~:# gpioset 0 23=1

#Read status
gpioget 0 23
RK3576 gpioNúmero del conectorNúmero del conectorRK3576 gpio
VCC3V3_SYS12VCC5V0_SYS
GPIO0_C734VCC5V0_SYS
GPIO0_C656GND
GPIO3_A078UART0_TX_M0_DEBUG
GND910UART0_RX_M0_DEBUG
GPIO4_B4
1112GPIO2_D6
GPIO4_B5
1314
GND
GPIO3_A2
1516
GPIO2_D0
VCC3V3_SYS1718
GPIO2_D1
GPIO2_C21920
GPIO2_C3
2122
GPIO3_A1
GPIO2_C52324GPIO2_C4
2526GPIO2_C1
GPIO4_C7
2728GPIO4_C6
GPIO2_B6
2930GND
GPIO2_B7
3132GPIO2_C0
GPIO0_C4
33
34GND
GPIO2_B5
3536
GPIO3_A3
GPIO2_B4
3738GPIO4_A4
GND
3940GPIO4_A6

Referencia de GPIO y periféricos del conector de 40 pines

El Kit de desarrollo para el módulo reComputer RK3576 ofrece un conector de expansión de 40 pines compatible con Raspberry Pi. Este permite conectar dispositivos GPIO externos, módulos UART, sensores I2C, dispositivos SPI, actuadores PWM e interfaces CAN. La multiplexación pinctrl de Rockchip RK3576 selecciona la función activa para cada pin.

Las interfaces compatibles incluyen:

  • GPIO
  • UART
  • I2C
  • SPI
  • PWM
  • CAN

La siguiente tabla enumera los pines de señal y sus nombres GPIO en RK. Los pines de alimentación y tierra se muestran en la tabla completa de asignación de pines anterior.

PinFunciónRK GPIO
3GPIOGPIO0_23
5GPIOGPIO0_22
7GPIOGPIO3_96
8UART TX/RXGPIO0_28
10UART RX/TXGPIO0_29
11GPIOGPIO4_140
12GPIOGPIO2_94
13GPIOGPIO4_141
15GPIOGPIO3_98
16GPIOGPIO2_88
18GPIOGPIO2_89
19SPI MOSIGPIO2_82
21SPI MISOGPIO2_83
22GPIOGPIO3_97
23SPI CLKGPIO2_85
24SPI CSGPIO2_84
26GPIOGPIO2_81
27GPIOGPIO4_151
28GPIOGPIO4_150
29GPIOGPIO2_78
31GPIOGPIO2_79
32GPIOGPIO2_80
33GPIOGPIO0_20
35GPIOGPIO2_77
36GPIOGPIO3_99
37GPIOGPIO2_76
38GPIOGPIO4_132
40GPIOGPIO4_134

Control de GPIO

Instala las herramientas GPIO de Linux:

bash
sudo apt update
sudo apt install gpiod

Inspecciona los controladores GPIO, los nombres de las líneas y su propiedad actual antes de seleccionar una línea:

bash
gpioinfo
gpioinfo gpiochip0

El gpiochip y el número de línea dependen de la imagen y del kernel. Utiliza la salida de gpioinfo para confirmarlos, en lugar de asumir que el número de un pin físico del conector corresponde al número de línea de Linux.

Por ejemplo, si una línea está expuesta como la línea 23 en gpiochip0, conecta un LED a través de una resistencia limitadora de corriente:

text
GPIO ---- resistor ---- LED ---- GND

Establece la salida en alto y en bajo:

bash
gpioset gpiochip0 23=1
gpioset gpiochip0 23=0

Conecta un botón entre la entrada y 3.3 V (utiliza una resistencia pull-down adecuada o la resistencia configurada por defecto en la placa) y luego lee la línea:

text
3.3V
 |
Button
 |
GPIO
bash
gpioget gpiochip0 23

Ejemplo de UART

Para habilitar UART3, añade el overlay a /boot/armbianEnv.txt:

bash
sudo nano /boot/armbianEnv.txt
ini
overlays=recomputer-rk3576-devkit-40pin-uart3

Reinicia y comprueba los dispositivos serie disponibles:

bash
sudo reboot
ls /dev/tty*

Envía una cadena de prueba por el dispositivo UART expuesto por el overlay seleccionado (por ejemplo, /dev/ttyS3):

bash
echo "Hello RK3576" > /dev/ttyS3

Ejemplo de I2C

Habilita I2C3 en /boot/armbianEnv.txt:

ini
overlays=recomputer-rk3576-devkit-40pin-i2c3

Instala las utilidades de I2C y escanea el bus 3 tras reiniciar:

bash
sudo apt install i2c-tools
sudo i2cdetect -y 3

Una fila de salida como la siguiente indica un dispositivo en la dirección 0x50:

text
40: -- -- 50 --

Ejemplo de SPI

La imagen base del RK3576 Module Dev Kit puede habilitar el bus SPI de 40 pines por defecto. Si SPI no está habilitado en la imagen instalada, añade el overlay correspondiente y reinicia:

ini
overlays=rk3576-spi1-m1-spidev

Comprueba la presencia del nodo spidev y ejecuta una prueba básica:

bash
ls /dev/spidev*
spidev_test -D /dev/spidev1.0

Las señales físicas de SPI comparten hardware con algunas interfaces de expansión integradas. Verifica la propiedad del chip-select y del bus antes de conectar otro dispositivo SPI.

Ejemplo de PWM

Las salidas PWM pueden controlar reguladores de intensidad para LEDs, ventiladores o servomotores. Habilita el overlay de PWM si aún no está activo:

ini
overlays=recomputer-rk3576-devkit-40pin-pwm2-ch6

Tras reiniciar, identifica el controlador y el canal PWM en /sys/class/pwm/ y configura el canal. Los siguientes valores representan un periodo de 20 ms y un pulso de servo de 1.5 ms:

bash
ls /sys/class/pwm/
echo 20000000 > period
echo 1500000 > duty_cycle
echo 1 > enable

Ejecuta los comandos echo desde el directorio exportado pwmchipX/pwmY seleccionado. El controlador y el canal exactos pueden variar según el device tree del kernel.

Ejemplo de CAN

Habilite CAN0 con el overlay de 40 pines y reinicie:

ini
overlays=recomputer-rk3576-devkit-40pin-can0

Configure la interfaz a 500 kbit/s, luego envíe y reciba un cuadro de prueba:

bash
sudo ip link set can0 up type can bitrate 500000
cansend can0 123#11223344
candump can0

Notas sobre multiplexación de pines

El RK3576 utiliza multiplexación de pines. Un pin físico puede funcionar como GPIO o como señal de periférico según el overlay del árbol de dispositivos seleccionado. Antes de usar una función de periférico:

  1. Habilite el overlay correspondiente.
  2. Reinicie el sistema.
  3. Confirme que existe el nodo de dispositivo esperado.
  4. Pruebelo con la herramienta Linux correspondiente.

Si un pin está asignado a UART, I2C, SPI, PWM u otro controlador del kernel, no podrá usarse como GPIO normal hasta que se deshabilite esa función.

Solución de problemas de GPIO y Pinmux

Compruebe la propiedad del GPIO:

bash
sudo cat /sys/kernel/debug/gpio

Compruebe los overlays habilitados:

bash
cat /boot/armbianEnv.txt

Compruebe la multiplexación de pines en el árbol de dispositivos:

bash
cat /sys/kernel/debug/pinctrl/*/pinmux-pins

El conector de 40 pines sigue el diseño del conector de expansión de Raspberry Pi, por lo que muchos accesorios de Raspberry Pi pueden conectarse a él. Sin embargo, la multiplexación de pines del RK3576 difiere de las plataformas Raspberry Pi; verifique siempre la tabla de funciones de pines y el overlay seleccionado antes de conectar un HAT u otro accesorio.

Guía del ventilador (FAN)

La placa IO reComputer RK3576 admite control de ventilador PWM. En Armbian, puede usar la interfaz hwmon de Linux para comprobar la velocidad del ventilador y ajustar manualmente el PWM.

50.png

El número de hwmon puede cambiar tras reiniciar el sistema, así que no dependa de un valor fijo como hwmon6. Los siguientes comandos usan comodines para detectar automáticamente el dispositivo del ventilador.

Comprobar la velocidad del ventilador

Ejecute el siguiente comando para comprobar la velocidad actual del ventilador:

Plain
cat /sys/devices/platform/pwm-fan/hwmon/hwmon*/fan1_input

El valor devuelto está en RPM, por ejemplo:

Plain
3200

Para monitorizar la velocidad continuamente, ejecute:

Plain
watch -n 1 'cat /sys/devices/platform/pwm-fan/hwmon/hwmon*/fan1_input'

Pulse Ctrl+C para salir de la monitorización.

Comprobar el valor PWM actual

Plain
cat /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1

El rango válido de PWM es 0鈥?55.

La relación PWM y la velocidad real no son necesariamente lineales. El controlador pwm-fan de Linux especifica que pwm1 va de 0 a 255, donde 255 representa la salida máxima.

Ajustar la velocidad del ventilador

Detener el ventilador:

Plain
echo 0 | sudo tee /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1

Establecer un PWM aproximado del 50%:

Plain
echo 128 | sudo tee /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1

Establecer el PWM máximo:

Plain
echo 255 | sudo tee /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1

Tras aplicar los cambios, puede verificar nuevamente la velocidad del ventilador:

Plain
cat /sys/devices/platform/pwm-fan/hwmon/hwmon*/fan1_input

Los valores de PWM establecidos manualmente no se conservan tras reiniciar el sistema. El sistema restaura la política de control del ventilador predeterminada después del reinicio. No se recomienda mantener el ventilador apagado durante periodos prolongados bajo alta carga, para evitar que el procesador reduzca su frecuencia (throttling) debido a temperaturas elevadas.

51.png

Estado de los indicadores LED

La placa IO reComputer RK3576 dispone de LEDs indicadores de alimentación y estado del sistema.

52.png

Que el LED de estado del sistema parpadee indica que el kernel de Linux ha iniciado, pero no significa que todos los servicios del sistema o las aplicaciones de usuario estén listos.

Comprobar el dispositivo LED

El LED de estado del sistema es gestionado por el subsistema de LEDs de Linux. Utilice el siguiente comando para ver los LEDs disponibles en el sistema:

Plain
ls /sys/class/leds/

En el árbol de dispositivos actual de Armbian, el LED de estado del sistema suele aparecer como:

Plain
user-led

Compruebe el modo de activación (trigger) actual:

Plain
cat /sys/class/leds/user-led/trigger

En la salida, el elemento entre corchetes representa el modo activo, por ejemplo:

Plain
none timer default-on [heartbeat]

Control manual del LED de estado del sistema

Para utilizar el LED de estado del sistema con fines de indicación de aplicación, primero desactive el trigger de latido (heartbeat):

Plain
echo none | sudo tee /sys/class/leds/user-led/trigger

Encender el LED:

Plain
echo 1 | sudo tee /sys/class/leds/user-led/brightness

Apagar el LED:

Plain
echo 0 | sudo tee /sys/class/leds/user-led/brightness

Restaurar el modo heartbeat del sistema:

Plain
echo heartbeat | sudo tee /sys/class/leds/user-led/trigger

Los ajustes anteriores solo tienen efecto durante el ciclo de arranque actual. Tras reiniciar el sistema, se restaurará el modo heartbeat predeterminado configurado en el árbol de dispositivos.

Notas

  • El LED rojo de alimentación solo indica que la placa está energizada; no sirve para determinar si Linux ha finalizado el proceso de arranque.

  • El LED de estado del sistema puede ser controlado por aplicaciones, pero una vez que se cambia al modo manual, dejará de mostrar el latido del sistema.

  • No se recomienda controlar este indicador mediante un número fijo de hwmon o GPIO; en su lugar, debe utilizarse la interfaz /sys/class/leds/user-led/.

Descripción de los botones

La placa IO reComputer RK3576 dispone de tres botones integrados: PWR, RESET y MASKROM.

53.png

Botón PWR

El botón PWR está conectado a la entrada de tecla de encendido. En Linux, se reconoce como rk806 pwrkey y genera eventos KEY_POWER al pulsarlo.

Diferentes entornos del sistema pueden configurar este evento para apagar, hibernar o mostrar el menú de apagado.

Instala la herramienta de prueba de botones:

Plain
sudo apt update
sudo apt install -y evtest

Ejecuta la prueba:

Plain
sudo evtest

En la lista de dispositivos, selecciona:

Plain
rk806 pwrkey

Tras pulsar el botón PWR, verás una salida similar a:

Plain
Event: type 1 (EV_KEY), code 116 (KEY_POWER), value 1
Event: type 1 (EV_KEY), code 116 (KEY_POWER), value 0

Para modificar el comportamiento del sistema tras una pulsación corta del botón PWR, puedes editar la configuración de systemd-logind:

Plain
sudo nano /etc/systemd/logind.conf

Por ejemplo, configura la acción de pulsación corta para apagar el equipo:

Plain
HandlePowerKey=poweroff

Aplica la configuración:

Plain
sudo systemctl restart systemd-logind

Se recomienda usar sudo poweroff o la función de apagado del entorno de escritorio para apagar el dispositivo de forma segura, evitando daños en el sistema de archivos o pérdida de datos causados por un corte directo de la alimentación.

Botón RESET

Pulsar el botón RESET provoca un reinicio por hardware, y el sistema se reiniciará inmediatamente.

RESET no ejecuta el proceso normal de apagado de Linux, por lo que se pueden perder datos no guardados. En condiciones normales, se recomienda utilizar:

Plain
sudo reboot

Utiliza el botón RESET solo cuando el sistema no responda y no sea posible reiniciarlo normalmente a través de la terminal o SSH.

Botón MASKROM

El botón MASKROM sirve para forzar la entrada del dispositivo en el modo Rockchip MaskROM. Este modo se utiliza principalmente en las siguientes situaciones:

  • El sistema no puede arrancar desde eMMC u otros dispositivos de almacenamiento

  • El gestor de arranque (bootloader) está dañado

  • No es posible entrar en modo Loader correctamente

  • Es necesario volver a flashear la imagen del sistema

Entrar en modo MaskROM

  1. Conecta la placa IO al host utilizando un cable USB-C compatible con transferencia de datos.

  2. Apague la alimentación del dispositivo.

  3. Mantenga pulsado el botón MASKROM.

  4. Encienda la alimentación del dispositivo.

  5. Una vez que el host detecte el dispositivo Rockchip MaskROM, suelte el botón.

Si el dispositivo ya está encendido, también puede:

  1. Mantener pulsado el botón MASKROM.

  2. Pulsar brevemente una vez el botón RESET.

  3. Esperar a que el host reconozca el dispositivo y luego soltar el botón MASKROM.

En Windows, puede confirmar el estado del dispositivo mediante RKDevTool o RK Driver Assistant:

Plain
Found One MASKROM Device

En un host Linux, puede ejecutar:

Plain
lsusb

Compruebe si aparece un dispositivo USB de Rockchip en el host.

MASKROM es una función de recuperación del sistema. No se recomienda utilizar este botón para la interacción normal con aplicaciones. Después de entrar en modo MaskROM, el dispositivo no iniciará Linux correctamente; deberá volver a encenderlo o reiniciarlo para salir.

Guía de interfaces USB

La placa IO reComputer RK3576 ofrece las siguientes interfaces USB:

USB-C admite el cambio de rol entre Host y Device. El modo de funcionamiento real depende de la dirección de conexión, el cable y el dispositivo conectado.

54.png

Comprobar dispositivos USB

Después de conectar un dispositivo USB, ejecute:

Plain
lsusb

Para ver la topología de conexión y la velocidad negociada de los dispositivos USB:

Plain
lsusb -t

La salida es la siguiente:

Plain
seeed@recomputer-rk3576-module:~$ lsusb -t
/:  Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci-hcd/1p, 480M
    |__ Port 001: Dev 002, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 004: Dev 003, If 0, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 004: Dev 003, If 1, Class=Human Interface Device, Driver=usbhid, 12M
/:  Bus 002.Port 001: Dev 001, Class=root_hub, Driver=xhci-hcd/1p, 5000M

Si un dispositivo USB 3.0 solo muestra 480M, compruebe lo siguiente:

  • Si el dispositivo es compatible con USB 3.x

  • Si el cable admite SuperSpeed

  • Si el dispositivo está conectado a una interfaz Type-A USB 3.0

  • Si el Hub USB o adaptador es compatible con USB 3.x

Ver registros de conexión de dispositivos

Antes de insertar el dispositivo USB, ejecute:

Plain
sudo dmesg --follow

Luego conecte el dispositivo para ver en tiempo real el reconocimiento, la carga de controladores y los mensajes de error. Pulse Ctrl+C para salir.

También puede consultar los registros USB recientes:

Plain
dmesg | grep -i usb

Uso de dispositivos de almacenamiento USB

Después de insertar una unidad flash USB o un disco duro externo, verifica el nodo del dispositivo:

Plain
lsblk

En Armbian de escritorio, los dispositivos de almacenamiento suelen montarse automáticamente. También puedes montarlos manualmente:

Plain
sudo mkdir -p /mnt/usb
sudo mount /dev/sda1 /mnt/usb

Tras su uso, desmonta primero el dispositivo:

Plain
sudo umount /mnt/usb

/dev/sda1 es solo un ejemplo. Confirma el nodo real del dispositivo con lsblk para evitar operar sobre el disco equivocado.

USB-C OTG

La interfaz USB-C puede funcionar en diferentes roles según el escenario:

  • Modo dispositivo: Conéctala al PC para flashear el sistema y comunicar con Rockchip Loader/MaskROM.

  • Modo host: Conecta periféricos USB mediante un adaptador USB-C adecuado.

  • DP Alt Mode: Conecta dispositivos de visualización compatibles con DisplayPort Alt Mode.

Para flashear el sistema, utiliza un cable USB-C que admita transferencia de datos. Los cables exclusivos de carga no permiten reconocer el dispositivo.

Para periféricos USB de alto consumo, como discos duros externos y aceleradores de IA, se recomienda usar un Hub USB con alimentación independiente para evitar desconexiones del dispositivo o inestabilidad del sistema por falta de energía.

Las interfaces integradas incluyen un puerto USB 3.0 Type-A y dos puertos Type-A ampliados a través de un Hub USB 2.0; la interfaz USB-C está configurada como un puerto OTG de doble rol en el árbol de dispositivos de Armbian.

Guía de la interfaz RTC

La placa IO reComputer RK3576 integra un módulo RTC, que mantiene la fecha y la hora incluso cuando el dispositivo pierde conexión de red o alimentación.

El RTC se conecta mediante I虏C, con la dirección predeterminada siguiente:

Plain
0x51

La placa base ofrece un soporte para batería de respaldo CR2032. Tras instalar la batería, el RTC sigue contando el tiempo aunque se desconecte la alimentación DC, PoE o USB-C.

55.png

Utiliza una pila de botón CR2032 de 3V no recargable y confirma que la polaridad sea correcta.

Comprobar el dispositivo RTC

Ejecuta el siguiente comando para confirmar si el sistema ha reconocido el RTC:

Plain
ls /dev/rtc*

Comprueba el nombre del controlador del RTC:

Plain
for rtc in /sys/class/rtc/rtc*; do
    echo "$rtc: $(cat "$rtc/name")"
done

En condiciones normales, verás el dispositivo RTC correspondiente al PCF8563.

Revisa los registros de reconocimiento del kernel:

Plain
dmesg | grep -i rtc

Ver la hora del sistema y la hora del RTC

Comprueba la hora del sistema:

Plain
timedatectl

Comprueba la hora del RTC:

Plain
sudo hwclock --show

Si el sistema informa que no se encuentra hwclock, instala las herramientas relacionadas:

Plain
sudo apt update
sudo apt install -y util-linux-extra

Escribir la Hora del Sistema en el RTC

Después de conectar el dispositivo a la red, puedes habilitar primero la sincronización horaria por red:

Plain
sudo timedatectl set-ntp true

Confirma que la hora del sistema sea correcta:

Plain
timedatectl

Luego escribe la hora del sistema en el RTC:

Plain
sudo hwclock --systohc --utc

Se recomienda que el RTC utilice la hora UTC para evitar desviaciones causadas por cambios de zona horaria o de horario de verano:

Plain
sudo timedatectl set-local-rtc 0

Restaurar la Hora del Sistema desde el RTC

Cuando el dispositivo no tenga acceso a la red, puedes sincronizar la hora del RTC con el sistema:

Plain
sudo hwclock --hctosys

Comprueba después de sincronizar:

Plain
date

Establecer la Hora Manualmente

Si el dispositivo no puede acceder temporalmente a la red, puedes establecer manualmente la hora del sistema primero:

Plain
sudo timedatectl set-time "2026-09-10 14:00:00"

Luego escríbela en el RTC:

Plain
sudo hwclock --systohc --utc

Verificar la Función de Retención tras Apagado

  1. Confirma que la batería CR2032 esté instalada correctamente.

  2. Escribe la hora actual del sistema en el RTC:

Plain
sudo hwclock --systohc --utc
sudo hwclock --show
  1. Apaga el dispositivo normalmente:
Plain
sudo poweroff
  1. Desconecta todas las fuentes de alimentación externas como DC, PoE y USB-C.

  2. Espera un momento y vuelve a conectar la alimentación.

  3. Comprueba nuevamente la hora del RTC:

Plain
sudo hwclock --show

Si la hora avanza continua y normalmente, la fuente de alimentación de respaldo del RTC funciona correctamente.

El RTC solo almacena información de tiempo y no puede seguir alimentando el sistema una vez desconectada la alimentación principal. Si no hay batería instalada o esta está descargada, es posible que se pierda la hora del RTC tras apagar completamente el dispositivo.

La interfaz del PCF8563 y la batería CR2032 se pueden confirmar en el esquema de la placa IO RK3576; el PCF8563 ya está habilitado en el árbol de dispositivos predeterminado de Armbian, por lo que generalmente no se necesita configuración adicional de overlay.

Audio

La placa IO reComputer RK3576 integra un códec de audio ES8311 y ofrece una interfaz de audio de 3.5 mm compatible con:

  • Salida de audio estéreo

  • Entrada de micrófono analógico

  • Detección del conector de auriculares

  • Salida de audio digital por HDMI y USB-C DisplayPort

Al usar auriculares estándar de 3 segmentos, solo se admite la salida de audio; para grabar, utilice un headset de 4 segmentos con micrófono.

56.png

Comprobar dispositivos de audio

Instale las herramientas de audio ALSA:

Plain
sudo apt update
sudo apt install -y alsa-utils

Liste todas las tarjetas de sonido:

Plain
cat /proc/asound/cards

Compruebe los dispositivos de reproducción y grabación por separado:

Plain
aplay -l
arecord -l

En condiciones normales, podrá ver dispositivos como:

Plain
rockchip-es8311
rockchip-hdmi0
rockchip-dp0

Nota:

El número de tarjeta de sonido ALSA puede cambiar según los dispositivos USB, HDMI u otros de audio conectados. Confirme el número real mediante aplay -l y arecord -l.

Probar la reproducción de audio

El siguiente ejemplo asume que ES8311 es card 0, device 0. Si el número de dispositivo es diferente, sustituya 0,0 por los números correctos de tarjeta y dispositivo.

Utilice el tono de prueba para reproducir los canales izquierdo y derecho:

Plain
speaker-test -D plughw:0,0 -c 2 -t wav

Pulse Ctrl+C para detener la prueba.

Reproduzca un archivo WAV:

Plain
aplay -D plughw:0,0 test.wav

Para reproducir un archivo MP3:

Plain
sudo apt install -y mpg123
mpg123 -a hw:0,0 test.mp3

Probar la grabación con micrófono

Conecte un headset de 3.5 mm con micrófono y grabe un clip de audio de 5 segundos:

Plain
arecord -D plughw:0,0 \
    -d 5 \
    -f S16_LE \
    -r 48000 \
    -c 2 \
    recording.wav

Reproduzca la grabación:

Plain
aplay -D plughw:0,0 recording.wav

También puede realizar una prueba de grabación y reproducción en tiempo real:

Plain
arecord -D plughw:0,0 -f cd |
    aplay -D plughw:0,0 -f cd

Se recomienda usar auriculares durante la prueba para evitar retroalimentación entre el altavoz y el micrófono.

Ajustar el volumen

Ejecute ALSA Mixer:

Plain
alsamixer

En la interfaz:

  1. Pulse F6 para seleccionar rockchip-es8311.

  2. Use las flechas izquierda y derecha para seleccionar el control de audio.

  3. Use las flechas arriba y abajo para ajustar el volumen.

  4. Pulse M para alternar el estado de silencio.

  5. Pulse Esc para salir.

Asegúrese de que los siguientes canales de entrada o salida no estén silenciados:

Plain
Headphone
DAC
ADC
MIC PGA

Guarde la configuración actual:

Plain
sudo alsactl store

Restaurar la configuración guardada:

Plain
sudo alsactl restore

Seleccionar el dispositivo de audio predeterminado del sistema

En el entorno de escritorio Armbian, puede seleccionar el dispositivo de audio de 3.5 mm, HDMI o DisplayPort a través del icono de volumen.

Vea los dispositivos de audio PipeWire/PulseAudio en la terminal:

Plain
pactl list short sinks
pactl list short sources

Establezca el dispositivo de salida predeterminado:

Plain
pactl set-default-sink <sink_name>

Establezca el dispositivo de entrada predeterminado:

Plain
pactl set-default-source <source_name>

Reemplace <sink_name> y <source_name> con los nombres reales mostrados por el comando anterior.

Problemas comunes

Sin sonido desde el auricular de 3.5 mm

Primero confirme que el sistema ha seleccionado ES8311, no HDMI ni DisplayPort:

Plain
aplay -l
pactl list short sinks

Luego, verifique el estado de silencio en el Mezclador (Mixer):

Plain
alsamixer

Si no hay sonido al iniciar con una imagen de prueba antigua, consulte el script de configuración de reproducción ES8311 en el proyecto.

Sin entrada de grabación del micrófono

Confirme que está utilizando un auricular de 4 segmentos con micrófono y verifique el dispositivo de grabación:

Plain
arecord -l

Acceda al Mezclador (Mixer) y verifique ADC, MIC PGA y los canales de entrada:

Plain
alsamixer

Si una imagen de prueba antigua registra datos vacíos, consulte el script de configuración de grabación ES8311.

Aparecen chasquidos o ruido

  • Confirme que el conector del auricular esté completamente insertado.

  • Evite usar cables adaptadores con mal contacto.

  • Reduzca la salida del auricular y la ganancia del micrófono.

  • Al grabar, evite mantener el micrófono demasiado cerca de los auriculares.

  • Utilice el dispositivo plughw para que ALSA realice automáticamente la conversión de frecuencia de muestreo y formato.