Uso de interfaces
Introducción
La placa portadora reComputer J401 es compatible con NVIDIA Jetson Orin Nano/NX(Orin Nano 4GB/Orin Nano 8GB, Orin NX 8GB/Orin NX 16GB), ofreciendo un rendimiento excepcional y diseñada para abordar con facilidad tareas exigentes de computación en el borde. Es la elección perfecta para desarrollar sistemas de automatización industrial, crear potentes aplicaciones de IA y más.
Cuenta con capacidad de red equipada con 1x puerto Ethernet Gigabit para una conexión rápida. También incluye 4x puertos USB 3.2 Tipo A (10Gbps), 1x puerto USB 2.0 Tipo C y 1x conector CAN para opciones de conectividad versátiles. Esta placa de expansión está equipada con 1x M.2 Key M 2280 para tarjeta SSD (incluye SSD NVMe 2280 de 128GB) y 1x ranura M.2 Key E para expansión de conectividad inalámbrica LTE.
Además, la placa admite múltiples periféricos. Permite a los usuarios capturar y mostrar contenido de vídeo de alta calidad con 2x MIPI-CSI de 15 pines y 1x conector HDMI 2.1 para conexión de cámara y pantalla. También incluye un conector de ventilador PWM de 5V, un zócalo RTC y un conector RTC de 2 pines.
La placa admite un amplio rango de entrada de 9-19V CC, lo que la hace flexible para integrarse en una variedad de tareas de computación. Mantiene el funcionamiento en un rango de temperatura de -10°C a 60°C.
Para más sugerencias de accesorios, consulta la página de paquetes de reComputer J401.
SODIMM de 260 pines
La función principal del SODIMM de 260 pines es conectar tu placa portadora con NVIDIA Jetson Orin Nano 4GB/NVIDIA Jetson Orin Nano 8GB, NVIDIA Jetson Orin NX 8GB/NVIDIA Jetson Orin NX 16GB.
Descripción general de la conexión

Si la conexión es correcta, cuando conectes tu adaptador de corriente verás que se enciende el indicador de alimentación.
M.2 Key M
M.2 Key M es una especificación para el diseño físico y eléctrico de un conector M.2 que admite transferencia de datos de alta velocidad mediante la interfaz PCIe (Peripheral Component Interconnect Express). Los conectores M.2 Key M se utilizan comúnmente para conectar unidades de estado sólido (SSD) y otras tarjetas de expansión de alto rendimiento a una placa base u otro dispositivo host. La designación "Key M" se refiere a la configuración específica de pines y la llave del conector M.2, que determina el tipo de dispositivos que se pueden conectar a él.
Las SSD compatibles son las siguientes
- SSD interna NVMe M.2 PCle Gen3x4 2280 de 128GB
- SSD interna NVMe M.2 PCle Gen3x4 2280 de 256GB
- SSD interna NVMe M.2 PCle Gen3x4 2280 de 512GB
- SSD interna NVMe M.2 PCle Gen3x4 2280 de 1TB
- SSD interna NVMe M.2 PCle Gen3x4 2280 de 2TB
Descripción general de la conexión
Si quieres retirar la SSD incluida e instalar una nueva, puedes seguir los pasos que se indican a continuación.

Uso
Explicaremos cómo hacer una prueba de rendimiento sencilla en la SSD conectada.
- Paso 1: Comprueba la velocidad de escritura ejecutando el siguiente comando.
sudo dd if=/dev/zero of=/home/nvidia/test bs=1M count=512 conv=fdatasync
- Paso 2: Comprueba la velocidad de lectura ejecutando los siguientes comandos. Asegúrate de ejecutarlos después de ejecutar el comando anterior para la velocidad de escritura.
sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
sudo dd if=/home/nvidia/test of=/dev/null bs=1M count=512
M.2 Key E
M.2 Key E es una especificación para el diseño físico y eléctrico de un conector M.2 que admite módulos de comunicación inalámbrica, como tarjetas Wi-Fi y Bluetooth. La designación "Key E" se refiere a la configuración específica de pines y la llave del conector M.2, que está optimizada para dispositivos de red inalámbrica. Los conectores M.2 Key E se encuentran comúnmente en placas base y otros dispositivos que requieren opciones de conectividad inalámbrica. Aquí recomendamos el módulo Intel wifi/bluetooth.
Descripción general de la conexión

Uso
Después de instalar el módulo wifi/bluetooth, podrás ver el icono de wifi/bluetooth en la esquina superior derecha.

Prueba de Wi‑Fi
ifconfig

Prueba de Bluetooth
bluetoothctl
power on #open bluetooth
agent on #registe agent
scan on #search other bluetooths
connect xx:xx:xx:xx #connect target bluetooth
paired-devices #show all paired devices

Cámaras CSI
CSI significa Camera Serial Interface. Es una especificación que describe una interfaz de comunicación serie para transferir datos de vídeo desde sensores de imagen a un procesador host. CSI se utiliza comúnmente en dispositivos móviles, cámaras y sistemas embebidos para permitir una transferencia rápida y eficiente de datos de imagen y vídeo para su procesamiento y análisis.
Las cámaras compatibles son las siguientes
-
Cámaras IMX219
-
Cámaras IMX477
Descripción general de la conexión
Aquí los 2 conectores de cámara CSI están marcados como CAM0 y CAM1. Puedes conectar una cámara a cualquiera de los 2 conectores o conectar 2 cámaras a ambos conectores al mismo tiempo.

Uso
Abre tu terminal (Ctrl+Alt+T) e introduce un comando como el siguiente:
sudo /opt/nvidia/jetson-io/jetson-io.py

- Método 1
- Method 2
Para el puerto CAM0
nvgstcapture-1.0 sensor-id=0
Para el puerto CAM1
nvgstcapture-1.0 sensor-id=1
Si quieres cambiar más configuraciones de la cámara, puedes escribir "nvgstcapture-1.0 --help" para acceder a todas las opciones configurables disponibles.
Para el puerto CAM0
gst-launch-1.0 nvarguscamerasrc sensor-id=0 sensor-mode=0 ! 'video/x-raw(memory:NVMM),width=1920, height=1080, framerate=20/1, format=NV12' ! nvvidconv ! xvimagesink
Para el puerto CAM1
gst-launch-1.0 nvarguscamerasrc sensor-id=1 sensor-mode=0 ! 'video/x-raw(memory:NVMM),width=1920, height=1080, framerate=20/1, format=NV12' ! nvvidconv ! xvimagesink
Si quieres cambiar más configuraciones de la cámara, puedes actualizar los argumentos como width, height, framerate, format, etc.
RTC
RTC significa Reloj en Tiempo Real. Es un reloj que realiza un seguimiento de la hora y la fecha actuales de forma independiente del reloj principal del sistema. Los RTC se utilizan comúnmente en ordenadores, sistemas embebidos y otros dispositivos electrónicos para mantener una medición de tiempo precisa incluso cuando el dispositivo está apagado. A menudo son alimentados por una pequeña batería para garantizar un funcionamiento continuo y conservar la información de hora y fecha durante los ciclos de encendido.
Descripción de la conexión
- Method 1
- Method 2
Conecta una batería de botón CR1220 de 3V al zócalo RTC de la placa como se muestra a continuación. Asegúrate de que el extremo positivo (+) de la batería esté orientado hacia arriba.

Conecta una batería de botón CR2302 de 3V con conector JST al zócalo JST de 2 pines y 1,25 mm de la placa como se muestra a continuación:

Uso
-
Paso 1: Conecta una batería RTC como se mencionó anteriormente.
-
Paso 2: Enciende reComputer Industrial.
-
Paso 3: En el escritorio de Ubuntu, haz clic en el menú desplegable en la esquina superior derecha, navega a
Settings > Date & Time, conéctate a una red mediante un cable Ethernet y selecciona Automatic Date & Time para obtener la fecha y hora automáticamente.

Si no te has conectado a internet mediante Ethernet, puedes configurar la fecha y hora manualmente aquí.
- Paso 4: Abre una ventana de terminal y ejecuta el siguiente comando para comprobar la hora del reloj de hardware.
sudo hwclock
Verás una salida similar a la siguiente, que no es la fecha y hora correctas.

- Paso 5: Cambia la hora del reloj de hardware a la hora actual del reloj del sistema introduciendo el siguiente comando.
sudo hwclock --systohc
- Paso 6: Retira cualquier cable Ethernet conectado para asegurarte de que no obtenga la hora de internet y reinicia la placa.
sudo reboot
-
Paso 7: Comprueba la hora del reloj de hardware para verificar que la fecha y la hora se mantienen igual aunque el dispositivo se haya apagado.
-
Paso 8: Crea un nuevo script de shell usando cualquier editor de texto de tu preferencia. Aquí usamos el editor de texto vi.
sudo vi /usr/bin/hwtosys.sh
- Paso 9: Entra en modo de inserción presionando i, copia y pega el siguiente contenido dentro del archivo.
#!/bin/bash
sudo hwclock --hctosys
- Paso 10: Haz que el script sea ejecutable.
sudo chmod +x /usr/bin/hwtosys.sh
- Paso 11: Crea un archivo systemd.
sudo nano /lib/systemd/system/hwtosys.service
- Paso 12: Añade lo siguiente dentro del archivo.
[Unit]
Description=Change system clock from hardware clock
[Service]
ExecStart=/usr/bin/hwtosys.sh
[Install]
WantedBy=multi-user.target
- Paso 13: Recarga el demonio de systemctl.
sudo systemctl daemon-reload
- Paso 14: Habilita el servicio recién creado para que se inicie al arrancar y arranca el servicio.
sudo systemctl enable hwtosys.service
sudo systemctl start hwtosys.service
- Paso 15: Verifica que el script esté en ejecución como un servicio systemd.
sudo systemctl status hwtosys.service
- Paso 16: Reinicia la placa y verás que el reloj del sistema ahora está sincronizado con el reloj de hardware.
Control del ventilador
nvfancontrol es un demonio en espacio de usuario para el control de la velocidad del ventilador. Gestiona la velocidad del ventilador en función de la tabla de asignación temperatura‑a‑velocidad‑del‑ventilador en el archivo de configuración de nvfancontrol.
Hay algunos elementos básicos en el servicio nvfancontrol, incluyendo Tmargin, kickstart PWM, perfil de ventilador, control de ventilador y gobernador de ventilador. Todos estos se pueden programar mediante el archivo de configuración según las preferencias del usuario. Este capítulo explicará cada uno de ellos en las siguientes secciones.
Si quieres cambiar nvfancontrol.conf asegúrate de haber leído esto
Uso
- Method 1
- Method 2
- Paso 1: Detén el servicio systemd de nvfancontrol.
sudo systemctl stop nvfancontrol
- Paso 2: Cambia nvfancontrol.conf.
vi /etc/nvfancontrol.conf
Después de cambiar nvfancontrol.conf, escribe Ese y :q para salir
- Paso 3: Elimina el archivo de estado.
sudo rm /var/lib/nvfancontrol/status
- Paso 4: Reinicia el servicio systemd de nvfancontrol.
sudo systemctl restart nvfancontrol
- Paso 1: Entra en modo root.
sudo -i
- Paso 2: Detén el servicio systemd de nvfancontrol.
sudo systemctl stop nvfancontrol
- Paso 3: Cambia el valor PWM.
echo 100 > /sys/devices/platform/pwm-fan/hwmon/hwmon3/pwm1
Cuanto mayor sea el valor, más rápida será la velocidad del ventilador. El valor PWM debe estar entre 0 y 255, puede que hwmon3 no sea tu ruta así que comprueba tu propia ruta
- Paso 4: Comprueba las rpm.
cat /sys/class/hwmon/hwmon0/rpm
GPIO
Los detalles del conector de 40 pines se muestran a continuación:
| Pin del conector | Nombre del pin del módulo | Pin del módulo | Nombre del pin del SoC | Uso predeterminado | Funcionalidad alternativa |
|---|---|---|---|---|---|
| 1 | - | - | - | Suministro principal de 3,3 V | - |
| 2 | - | - | - | Suministro principal de 5,0 V | - |
| 3 | I2C1_SDA | 191 | DP_AUX_CH3_N | Datos de I2C n.º 1 | - |
| 4 | - | - | - | Suministro principal de 5,0 V | - |
| 5 | I2C1_SCL | 189 | DP_AUX_CH3_P | Reloj de I2C n.º 1 | - |
| 6 | - | - | - | Tierra | - |
| 7 | GPIO09 | 211 | AUD_MCLK | GPIO | Reloj maestro de audio |
| 8 | UART1_TXD | 203 | UART1_TX | Transmisión de UART n.º 1 | GPIO |
| 9 | - | - | - | Tierra | - |
| 10 | UART1_RXD | 205 | UART1_RX | Recepción de UART n.º 1 | GPIO |
| 11 | UART1_RTS* | 207 | UART1_RTS | GPIO | Solicitud de envío de UART n.º 2 |
| 12 | I2S0_SCLK | 199 | DAP5_SCLK | GPIO | Reloj de I2S de audio n.º 0 |
| 13 | SPI1_SCK | 106 | SPI3_SCK | GPIO | Reloj de desplazamiento de SPI n.º 1 |
| 14 | - | - | - | Tierra | - |
| 15 | GPIO12 | 218 | TOUCH_CLK | GPIO | - |
| 16 | SPI1_CSI1* | 112 | SPI3_CS1 | GPIO | Selección de chip de SPI n.º 1, n.º 1 |
| 17 | - | - | - | GPIO | - |
| 18 | SPI1_CSI0* | 110 | SPI3_CS0 | GPIO | Selección de chip de SPI n.º 0, n.º 0 |
| 19 | SPI0_MOSI | 89 | SPI1_MOSI | GPIO | SPI n.º 0 Maestro‑Salida/Esclavo‑Entrada |
| 20 | - | - | - | Tierra | - |
| 21 | SPI0_MISO | 93 | SPI1_MISO | GPIO | SPI n.º 0 Maestro‑Entrada/Esclavo‑Salida |
| 22 | SPI1_MISO | 108 | SPI3_MISO | GPIO | SPI n.º 1 Maestro‑Entrada/Esclavo‑Salida |
| 23 | SPI0_SCK | 91 | SPI1_SCK | GPIO | Reloj de desplazamiento de SPI n.º 0 |
| 24 | SPI0_CS0* | 95 | SPI1_CS0 | GPIO | SPI n.º 0 Chip Select n.º 0 |
| 25 | - | - | - | Tierra | - |
| 26 | SPI0_CS1* | 97 | SPI1_CS1 | GPIO | SPI n.º 0 Chip Select n.º 1 |
| 27 | I2C0_SDA | 187 | GEN2_I2C_SDA | I2C n.º 0 Datos | GPIO |
| 28 | I2C0_SCL | 185 | GEN2_I2C_SCL | I2C n.º 0 Reloj | GPIO |
| 29 | GPIO01 | 118 | SOC_GPIO41 | GPIO | Reloj de propósito general n.º 0 |
| 30 | - | - | - | Tierra | - |
| 31 | GPIO11 | 216 | SOC_GPIO42 | GPIO | Reloj de propósito general n.º 1 |
| 32 | GPIO07 | 206 | SOC_GPIO44 | GPIO | PWM |
| 33 | GPIO13 | 228 | SOC_GPIO54 | GPIO | PWM |
| 34 | - | - | - | Tierra | - |
| 35 | I2S0_FS | 197 | DAP5_FS | GPIO | Audio I2S n.º 0 Selección de campo |
| 36 | UART1_CTS* | 209 | UART1_CTS | GPIO | UART n.º 1 Clear to Send |
| 37 | SPI1_MOSI | 104 | SPI3_MOSI | GPIO | SPI n.º 1 Master Out/Slave In |
| 38 | I2S0_DIN | 195 | DAP5_DIN | GPIO | Audio I2S n.º 0 Datos de entrada |
| 39 | - | - | - | Tierra | - |
| 40 | I2S0_DOUT | 193 | DAP5_DOUT | GPIO | Audio I2S n.º 0 Datos de salida |
UART
UART significa Universal Asynchronous Receiver/Transmitter. Es un protocolo de comunicación utilizado para la comunicación serie entre dos dispositivos. La comunicación UART implica dos pines: uno para transmitir datos (TX) y otro para recibir datos (RX). Es asíncrono, lo que significa que los datos se transmiten sin una señal de reloj compartida entre los dispositivos. UART se utiliza comúnmente en diversas aplicaciones como microcontroladores, sensores y comunicación entre diferentes dispositivos electrónicos.
Descripción general de la conexión
La interfaz UART utiliza el pin que se muestra a continuación, o puedes usar otra interfaz UART en J401:
| Pin del conector | Nombre del pin del módulo | Pin del módulo | Nombre del pin del SoC | Uso predeterminado | Funcionalidad alternativa |
|---|---|---|---|---|---|
| 6 | - | - | - | Tierra | - |
| 8 | UART1_TXD | 203 | UART1_TX | UART n.º 1 Transmisión | GPIO |
| 10 | UART1_RXD | 205 | UART1_RX | UART n.º 1 Recepción | GPIO |
Conecta el J401 con TTL mediante UART como se muestra a continuación:
| Pin del conector J401 | Uso | USB traductor TTL | Uso |
|---|---|---|---|
| 6 | Tierra | GND | Tierra |
| 8 | UART1_TXD | U_RX | UART_RX |
| 10 | UART1_RXD | U_TX | UART_TX |

Uso
- Paso 1: Instala PuTTy en tu portátil con Windows y configura PuTTy como se muestra a continuación:

- Paso 2: Instala PuTTy en Jetson, abre tu terminal (ALT+Ctrl+T) y escribe el siguiente comando.
sudo apt install putty
- Paso 3: Usa PuTTy en Windows para enviar 'hello linux' a Jetson y usa PuTTy en Jetson para enviar 'hello windows' a Windows.
Asegúrate de que tu baudrate esté configurado en 115200.
El resultado es el siguiente:

I2C
I2C significa Inter-Integrated Circuit. Es un protocolo de comunicación serie ampliamente utilizado que permite la comunicación entre múltiples circuitos integrados en un sistema. I2C utiliza dos líneas bidireccionales: una para datos (SDA) y otra para reloj (SCL). Los dispositivos conectados a un bus I2C pueden actuar como maestro o esclavo, lo que permite que varios dispositivos se comuniquen entre sí. I2C es popular por su simplicidad, flexibilidad y capacidad para conectar una variedad de dispositivos como sensores, memorias y otros periféricos en sistemas embebidos y dispositivos electrónicos.
Descripción general de la conexión
La interfaz I2C utiliza el pin que se muestra a continuación, o puedes usar otra interfaz I2C en J401:
| Pin del conector | Nombre del pin del módulo | Pin del módulo | Nombre del pin del SoC | Uso predeterminado | Funcionalidad alternativa |
|---|---|---|---|---|---|
| 2 | - | - | - | Suministro principal de 5,0 V | - |
| 3 | I2C1_SDA | 191 | DP_AUX_CH3_N | I2C n.º 1 Datos | - |
| 5 | I2C1_SCL | 189 | DP_AUX_CH3_P | I2C n.º 1 Reloj | - |
| 6 | - | - | - | Tierra | - |
Conecta el J401 al Grove-3-Axis Digital Accelerometer mediante I2C como se muestra a continuación:
| J401 | Uso | Grove-3-Axis Digital Accelerometer | Uso |
|---|---|---|---|
| 2 | Suministro de 5 V | Vcc | - |
| 3 | I2C1_SDA | SDA | I2C_SDA |
| 5 | I2C1_SCL | SCL | I2C_SCL |
| 6 | Tierra | GND | Tierra |

Prueba
Abre tu terminal (ALT+Ctrl+T) y escribe el siguiente comando:
i2cdetect -y -r 7
Tu canal puede ser diferente del mío en el comando: i2cdetect -y -r x.
Verás el resultado como se muestra a continuación; antes de conectar al I2C, no se detectó ningún dispositivo I2C en el canal 7, pero después se detectó un dispositivo I2C con la dirección 0x19.

Si quieres usar pines IO generales para control lógico, consulta este wiki.
CAN
La serie reComputer J401 proporciona una interfaz CAN donde la señal CAN se emite directamente desde el SOM a niveles TTL/CMOS, lo que constituye una señal diferencial no estándar que requiere un transceptor CAN externo para conectarse a un bus CAN estándar; admite formatos de trama CAN FD, lo que permite una longitud de datos ampliada y mayores velocidades de datos, por lo que es adecuada para automatización industrial, robótica, creación de prototipos automotrices y otras aplicaciones que requieren comunicación fiable y en tiempo real.
Descripción general de la conexión

Uso
Paso 1. Configurar y abrir can0:
sudo ip link set can0 down
sudo ip link set can0 type can bitrate 500000
sudo ip link set can0 up
Paso 2. Prueba de comunicación. Abre una terminal para recibir señales.
candump can0
Paso 3. Abre otra terminal para enviar la señal.
cansend can0 123#abcdabcd

CAN FD
Paso 1. Configurar y abrir can0:
# Install can-utils Tools
sudo apt update && sudo apt install can-utils -y
# Enable CAN0 interface (FD mode, 5Mbps data segment rate)
sudo ip link set can0 up type can bitrate 500000 dbitrate 2000000 fd on

Paso 2. Abre otra terminal para enviar la señal.
cansend can0 123#1122334455667788

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 distintas preferencias y necesidades.