Skip to main content

Hardware de la carrier board Robotics J501 y Guía de Inicio

La Robotics J501 Mini carrier es una carrier board compacta y de alto rendimiento para edge AI diseñada para robótica avanzada. Compatible con módulos NVIDIA Jetson AGX Orin (32GB/64GB) en modo MAXN, ofrece hasta 275 TOPS de rendimiento de IA. Equipada con amplias opciones de conectividad —incluidos puertos Ethernet Gigabit dobles, ranuras M.2 para módulos 5G y Wi-Fi/BT, 2 puertos USB 3.2, CAN, GMSL2 (mediante expansión opcional), I2C y UART— funciona como un potente cerebro robótico capaz de procesar datos complejos de varios sensores. Con JetPack 6.2.1 y Linux BSP preinstalados, garantiza una implementación fluida.​

Al ser compatible con frameworks como NVIDIA Isaac ROS, Hugging Face, PyTorch y ROS 2/1, la Robotics J501 Mini conecta la toma de decisiones impulsada por modelos de lenguaje grandes con el control físico de la robótica, como la planificación de movimiento y la fusión de sensores. Ideal para el desarrollo rápido de robots autónomos, acelera el tiempo de salida al mercado con interfaces listas para usar y frameworks de IA optimizados.

Descripción general de la Carrier Board reComputer Jetson Robotics J501-Mini

Vista superior
fig1
Vista lateral
fig2
Vista inferior
fig3

📝 Lista de componentes

  • Robotics J501-Mini Carrier Board x 1
  • Fuente de alimentación y placa de expansión JST x 1
  • Cable XT30 a DC x 1
  • Cable USB, Tipo A a Tipo C x 1
  • Disipador para placa de expansión x 1
  • Espárrago (M3*30) x 5
  • Tuerca hexagonal M3 x 5
  • Tornillo (CM2.5*L.4) para módulo Jetson y M.2 Key M x3
  • Tornillo (CM2*3.0) para M.2 Key E x1
  • Espárrago (M2*2.0) para M.2 Key B x1
  • Tornillo (CM3*4.0) para M.2 Key B x1
  • Manual de usuario x 1
note

1.Diseñe una solución de disipación de calor robusta de acuerdo con la Guía de Diseño Térmico cuando utilice una fuente de alimentación de alto voltaje y a temperatura de funcionamiento elevada. 2.Coloque un disipador térmico en el módulo para obtener un mejor rendimiento. 3.Durante el funcionamiento con entrada de alto voltaje y alta carga, no toque el disipador térmico para evitar quemaduras. 4.Recomendación de adaptador de corriente para validación: utilice el adaptador de corriente recomendado en el sitio web oficial de Seeed.

  • Adaptador de corriente con conector cilíndrico 5525 de 19V/4.74A
  • Asegúrese de que se cumplan los requisitos de consumo máximo de energía. 2.Compatibilidad del cable de alimentación de CA
  • Compre cables de alimentación de CA tipo trébol específicos de la región según su ubicación. 3.Compatibilidad de accesorios
  • Utilice solo accesorios recomendados oficialmente (por ejemplo, módulos inalámbricos, cámaras, periféricos) para un rendimiento y compatibilidad óptimos.

🔍 Especificación

Especificaciones de la Carrier Board

CategoríaElementoDetalles
AlmacenamientoM.2 KEY M PCIe1x M.2 KEY M PCIe (M.2 NVMe 2280 SSD)
RedM.2 KEY E1x M.2 Key E para módulo WiFi/Bluetooth
Ethernet1x RJ45 10GbE && 1x RJ45 1GbE
I/OUSB2x USB 3.2 Type-A (10Gbps);
1x USB 2.0 Type C (Debug);
1x USB 3.0 Type C (Recovery/Debug)
Cámara2x Conector Mini-Fakra GMSL2 4 en 1 (Opcional);
CAN2x Conector CAN JST de 4 pines (GH 1.25);
DI/DO1x Conector DI JST de 6 pines (GH 1.25);
1x Conector DO JST de 5 pines (GH 1.25);
I2S1x Conector I2S JST de 6 pines (GH 1.25)
RS4851x Conector RS-485 JST de 4 pines (GH 1.25)
UART1x Conector UART JST de 6 pines (multiplexado con DO)
Pantalla1x HDMI 2.1
Ventilador1x Conector de ventilador de 4 pines (12V PWM)
Puerto de expansión2x Cabecera de expansión de cámara (para placa GMSL2)
RTC1x RTC de 2 pines;
LED1x LED PWR, Verde;
1x LED SSD, Verde;
1x LED USR, RGB
Botón1x Botón de recuperación;
1x Botón RESET
Alimentación19-48V XT30 (incluye cable XT30 a conector DC 5525)
Versión de JetpackJetpack 6.2.1
MecánicoDimensiones (W x D x H)115mm x 115mm x 38mm
Peso200g
InstalaciónEscritorio, Montaje en pared
Temperatura de funcionamiento-20℃~60℃ (Modo 25W);
-20℃~55℃ (Modo MAXN);
(con disipador reComputer Robotics con ventilador)
Garantía2 años
CertificaciónRoHS, REACH, CE, FCC, UKCA, KC

📦 Flashear el sistema operativo JetPack

Módulo compatible

Requisitos previos

  • PC host con Ubuntu
  • Robotics J501 Mini Carrier Board
  • Módulo NVIDIA® Jetson AGX Orin
  • Ventilador activo para módulo Nano/NX
  • SSD interno NVMe M.2 2280
  • Cable de transmisión de datos USB Tipo C
info

Recomendamos que utilice dispositivos host físicos con Ubuntu en lugar de máquinas virtuales. Consulte la tabla siguiente para preparar la máquina host.

JetPack Version Ubuntu Version (Host Computer)
18.04 20.04 22.04
JetPack 6.x

Preparar la imagen de Jetpack

Aquí necesitamos descargar la imagen del sistema en nuestro PC con Ubuntu correspondiente al módulo Jetson que estamos utilizando:

Versión de JetpackMódulo Jetson GMSL Enlace de descarga 1SHA256
6.2.1 AGX Orin 64GBDownloadf0efee5f265dbaef49dc14d517b269e
7f6582ff9977d9193d377966f36408ec3
AGX Orin 32GBDownload0a97cbb6d708776bd97608594c60c3
4208b5d5dc6efbfc5553edd9c5a95802f6
danger

El archivo de imagen de Jetpack6 tiene un tamaño aproximado de 14.2GB y debería tardar alrededor de 60 minutos en descargarse. Espere a que la descarga se complete.

info

Para verificar la integridad del firmware descargado, puede comparar el valor hash SHA256.

En una máquina host con Ubuntu, abra la terminal y ejecute el comando sha256sum <File> para obtener el valor hash SHA256 del archivo descargado. Si el hash resultante coincide con el hash SHA256 proporcionado en el wiki, se confirma que el firmware que descargó está completo e intacto.

⚙️ Todos los archivos .dts y demás código fuente para las carrier boards Jetson de SEEED se pueden descargar desde Linux_for_Tegra

Entrar en modo Force Recovery

info

Antes de poder continuar con los pasos de instalación, debemos asegurarnos de que la placa esté en modo force recovery.

Paso a paso

Paso 1. Mantenga presionado el botón para entrar en modo RESET.

Paso 2. Encienda la carrier board conectando el cable de alimentación y luego suelte el botón REC.

Paso 3. Conecte la placa al PC host con Ubuntu con un cable de transmisión de datos USB Tipo C.

Paso 4. En el PC host con Linux, abra una ventana de Terminal e introduzca el comando lsusb. Si el contenido devuelto incluye una de las siguientes salidas según el Jetson SoM que utilice, entonces la placa está en modo force recovery.

  • Para AGX Orin 32GB: 0955:7223 NVidia Corp
  • Para AGX Orin 64GB: 0955:7023 NVidia Corp

La siguiente imagen es para AGX Orin 32GB:

Flashear a Jetson

Paso 1: Extrae el archivo de imagen descargado:

cd <path-to-image>
sudo tar xpf mfi_xxxx.tar.gz
# For example: sudo tar xpf mfi_recomputer-mini-agx-orin-32g-j501-6.2.1-36.4.4-2026-02-11.tar.gz

Paso 2: Ejecuta el siguiente comando para flashear el sistema JetPack en el SSD NVMe:

cd mfi_xxxx
# For example: cd mfi_recomputer-orin-robotics-j501
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --flash-only --massflash 1 --network usb0 --showlogs

Verás la siguiente salida si el proceso de flasheo se realiza correctamente

note

El comando de flasheo puede ejecutarse durante 2-10 minutos.

Paso 3: Conecta la Robotics J501-Mini a una pantalla usando el adaptador PD a HDMI para conectarla a una pantalla que admita entrada HDMI, o conéctala directamente a una pantalla que admita entrada PD usando el cable PD, y completa la configuración inicial:

info

Completa la System Configuration según tus necesidades.

🔌 Uso de interfaces

A continuación se presentarán las diversas interfaces de la placa Robotics j501-Mini y cómo utilizarlas.

M.2 Key M

M.2 Key M está diseñado para SSD NVMe de alta velocidad, proporcionando una transferencia de datos ultrarrápida para aplicaciones de robótica.

Los SSD compatibles son los siguientes

Conexión de hardware

Instrucciones de uso

Antes de probar la velocidad de lectura/escritura del SSD, debes introducir lo siguiente en la terminal de Jetson:

sudo apt update
sudo apt install smartmontools
sudo smartctl -i /dev/nvme0n1

Crea un archivo de script para probar la velocidad de lectura/escritura del SSD:

#You need to create a blank test file first
cat <<'EOF' | sudo tee test_nvme.sh >/dev/null
#!/usr/bin/env bash
set -e

sudo dd if=/dev/zero of=test bs=1000M count=1 conv=fdatasync
sleep 1
sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
sleep 1
sudo dd if=test of=/dev/null bs=1000M count=1
sudo rm -rf test
EOF

Ejecuta el script para probar la velocidad de lectura/escritura del SSD:

sudo chmod +x test_nvme.sh
./test_nvme

M.2 Key E

La interfaz M.2 Key E es un conector M.2 estándar que se utiliza principalmente para conectar módulos inalámbricos, como Wi-Fi y Bluetooth, para ampliar las capacidades de comunicación inalámbrica.

Conexión de hardware

Instrucciones de uso

Para probar el rendimiento de Wi-Fi, utiliza el siguiente comando (reemplaza la dirección IP con tu servidor de prueba):

iperf3 -c 192.168.6.191

La funcionalidad Bluetooth está disponible a través de la ranura M.2 Key E.

Ethernet

La placa portadora Robotics j501-Mini incluye un puerto Ethernet RJ45 de 1Gbps y otro de 10Gbps para conectividad de red cableada de alta velocidad.

Para probar la velocidad del puerto Ethernet, utiliza iperf3 de la siguiente manera:

iperf3 -c <server_ip> -B <bind_ip>
info

<server_ip> es la dirección IP del servidor iperf3. El cliente se conectará a este servidor para realizar una prueba de ancho de banda. <bind_ip> vincula la dirección IP local especificada como origen del tráfico de prueba.

LED

La J501 mini tiene dos LED que se pueden controlar. A continuación se muestra cómo controlar los LED para que sean green, red o blue.

Instrucciones de uso

Los comandos de referencia para controlar los LED son los siguientes:

#change to red
echo 1 | sudo tee /sys/class/leds/on-board:red/brightness
echo 0 | sudo tee /sys/class/leds/on-board:red/brightness
#change to green
echo 1 | sudo tee /sys/class/leds/on-board:green/brightness
echo 0 | sudo tee /sys/class/leds/on-board:green/brightness

#change to blue
echo 1 | sudo tee /sys/class/leds/on-board:blue/brightness
echo 0 | sudo tee /sys/class/leds/on-board:blue/brightness

El efecto de control de los LED se muestra en la siguiente figura:

USB

La placa portadora Robotics j501-Mini está equipada con una variedad de puertos USB, incluidos 2 puertos USB 3.2 Type-A (10Gbps), un puerto USB 3.0 Type-C y un puerto USB 2.0 Type-C para modo dispositivo/depuración, ofreciendo opciones de conectividad versátiles.

Prueba de velocidad USB-A

Crea un script para probar la velocidad del dispositivo USB:

sudo vim test_usb

Pega el siguiente contenido:

cat <<'EOF' | sudo tee test_usb.sh >/dev/null
#!/bin/bash
sudo dd if=/dev/zero of=/dev/$1 bs=1000M count=2 conv=fdatasync
sleep 1
sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
sleep 1
sudo dd if=/dev/$1 of=/dev/null bs=1000M count=2
EOF

Haz que el script sea ejecutable y pruébalo:

sudo chmod +x test_usb
./test_usb

Puerto USB 2.0 Type-C

Usando este puerto serie, a través del cable de datos USB-C, puedes monitorizar en el PC la información de depuración de entrada y salida.

En tu PC (no en el Jetson), instala una herramienta de inicio de sesión por puerto serie e inicia sesión en /dev/ttyUSB0 (también podría ser ttyUSB1, 2):

sudo apt update
sudo apt install screen
screen /dev/ttyUSB0 115200

A continuación podrás controlar la terminal del Jetson a través del puerto serie en otro host Linux, como se muestra a continuación:

Ventilador

El reComputer Jetson Robotics j501-Mini está equipado con:

  • 1x conector de ventilador de 4 pines (12V PWM): Compatible con ventiladores PWM estándar de 12V, también admite control de velocidad preciso, lo que lo hace ideal para requisitos de refrigeración de alto rendimiento.

Conexión de hardware

La Robotics J501 Mini proporciona un encabezado estándar de 4 pines para el ventilador.

El esquema de la hoja de datos del Fan se muestra a continuación:

Las definiciones de pines para J1 son las siguientes:

note

Para más información, consulta aquí.

Instrucciones de uso

Crea un script para establecer la velocidad del ventilador:

cat test_fanSpeedSet

Pega el siguiente contenido:

#!/bin/bash
sudo systemctl stop nvfancontrol
sleep 2
echo "000000" | sudo -S chmod 777 /sys/devices/platform/pwm-fan/hwmon/hwmon1/pwm1
echo $1 > /sys/devices/platform/pwm-fan/hwmon/hwmon1/pwm1

Además, podemos establecer manualmente la velocidad del ventilador usando la herramienta jtop.

CAN

CAN (Controller Area Network) es un estándar robusto de bus para vehículos que permite que microcontroladores y dispositivos se comuniquen entre sí sin un ordenador host.

La J501 Mini proporciona dos interfaces CAN integradas en el conector JST de 4 pines (GH1.25). Además, ambas interfaces CAN soportan CAN-FD, con CAN0 y CAN1 como se muestra a continuación:

Las definiciones de pines para CAN0 y CAN1 son similares, y el diagrama de la interfaz se muestra a continuación:

CAN0 corresponde a J6, y las definiciones de pines son las siguientes:

CAN1 corresponde a J7, y las definiciones de pines son las siguientes:

Comunicación CAN

Esta sección conecta CAN0 y CAN1 en el Jetson para demostrar cómo enviar y recibir datos entre CAN0 y CAN1 en Classic CAN mode y CAN-FD mode.

Las resistencias de terminación para CAN0 y CAN1 se pueden controlar mediante dos pines: PAA.04, ubicado en gpiochip1 línea 4, y PAA.07, ubicado en gpiochip1 línea 7.

El control de la resistencia de terminación sigue estas reglas:

When `PAA.04 = 1`, the 120 Ω termination resistor of CAN0 is **disconnected**;  
when `PAA.04 = 0`, the 120 Ω termination resistor of CAN0 is **connected**.

When `PAA.07 = 1`, the 120 Ω termination resistor of CAN1 is **disconnected**;
when `PAA.07 = 0`, the 120 Ω termination resistor of CAN1 is **connected**.

Introduce el siguiente comando para ver los pines en gpiochip 1:

gpioinfo gpiochip1

Consulta los siguientes comandos para establecer PAA.04 y PAA.07 en 0:

sudo gpioset --mode=wait gpiochip1 4=0
sudo gpioset --mode=wait gpiochip1 7=0

Consulta los siguientes comandos para establecer PAA.04 y PAA.07 en 1:

sudo gpioset --mode=wait gpiochip1 4=1
sudo gpioset --mode=wait gpiochip1 7=1

Modo Classic CAN

Crea test_can.sh para probar la transmisión y recepción de datos entre CAN0 y CAN1 en modo estándar:

touch test_can.sh
chmod +x test_can.sh
sudo ./tets_can.sh

El código del script para test_can.sh es el siguiente:

test_can.sh
#!/bin/bash

echo "000000" | sudo -S ip link set can0 down
echo "000000" | sudo -S ip link set can1 down

# set buffer size
echo "000000" | sudo -S sysctl -w net.core.rmem_max=524288
echo "000000" | sudo -S sysctl -w net.core.wmem_max=524288
echo "000000" | sudo -S sysctl -w net.core.rmem_default=524288
echo "000000" | sudo -S sysctl -w net.core.wmem_default=524288

#set to 2M bps
echo "000000" | sudo -S ip link set can0 type can bitrate 2000000
echo "000000" | sudo -S ip link set can0 up

echo "000000" | sudo -S ip link set can1 type can bitrate 2000000
echo "000000" | sudo -S ip link set can1 up

sleep 2

#Enable 5s to test
sudo pkill -f gpioset
gpioset --mode=time --sec=200000 gpiochip1 7=0 &
GPIO1_PID=$!
gpioset --mode=time --sec=200000 gpiochip1 4=0 &
GPIO2_PID=$!

cangen can1 &
candump can0

Se completará la transmisión y recepción de datos entre CAN0 y CAN1:

Modo CAN-FD

En la datasheet, puedes encontrar el diagrama de cableado para la interfaz CAN0/CAN1 como se muestra a continuación:

Crea test_canfd.sh para probar la transmisión y recepción de datos entre CAN0 y CAN1 en modo CAN-FD:

touch test_canfd.sh
chmod +x test_can.sh
sudo ./tets_can.sh

El código del script para test_canfdfd.sh es el siguiente:

test_canfd.sh
#!/bin/bash

# configure CAN FD mode
#CAN bus rate set to 500 kbps, data rate set to 5 Mbps.
echo "000000" | sudo -S ip link set can0 down
echo "000000" | sudo -S sudo ip link set can0 type can bitrate 500000 dbitrate 5000000 berr-reporting on fd on restart-ms 100
echo "000000" | sudo -S ip link set can0 up

echo "000000" | sudo -S ip link set can1 down
echo "000000" | sudo -S sudo ip link set can1 type can bitrate 500000 dbitrate 5000000 berr-reporting on fd on restart-ms 100
echo "000000" | sudo -S ip link set can1 up


# config buffer size
echo "000000" | sudo -S sysctl -w net.core.rmem_max=524288
echo "000000" | sudo -S sysctl -w net.core.wmem_max=524288
echo "000000" | sudo -S sysctl -w net.core.rmem_default=524288
echo "000000" | sudo -S sysctl -w net.core.wmem_default=524288


# check CAN FD status
echo "CAN0 status:"
ip -details link show can0

echo "CAN1 status:"
ip -details link show can1

#Enable 5s to test
sudo pkill -f gpioset
gpioset --mode=time --sec=200000 gpiochip1 7=0 &
GPIO1_PID=$!
gpioset --mode=time --sec=200000 gpiochip1 4=0 &
GPIO2_PID=$!

candump can0 &
cangen can1 -f

Se completará la transmisión y recepción de datos entre CAN0 y CAN1:

GPI && GPO

GPI

El Robotics J501 Mini proporciona un conector JST estándar de 6 pines para GPI.

El esquema de la hoja de datos de GPI se muestra a continuación:

Las definiciones de pines para J12 son las siguientes:

Habilita GPI 1 a GPI 4 para leer el estado de entrada:

sudo gpioset --mode=wait 0 131=0

Para leer la entrada de GPI 1 a GPI 4, consulta los siguientes comandos:

sudo gpioget 0 96  #read the input of GPI 1
sudo gpioget 0 104 #read the input of GPI 2
sudo gpioget 0 86 #read the input of GPI 3
sudo gpioget 0 83 #read the input of GPI 4

Cuando se lee un nivel alto, devolverá 1; cuando se lee un nivel bajo, devolverá 0.

GPO

El Robotics J501 Mini proporciona un conector JST estándar de 6 pines para GPO.

El esquema de la hoja de datos de GPO se muestra a continuación:

Las definiciones de pines para J14 son las siguientes:

Habilita GPO 1 a GPO 4 para el estado de salida:

sudo gpioset --mode=wait 0 79=1

Para configurar la salida de GPO 1 a GPO 4, consulta los siguientes comandos:

sudo gpioset --mode=wait 0 110=1  #set output of GPO 1 to high voltag
sudo gpioset --mode=wait 0 112=1 #set output of GPO 2 to high voltag
sudo gpioset --mode=wait 0 111=1 #set output of GPO 3 to high voltag
sudo gpioset --mode=wait 0 113=1 #set output of GPO 4 to high voltag


sudo gpioset --mode=wait 0 110=1 #set output of GPO 1 to low voltag
sudo gpioset --mode=wait 0 112=1 #set output of GPO 2 to low voltag
sudo gpioset --mode=wait 0 111=1 #set output of GPO 3 to low voltag
sudo gpioset --mode=wait 0 113=1 #set output of GPO 4 to low voltag

UART

El Robotics J501 Mini proporciona un conector JST estándar de 6 pines para la comunicación serie UART. UART y GPO utilizan la misma interfaz JST. Esta interfaz tiene por defecto la funcionalidad de GPO. Si necesitas cambiar a la funcionalidad UART, debes apuntar a un nuevo device tree y reiniciar el dispositivo para que el cambio surta efecto.

Para la comunicación UART, sigue el siguiente cableado. Aquí utilizamos como ejemplo la herramienta USB a TTL.

El esquema de la hoja de datos de UART se muestra a continuación:

Las definiciones de pines para J14 son las siguientes:

warning

UART y GPO comparten la misma interfaz física. Por defecto, esta interfaz funciona como GPO. Si necesitas cambiar a UART, consulta el contenido de esta sección.

Para diferentes módulos, necesitas descargar el archivo de device tree correspondiente.

Enlace de descarga .dtb para AGX Orin 32G:
https://files.seeedstudio.com/wiki/recomputer-j501-mini/tegra234-j501x-0000%2Bp3701-0004-recomputer-mini.dtb

Enlace de descarga .dtb para AGX Orin 64G:
https://files.seeedstudio.com/wiki/recomputer-j501-mini/tegra234-j501x-0000%2Bp3701-0005-recomputer-mini.dtb

Copia el device tree a la ruta especificada:

# AGX Orin 32G
sudo cp tegra234-j501x-0000%2Bp3701-0004-recomputer-mini.dtb /boot/

# AGX Orin 64G
sudo cp tegra234-j501x-0000%2Bp3701-0005-recomputer-mini.dtb /boot/

Realiza una copia de seguridad y modifica /boot/extlinux/extlinux.conf, añadiendo una línea para apuntar al nuevo archivo .dtb:

sudo cp /boot/extlinux/extlinux.conf /boot/extlinux/extlinux.conf.bak
sudo vim /boot/extlinux/extlinux.conf

Según el nombre del archivo de device tree que estés utilizando, añade una línea FDT=/your_path en extlinux.conf. Tomando AGX Orin 32G como ejemplo:

LABEL primary
MENU LABEL primary kernel
LINUX /boot/Image
INITRD /boot/initrd
FDT=/boot/tegra234-j501x-0000+p3701-0004-recomputer-mini.dtb

El conector JST de 6 pines UART está asignado a /dev/ttyTHS1 en la Jetson. Puedes usar minicom para ver la transmisión y recepción de datos del puerto serie:

sudo apt install minicom
sudo minicom -D /dev/ttyTHS1

RS485

La interfaz RS485 proporciona un canal de comunicación diferencial robusto y resistente al ruido, que se utiliza comúnmente en entornos industriales. Admite comunicación serie multidrop a larga distancia y es ideal para conectar sensores, controladores de motor, PLC y otros dispositivos industriales.

Conexión de hardware

Robotics J501-Mini proporciona un conector JST de 4 pines (GH 1.25) para RS485.

[LINE_25>El esquema de la hoja de datos de RS485 se muestra a continuación:

Las definiciones de pines para J8 son las siguientes:

Instrucciones de uso

Consulta los siguientes comandos para habilitar la interfaz RS485:

sudo gpioset --mode=wait 1 9=0  # Enable 120R resistance

sudo gpioset --mode=wait 0 126=0 # Enable RS485

La interfaz RS485 está asignada a /dev/ttyTHS4 en la Jetson. Puedes usar cutecom para probar la transmisión y recepción de datos serie con un PC:

sudo apt install cutecom
sudo cutecom

Selecciona /dev/ttyTHS4, configura tanto la Jetson como el PC a una velocidad en baudios de 9600 y conecta la Jetson y el PC mediante un módulo RS485 a USB. El efecto de la transmisión y recepción de datos serie se muestra en la figura siguiente:

Jetson sidePC side

I2S

La interfaz I2S proporciona un bus de comunicación de audio digital diseñado para transmitir datos de audio estéreo entre dispositivos. Robotics J501-Mini es compatible con la señalización I2S estándar, lo que permite entrada y salida de audio de alta calidad y baja latencia para aplicaciones como interacción por voz, localización de sonido y procesamiento de audio en tiempo real.

Conexión de hardware

Robotics J501-Mini proporciona un conector JST de 5 pines (GH 1.25) para I2S.

El esquema de la hoja de datos de I2S se muestra a continuación:

Las definiciones de pines para J9 son las siguientes:

Instrucciones de uso

Para habilitar I2S, debes configurarlo en jetson-io.py. Ejecuta lo siguiente en la terminal:

sudo python /opt/nvidia/jetson-io/jetson-io.py

A continuación, consulta los cuatro pasos siguientes para habilitar la interfaz I2S:

  • paso 1: Selecciona la opción Jetson 40-pin header
  • paso 2: Selecciona Configure header pins manually
  • paso 3: Selecciona i2s2; después de la selección, se marcará con [*]
  • paso 4: Guarda la configuración y reinicia la Jetson
Step 1
Step 1
Step 3
Step 3
Step 2
Step 2
Step 4
Step 4

Después de habilitar I2S, esta sección muestra cómo usar I2S para controlar un altavoz de doble canal. Primero, introduce lo siguiente en la terminal:

amixer -c APE cset name="I2S2 Mux" "ADMAIF1" # Speaker

Si estás utilizando un micrófono:

amixer -c APE cset name="ADMAIF2 Mux" "I2S2" # Microphone

Consulta el siguiente comando para controlar el altavoz, donde -c debe cambiarse al número de canales de altavoz que estés utilizando:

speaker-test -t sine -f 440 -c 2

Puedes ver la salida en la terminal cuando el altavoz se controla con normalidad, como se muestra en la figura siguiente.

RTC

Robotics J501-Mini proporciona un conector estándar de 2 pines para RTC (3V).

El esquema de la hoja de datos de RTC se muestra a continuación:

Las definiciones de pines para J15 son las siguientes:

Después de conectar la batería externa, puedes comprobar el estado de funcionamiento de rtc0 (RTC principal, correspondiente a la batería integrada) en la terminal:

cat /sys/class/rtc/rtc0/power/runtime_status

Puerto de expansión - GMSL

La placa portadora Robotics j501-Mini incluye un conector de expansión de cámara para la placa de expansión GMSL. Puede conectar y operar simultáneamente cuatro cámaras GMSL al mismo tiempo.

Conexión de hardware

A continuación se muestra la ranura de conexión de la placa de expansión de cámara GMSL de la placa portadora Robotics j501-Mini (es necesario preparar una placa de expansión con antelación):

A continuación se muestran los modelos de cámaras GMSL que ya hemos soportado:

Instrucciones de uso

note

Antes de habilitar la funcionalidad GMSL, asegúrate de haber instalado una versión de JetPack con el controlador de la placa de expansión GMSL.

Configurar el archivo Jetson IO

sudo /opt/nvidia/jetson-io/jetson-io.py
note

Hay tres archivos de superposición en total, a saber, Seeed GMSL 1X4 3G, Seeed GMSL 1X4 6G, Seeed GMSL 1X4 y Orbbec Gemini 335Lg. Estos corresponden respectivamente a la cámara 3G de SG3S, la cámara 6G de SG2 y SG8S, y la cámara de Orbbec. Como se muestra en la Figura 3, configura el archivo io según el modelo de tu cámara.

step 2. Instala las herramientas de configuración de la interfaz de vídeo.

sudo apt update
sudo apt install v4l-utils

Usar las cámaras de la Serie SGxxx

step 1. Configura el formato de canal para el serializador y el deserializador. El número de interfaz en la figura corresponde al número de serializador/deserializador.

  media-ctl -d /dev/media0 --set-v4l2 '"ser_0_ch_0":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_0_ch_0":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_1_ch_1":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_0_ch_1":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_2_ch_2":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_0_ch_2":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_3_ch_3":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_0_ch_3":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_4_ch_0":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_1_ch_0":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_5_ch_1":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_1_ch_1":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_6_ch_2":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_1_ch_2":0[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"ser_7_ch_3":1[fmt:YUYV8_1X16/1920x1536]'
media-ctl -d /dev/media0 --set-v4l2 '"des_1_ch_3":0[fmt:YUYV8_1X16/1920x1536]'

note

ser_0_ch_0 es el primer canal del decodificador, des_ch_0 es el serializador en la primera cámara, y lo mismo se aplica a los demás. Si la cámara conectada tiene una resolución diferente, entonces la configuración aquí se basará en el formato real de la cámara. Necesitamos configurar el formato de canal para el serializador y el deserializador cada vez que el dispositivo se reinicia.

step 2. Configura la resolución de la cámara.

info

Aquí demostramos cómo configurar cámaras de diferentes modelos y resoluciones.

v4l2-ctl -V --set-fmt-video=width=1920,height=1080 -c sensor_mode=1  -d /dev/video0
v4l2-ctl -V --set-fmt-video=width=1920,height=1080 -c sensor_mode=1 -d /dev/video1
v4l2-ctl -V --set-fmt-video=width=1920,height=1536 -c sensor_mode=0 -d /dev/video2
v4l2-ctl -V --set-fmt-video=width=3840,height=2160 -c sensor_mode=2 -d /dev/video3
note

--set-fmt-video sigue la resolución que se selecciona según la cámara que esté conectada. El sensor_mode también se elige en consecuencia. Actualmente, hay tres opciones de sensor_mode, cada una correspondiente a una resolución diferente.

  • sensor_mode=0 -------> YUYV8_1X16/1920x1536
  • sensor_mode=1 -------> YUYV8_1X16/1920x1080
  • sensor_mode=2 -------> YUYV8_1X16/3840x2160

step 3. Inicia la cámara.

gst-launch-1.0 v4l2src device=/dev/video0 ! \
'video/x-raw,width=1920,height=1080,framerate=30/1,format=UYVY' ! \
videoconvert ! autovideosink -ev

gst-launch-1.0 v4l2src device=/dev/video1 ! \
'video/x-raw,width=1920,height=1080,framerate=30/1,format=UYVY' ! \
videoconvert ! autovideosink -ev

gst-launch-1.0 v4l2src device=/dev/video2 ! \
'video/x-raw,width=1920,height=1536,framerate=30/1,format=UYVY' ! \
videoconvert ! autovideosink -ev

gst-launch-1.0 v4l2src device=/dev/video3 ! \
'video/x-raw,width=3840,height=2160,framerate=30/1,format=UYVY' ! \
videoconvert ! autovideosink -ev

Pantalla

El Robotics J501 Mini está equipado con un HDMI para salida de pantalla de alta resolución.

Recursos

Soporte técnico y debate sobre el producto

Gracias por elegir nuestros productos. Estamos aquí para ofrecerte diferentes tipos de soporte y 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...