Pular para o conteúdo principal

Hardware da Placa Carrier Mini J501 e Introdução

A Mini J501 é uma placa carrier de IA de borda compacta e de alto desempenho para módulos NVIDIA Jetson AGX Orin (32GB/64GB). Ela oferece até 275 TOPS de desempenho de IA no modo MAXN e fornece amplas opções de conectividade, incluindo duas portas Ethernet Gigabit, slots M.2 para módulos 5G e Wi-Fi/Bluetooth, 2 portas USB 3.2, CAN, GMSL2 via expansão opcional, I2C e UART. Pré-instalada com JetPack 6.2.1 e Linux BSP, ela oferece suporte a implantação rápida para aplicações de IA de borda.

A Mini J501 também pode ser usada em cenários de robótica. Com suporte para frameworks como NVIDIA Isaac ROS, Hugging Face, PyTorch e ROS 2/1, ela pode fazer a ponte entre a tomada de decisão orientada a modelos e o controle físico de robôs, incluindo planejamento de movimento, fusão de sensores e percepção com múltiplas câmeras.

Visão geral da Placa Carrier reComputer Jetson Mini J501

Vista superior
fig1
Vista lateral
fig2
Vista inferior
fig3

📝 Lista de Peças

  • Placa Carrier Mini J501 x 1
  • Fonte de alimentação e placa de expansão JST x 1
  • Cabo XT30 para DC x 1
  • Cabo USB, Tipo A para Tipo C x 1
  • Dissipador de calor para placa de expansão x 1
  • Pino espaçador (M3*30) x 5
  • Porca sextavada M3 x 5
  • Parafuso (CM2.5*L.4) para módulo Jetson e M.2 Key M x3
  • Parafuso (CM2*3.0) para M.2 Key E x1
  • Pino espaçador (M2*2.0) para M.2 Key B x1
  • Parafuso (CM3*4.0) para M.2 Key B x1
  • Manual do Usuário x 1
nota

1.Por favor, projete uma solução robusta de dissipação de calor de acordo com o Guia de Projeto Térmico, quando em alimentação de alta tensão e temperatura de operação. 2.Por favor, fixe o dissipador de calor no módulo para melhor desempenho. 3.Durante a operação com entrada de alta tensão e alta carga, não toque no dissipador de calor para evitar queimaduras. 4.Recomendação de Adaptador de Energia para Validação: use o adaptador de energia recomendado no site oficial da Seeed.

  • Adaptador de Energia 19V/4.74A com conector 5525 Barrel Jack
  • Certifique-se de que os requisitos máximos de consumo de energia sejam atendidos. 2.Compatibilidade do Cabo de Alimentação AC
  • Compre cabos de alimentação AC tipo trevo específicos para a região, de acordo com sua localização. 3.Compatibilidade de Acessórios
  • Use apenas acessórios oficialmente recomendados (por exemplo, módulos sem fio, câmeras, periféricos) para desempenho e compatibilidade ideais.

🔍 Especificação

Especificações da Placa Carrier

CategoriaItemDetalhes
ArmazenamentoM.2 KEY M PCIe1x M.2 KEY M PCIe (SSD M.2 NVMe 2280)
RedeM.2 KEY E1x M.2 Key E para módulo WiFi/Bluetooth
Ethernet1x RJ45 10GbE && 1x RJ45 1GbE
I/OUSB2x USB 3.2 Tipo-A (10Gbps);
1x USB 2.0 Tipo C (Depuração);
1x USB 3.0 Tipo C (Recuperação/Depuração)
Câmera2x Conector GMSL2 Mini-Fakra 4 em 1 (Opcional);
CAN2x Conector CAN JST 4 pinos (GH 1.25);
DI/DO1x Conector DI JST 6 pinos (GH 1.25);
1x Conector DO JST 5 pinos (GH 1.25);
I2S1x Conector I2S JST 6 pinos (GH 1.25)
RS4851x Conector RS-485 JST 4 pinos (GH 1.25)
UART1x Conector UART JST 6 pinos (Multiplexado com DO)
Display1x HDMI 2.1
Ventoinha1x Conector de Ventoinha 4 pinos (12V PWM)
Porta de Extensão2x Header de Expansão de Câmera (para placa GMSL2)
RTC1x RTC 2 pinos;
LED1x LED PWR, Verde;
1x LED SSD, Verde;
1x LED USR, RGB
Botão1x Botão de Recuperação;
1x Botão RESET
Alimentação19-48V XT30 (Cabo XT30 para conector DC 5525 incluído)
Versão do JetpackJetpack 6.2.1
MecânicoDimensões (L x P x A)110mm x 110mm x 38mm
Peso200g
InstalaçãoMesa, Montagem na parede
Temperatura de Operação-20℃~60℃ (Modo 25W);
-20℃~55℃ (Modo MAXN);
(com um dissipador de calor compatível com ventoinha)
Garantia2 Anos
CertificaçãoRoHS, REACH, CE, FCC, UKCA, KC

📦 Gravar o SO JetPack

Módulo Suportado

Pré-requisitos

  • PC host com Ubuntu
  • Placa Carrier Mini J501
  • Módulo NVIDIA® Jetson AGX Orin
  • Ventoinha ativa para módulo Nano/NX
  • SSD interno NVMe M.2 2280
  • Cabo de transmissão de dados USB Tipo-C
info

Recomendamos que você use dispositivos host físicos com Ubuntu em vez de máquinas virtuais. Consulte a tabela abaixo para preparar a máquina host.

Versão do JetPack Versão do Ubuntu (Computador Host)
18.04 20.04 22.04 24.04
JetPack 6.x
JetPack 7.2

Nota: Para o JetPack 7.2, o Ubuntu 24.04 é suportado apenas para gravação e instalação de componentes no lado do alvo. Use Ubuntu 20.04 ou 22.04 se você precisar de componentes de desenvolvimento no host.

Preparar a Imagem do Jetpack

Aqui, precisamos baixar a imagem do sistema para o nosso PC com Ubuntu correspondente ao módulo Jetson que estamos usando:

Versão do JetpackMódulo Jetson GMSL Link de Download1SHA256
7.2 AGX Orin 64GBDownloadF95E91C3BFB00D50EB999383F85949B4
AGX Orin 32GBDownload8FA6E750C2C21678168DAE377E95CE6C
6.2.1 AGX Orin 64GBDownloadF95E91C3BFB00D50EB999383F85949B4
AGX Orin 32GBDownload8FA6E750C2C21678168DAE377E95CE6C
perigo

Os arquivos de imagem do JetPack são grandes e podem levar cerca de 60 minutos para serem baixados. Aguarde até que o download seja concluído.

info

Para verificar a integridade do firmware baixado, você pode comparar o valor de hash SHA256.

Em uma máquina host Ubuntu, abra o terminal e execute o comando sha256sum <File> para obter o valor de hash SHA256 do arquivo baixado. Se o hash resultante corresponder ao hash SHA256 fornecido no wiki, isso confirma que o firmware que você baixou está completo e intacto.

⚙️ Todos os arquivos .dts e outros códigos-fonte das placas carrier Jetson da SEEED podem ser baixados em Linux_for_Tegra

Entrar no Modo de Recuperação Forçada

info

Antes de podermos prosseguir para as etapas de instalação, precisamos garantir que a placa esteja no modo de recuperação forçada.

Passo a passo

Passo 1. Continue pressionando o botão para o modo RESET.

Passo 2. Ligue a placa carrier conectando o cabo de alimentação e, em seguida, solte o botão REC.

Passo 3. Conecte a placa ao PC host Ubuntu com um cabo USB Type-C de transmissão de dados.

Passo 4. No PC host Linux, abra uma janela do Terminal e insira o comando lsusb. Se o conteúdo retornado tiver uma das seguintes saídas de acordo com o Jetson SoM que você usa, então a placa está no modo de recuperação forçada.

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

A imagem abaixo é para AGX Orin 32GB:

Gravar no Jetson

Passo 1: Extraia o arquivo de imagem baixado:

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

Passo 2: Execute o seguinte comando para gravar o sistema JetPack no SSD NVMe:

cd mfi_xxxx
# For example: cd mfi_recomputer-mini-agx-orin-32g-j501-6.2.1-36.4.4-2026-02-11
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --flash-only --massflash 1 --network usb0 --showlogs

Você verá a seguinte saída se o processo de gravação for bem-sucedido

nota

O comando de gravação pode levar de 2 a 10 minutos.

Passo 3: Conecte o Mini J501 a um monitor usando o adaptador PD para HDMI ou conecte diretamente a um monitor que suporte entrada PD usando o cabo PD e conclua a configuração inicial:

info

Conclua a Configuração do Sistema de acordo com suas necessidades.

🔌 Uso das interfaces

As seções a seguir apresentam as várias interfaces da placa Mini J501 e como usá-las.

M.2 Key M

O M.2 Key M é projetado para SSDs NVMe de alta velocidade, fornecendo transferência de dados ultrarrápida para aplicações de robótica.

SSDs compatíveis são os seguintes

Conexão de hardware

Instruções de uso

Antes de testar a velocidade de leitura/gravação do SSD, você precisa inserir o seguinte no terminal do Jetson:

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

Crie um arquivo de script para testar a velocidade de leitura/gravação do 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

Execute o script para testar a velocidade de leitura/gravação do SSD:

sudo chmod +x test_nvme.sh
./test_nvme

M.2 Key E

A interface M.2 Key E é um conector M.2 padrão usado principalmente para conectar módulos sem fio, como Wi-Fi e Bluetooth, para expandir as capacidades de comunicação sem fio.

Conexão de hardware

Instruções de uso

Para testar o desempenho do Wi-Fi, use o seguinte comando (substitua o endereço IP pelo do seu servidor de teste):

iperf3 -c 192.168.6.191

A funcionalidade Bluetooth está disponível por meio do slot M.2 Key E.

Ethernet

A placa carrier Mini J501 possui uma porta Ethernet RJ45 de 1Gbps e outra de 10Gbps para conectividade de rede cabeada de alta velocidade.

Para testar a velocidade da porta Ethernet, use iperf3 da seguinte forma:

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

<server_ip> é o endereço IP do servidor iperf3. O cliente se conectará a esse servidor para realizar um teste de largura de banda. <bind_ip> vincula o endereço IP local especificado como a origem do tráfego de teste.

LED

O Mini J501 possui dois LEDs que podem ser controlados. A seguir é demonstrado como controlar os LEDs para ficarem verdes, vermelhos ou azuis.

Instruções de uso

Os comandos de referência para controlar os LEDs são os seguintes:

#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

O efeito de controle do LED é mostrado na figura abaixo:

USB

A placa carrier Mini J501 está equipada com uma variedade de portas USB, incluindo 2 portas USB 3.2 Type-A (10Gbps), uma porta USB 3.0 Type-C e uma porta USB 2.0 Type-C para modo dispositivo/depuração, oferecendo opções de conectividade versáteis.

Teste de velocidade USB-A

Crie um script para testar a velocidade do dispositivo USB:

sudo vim test_usb

Cole o seguinte conteúdo:

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

Torne o script executável e teste:

sudo chmod +x test_usb
./test_usb

Porta USB 2.0 Type-C

Usando esta porta serial, por meio do cabo de dados USB-C, você pode monitorar as informações de depuração de entrada e saída no PC.

No seu PC (não o Jetson), instale uma ferramenta de login de porta serial e faça login em /dev/ttyUSB0 (também pode ser ttyUSB1, 2):

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

Você pode então controlar o terminal do Jetson via porta serial em outro host Linux, como mostrado abaixo:

Ventoinha

O reComputer Jetson Mini J501 está equipado com:

  • 1x conector de ventoinha de 4 pinos (12V PWM): Compatível com ventoinhas PWM de 12V padrão, também suporta controle preciso de velocidade, sendo ideal para requisitos de refrigeração de alto desempenho.

Conexão de hardware

O Mini J501 fornece um conector padrão de 4 pinos para a ventoinha.

O esquema do datasheet da Ventoinha é mostrado abaixo:

As definições de pinos para J1 são as seguintes:

nota

Para mais informações, verifique aqui.

Instruções de uso

Crie um script para definir a velocidade da ventoinha:

cat test_fanSpeedSet

Cole o seguinte conteúdo:

#!/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

Além disso, podemos definir manualmente a velocidade da ventoinha usando a ferramenta jtop.

CAN

CAN (Controller Area Network) é um padrão robusto de barramento veicular que permite que microcontroladores e dispositivos se comuniquem entre si sem um computador host.

O Mini J501 fornece duas interfaces CAN integradas no conector JST de 4 pinos (GH1.25). Além disso, ambas as interfaces CAN suportam CAN-FD, com CAN0 e CAN1 mostradas abaixo:

As definições de pinagem para CAN0 e CAN1 são semelhantes, e o diagrama da interface é mostrado abaixo:

CAN0 corresponde a J6, e as definições dos pinos são as seguintes:

CAN1 corresponde a J7, e as definições dos pinos são as seguintes:

Comunicação CAN

Esta seção conecta CAN0 e CAN1 no Jetson para demonstrar como enviar e receber dados entre CAN0 e CAN1 no Classic CAN mode e no CAN-FD mode.

Os resistores de terminação para CAN0 e CAN1 podem ser controlados por meio de dois pinos: PAA.04, localizado em gpiochip1 linha 4, e PAA.07, localizado em gpiochip1 linha 7.

O controle do resistor de terminação segue estas regras:

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**.

Insira o seguinte comando para visualizar os pinos no gpiochip 1:

gpioinfo gpiochip1

Consulte os seguintes comandos para definir PAA.04 e PAA.07 como 0:

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

Consulte os seguintes comandos para definir PAA.04 e PAA.07 como 1:

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

Modo Classic CAN

Crie test_can.sh para testar a transmissão e recepção de dados entre CAN0 e CAN1 no modo padrão:

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

O código do script para test_can.sh é o seguinte:

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

A transmissão e recepção de dados entre CAN0 e CAN1 será concluída:

Modo CAN-FD

No datasheet, você pode encontrar o diagrama de fiação para a interface CAN0/CAN1, conforme mostrado abaixo:

Crie test_canfd.sh para testar a transmissão e recepção de dados entre CAN0 e CAN1 no modo CAN-FD:

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

O código do script para test_canfdfd.sh é o seguinte:

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

A transmissão e recepção de dados entre CAN0 e CAN1 será concluída:

GPI && GPO

GPI

O Mini J501 fornece um conector JST padrão de 6 pinos para GPI.

O esquema do datasheet do GPI é mostrado abaixo:

As definições de pinos para J12 são as seguintes:

Habilite GPI 1 a GPI 4 para leitura do status de entrada:

sudo gpioset --mode=wait 0 131=0

Para ler a entrada de GPI 1 a GPI 4, consulte os seguintes 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

Quando um nível alto for lido, retornará 1; quando um nível baixo for lido, retornará 0.

GPO

O Mini J501 fornece um conector JST padrão de 6 pinos para GPO.

O esquema do datasheet do GPO é mostrado abaixo:

As definições de pinos para J14 são as seguintes:

Habilite GPO 1 a GPO 4 para status de saída:

sudo gpioset --mode=wait 0 79=1

Para definir a saída de GPO 1 a GPO 4, consulte os seguintes 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

O Mini J501 fornece um conector JST padrão de 6 pinos para comunicação serial UART. UART e GPO usam a mesma interface JST. Esta interface é, por padrão, configurada para a funcionalidade de GPO. Se você precisar alternar para a funcionalidade UART, deverá apontar para uma nova árvore de dispositivo e reiniciar o dispositivo para que a alteração tenha efeito.

Para comunicação UART, siga a fiação a seguir. Aqui, usamos a ferramenta USB para TTL como exemplo.

O esquema do datasheet do UART é mostrado abaixo:

As definições de pinos para J14 são as seguintes:

atenção

UART e GPO compartilham a mesma interface física. Por padrão, esta interface funciona como GPO. Se você precisar alternar para UART, consulte o conteúdo desta seção.

Para módulos diferentes, você precisa baixar o arquivo de árvore de dispositivo correspondente.

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

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

Copie a árvore de dispositivo para o caminho especificado:

# 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/

Faça backup e modifique /boot/extlinux/extlinux.conf, adicionando uma linha para apontar para o novo arquivo .dtb:

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

Com base no nome do arquivo da árvore de dispositivo que você está usando, adicione uma linha FDT=/your_path em extlinux.conf. Tomando o AGX Orin 32G como exemplo:

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

O conector JST de 6 pinos UART é mapeado para /dev/ttyTHS1 no Jetson. Você pode usar minicom para visualizar a transmissão e recepção de dados da porta serial:

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

RS485

A interface RS485 fornece um canal de comunicação diferencial robusto e resistente a ruídos, comumente usado em ambientes industriais. Ela suporta comunicação serial multidrop de longa distância e é ideal para conectar sensores, controladores de motor, CLPs e outros dispositivos industriais.

Conexão de hardware

O Mini J501 fornece um conector JST de 4 pinos (GH 1.25) para RS485.

O esquema do datasheet de RS485 é mostrado abaixo:

As definições de pinos para J8 são as seguintes:

Instruções de uso

Consulte os seguintes comandos para habilitar a interface RS485:

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

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

A interface RS485 é mapeada para /dev/ttyTHS4 no Jetson. Você pode usar cutecom para testar a transmissão e recepção de dados seriais com um PC:

sudo apt install cutecom
sudo cutecom

Selecione /dev/ttyTHS4, defina tanto o Jetson quanto o PC para uma taxa de baud de 9600 e conecte o Jetson e o PC por meio de um módulo RS485 para USB. O efeito da transmissão e recepção de dados seriais é mostrado na figura abaixo:

Jetson sidePC side

I2S

A interface I2S fornece um barramento de comunicação de áudio digital projetado para transmitir dados de áudio estéreo entre dispositivos. O Mini J501 suporta sinalização I2S padrão, permitindo entrada e saída de áudio de alta qualidade e baixa latência para aplicações como interação por voz, localização de som e processamento de áudio em tempo real.

Conexão de hardware

O Mini J501 fornece 1 conector JST de 5 pinos (GH 1.25) para I2S.

O esquema do datasheet de I2S é mostrado abaixo:

As definições de pinos para J9 são as seguintes:

Instruções de uso

Para habilitar I2S, você precisa configurá-lo em jetson-io.py. Execute o seguinte no terminal:

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

Em seguida, consulte os quatro passos abaixo para habilitar a interface I2S:

  • passo 1: Selecione a opção Jetson 40-pin header
  • passo 2: Selecione Configure header pins manually
  • passo 3: Selecione i2s2; após a seleção, ele será marcado com [*]
  • passo 4: Salve as configurações e reinicie o Jetson
Step 1
Step 1
Step 3
Step 3
Step 2
Step 2
Step 4
Step 4

Após habilitar I2S, esta seção demonstra como usar I2S para acionar um alto-falante de dois canais. Primeiro, insira o seguinte no terminal:

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

Se você estiver usando um microfone:

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

Consulte o comando abaixo para acionar o alto-falante, onde -c deve ser alterado para o número de canais de alto-falante que você está usando:

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

Você pode ver a saída no terminal quando o alto-falante é acionado normalmente, como mostrado na figura abaixo.

RTC

O Mini J501 fornece um conector padrão de 2 pinos para RTC (3V).

O esquema do datasheet de RTC é mostrado abaixo:

As definições de pinos para J15 são as seguintes:

Depois de conectar a bateria externa, você pode verificar o status de operação de rtc0 (RTC principal, correspondente à bateria onboard) no terminal:

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

Porta de extensão - GMSL

A placa carrier Mini J501 possui um conector de expansão de câmera para placa de extensão GMSL. Ela pode conectar e operar simultaneamente quatro câmeras GMSL ao mesmo tempo.

Conexão de hardware

A seguir estão os slots de conexão da placa de expansão de câmera GMSL da placa carrier Mini J501 (você precisa preparar uma placa de extensão com antecedência):

A seguir estão os modelos de câmeras GMSL que já suportamos:

Instruções de uso

nota

Antes de habilitar a funcionalidade GMSL, certifique-se de que você instalou uma versão do JetPack com o driver da placa de expansão GMSL.

Configurar o arquivo Jetson IO

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

Existem três arquivos de overlay no total, a saber Seeed GMSL 1X4 3G, Seeed GMSL 1X4 6G, Seeed GMSL 1X4 e Orbbec Gemini 335Lg. Estes correspondem, respectivamente, à câmera 3G do SG3S, à câmera 6G do SG2 e SG8S e à câmera da Orbbec. Como mostrado na Figura 3, configure o arquivo io de acordo com o modelo da sua câmera.

passo 2. Instale as ferramentas de configuração da interface de vídeo.

sudo apt update
sudo apt install v4l-utils

Usar as câmeras da Série SGxxx

passo 1. Defina o formato do canal para o serializador e o desserializador. O número da interface na figura corresponde ao número do serializador/desserializador.

  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]'

nota

ser_0_ch_0 é o primeiro canal do decodificador, des_ch_0 é o serializador na primeira câmera, e o mesmo se aplica aos outros. Se a câmera conectada tiver uma resolução diferente, então a configuração aqui será baseada no formato real da câmera. Precisamos definir o formato do canal para o serializador e o desserializador toda vez que o dispositivo for reiniciado.

passo 2. Defina a resolução da câmera.

info

Aqui demonstramos como configurar câmeras de diferentes modelos e resoluções.

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
nota

--set-fmt-video segue a resolução que é selecionada com base na câmera conectada. O sensor_mode também é escolhido de acordo. Atualmente, há três opções de sensor_mode, cada uma correspondendo a uma resolução diferente.

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

passo 3. Inicie a câmera.

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

Exibição

O Mini J501 está equipado com uma porta HDMI para saída de exibição em alta resolução.

Recursos

Suporte Técnico & Discussão de Produto

Obrigado por escolher nossos produtos! Estamos aqui para fornecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

Loading Comments...