Uso das Interfaces
Introdução
A placa carrier reComputer J401 é compatível com NVIDIA Jetson Orin Nano/NX(Orin Nano 4GB/Orin Nano 8GB, Orin NX 8GB/Orin NX 16GB), oferecendo desempenho excepcional e sendo projetada para lidar com facilidade com tarefas exigentes de computação de borda. É a escolha perfeita para desenvolver sistemas de automação industrial, construir aplicações poderosas de IA e muito mais.
Ela possui capacidade de rede equipada com 1x porta Gigabit Ethernet para rede rápida. Também vem com 4x portas USB 3.2 Type-A (10Gbps), 1x porta USB 2.0 Type-C e 1x conector CAN para opções versáteis de conectividade. Esta placa de expansão foi equipada com 1x M.2 Key M 2280 para cartão SSD (inclui SSD NVMe 2280 de 128GB) e 1x slot M.2 Key E para expansão de conectividade sem fio LTE.
Além disso, há vários periféricos suportados na placa. Ela permite que os usuários capturem e exibam conteúdo de vídeo em alta qualidade com 2x MIPI-CSI de 15 pinos e 1x conector HDMI 2.1 para conexão de câmera e display. Também inclui um conector de ventoinha PWM de 5V, um soquete RTC e um conector RTC de 2 pinos.
A placa suporta uma ampla faixa de entrada de 9-19V DC, tornando-a flexível para integração em uma variedade de tarefas de computação. Ela mantém a operação na faixa de temperatura de -10°C a 60°C.
Para mais sugestões de acessórios, consulte a página de bundle do reComputer J401.
SODIMM de 260 pinos
A função principal do SODIMM de 260 pinos é conectar sua placa carrier com NVIDIA Jetson Orin Nano 4GB/NVIDIA Jetson Orin Nano 8GB, NVIDIA Jetson Orin NX 8GB/NVIDIA Jetson Orin NX 16GB.
Visão geral da conexão

Se a conexão estiver correta, quando você conectar o adaptador de energia, verá o indicador de energia acender.
M.2 Key M
M.2 Key M é uma especificação para o layout físico e elétrico de um conector M.2 que suporta transferência de dados em alta velocidade usando a interface PCIe (Peripheral Component Interconnect Express). Conectores M.2 Key M são comumente usados para conectar unidades de estado sólido (SSDs) e outras placas de expansão de alto desempenho a uma placa-mãe ou outro dispositivo host. A designação "Key M" refere-se à configuração específica de pinos e à chave do conector M.2, que determina o tipo de dispositivos que podem ser conectados a ele.
Os SSDs compatíveis são os seguintes
- SSD Interno NVMe M.2 PCle Gen3x4 2280 de 128GB
- SSD Interno NVMe M.2 PCle Gen3x4 2280 de 256GB
- SSD Interno NVMe M.2 PCle Gen3x4 2280 de 512GB
- SSD Interno NVMe M.2 PCle Gen3x4 2280 de 1TB
- SSD Interno NVMe M.2 PCle Gen3x4 2280 de 2TB
Visão geral da conexão
Se você quiser remover o SSD incluído e instalar um novo, pode seguir as etapas abaixo.

Uso
Vamos explicar como fazer um benchmark simples no SSD conectado.
- Passo 1: Verifique a velocidade de gravação executando o comando abaixo.
sudo dd if=/dev/zero of=/home/nvidia/test bs=1M count=512 conv=fdatasync
- Passo 2: Verifique a velocidade de leitura executando os comandos abaixo. Certifique-se de executar isto depois de executar o comando acima para a velocidade de gravação.
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 é uma especificação para o layout físico e elétrico de um conector M.2 que suporta módulos de comunicação sem fio, como placas Wi-Fi e Bluetooth. A designação "Key E" refere-se à configuração específica de pinos e à chave do conector M.2, que é otimizada para dispositivos de rede sem fio. Conectores M.2 Key E são comumente encontrados em placas-mãe e outros dispositivos que exigem opções de conectividade sem fio. Aqui recomendamos o módulo Intel wifi/bluetooth.
Visão geral da conexão

Uso
Após instalar o módulo wifi/bluetooth, você poderá ver o ícone de wifi/bluetooth no canto superior direito.

Teste de Wi-Fi
ifconfig

Teste 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âmeras CSI
CSI significa Camera Serial Interface. É uma especificação que descreve uma interface de comunicação serial para transferir dados de vídeo de sensores de imagem para um processador host. CSI é comumente usada em dispositivos móveis, câmeras e sistemas embarcados para permitir a transferência rápida e eficiente de dados de imagem e vídeo para processamento e análise.
As câmeras compatíveis são as seguintes
-
Câmeras IMX219
-
Câmeras IMX477
Visão geral da conexão
Aqui os 2 conectores de câmera CSI estão marcados como CAM0 e CAM1. Você pode conectar uma câmera a qualquer um dos 2 conectores ou conectar 2 câmeras a ambos os conectores ao mesmo tempo.

Uso
Abra o terminal (Ctrl+Alt+T) e insira o comando como abaixo:
sudo /opt/nvidia/jetson-io/jetson-io.py

- Method 1
- Method 2
Para a porta CAM0
nvgstcapture-1.0 sensor-id=0
Para a porta CAM1
nvgstcapture-1.0 sensor-id=1
Se você quiser alterar mais configurações da câmera, pode digitar "nvgstcapture-1.0 --help" para acessar todas as opções configuráveis disponíveis.
Para porta 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 porta 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
Se você quiser alterar mais configurações da câmera, pode atualizar os argumentos como width, height, framerate, format, etc.
RTC
RTC significa Relógio de Tempo Real (Real-Time Clock). É um relógio que acompanha a hora e a data atuais de forma independente do relógio principal do sistema. RTCs são comumente usados em computadores, sistemas embarcados e outros dispositivos eletrônicos para manter a cronometragem precisa mesmo quando o dispositivo está desligado. Eles geralmente são alimentados por uma pequena bateria para garantir operação contínua e reter as informações de hora e data durante ciclos de energia.
Visão geral da conexão
- Method 1
- Method 2
Conecte uma bateria tipo moeda CR1220 de 3V ao soquete RTC na placa, como mostrado abaixo. Certifique-se de que a extremidade positiva (+) da bateria esteja voltada para cima.

Conecte uma bateria tipo moeda CR2302 de 3V com conector JST ao soquete JST de 2 pinos 1,25 mm na placa, como mostrado abaixo:

Uso
-
Passo 1: Conecte uma bateria RTC conforme mencionado acima.
-
Passo 2: Ligue o reComputer Industrial.
-
Passo 3: No Ubuntu Desktop, clique no menu suspenso no canto superior direito, navegue até
Settings > Date & Time, conecte-se a uma rede via cabo Ethernet e selecione Automatic Date & Time para obter a data/hora automaticamente.

Se você não tiver se conectado à internet via Ethernet, pode definir a data/hora manualmente aqui.
- Passo 4: Abra uma janela de terminal e execute o comando abaixo para verificar a hora do relógio de hardware.
sudo hwclock
Você verá uma saída semelhante à abaixo, que não é a data/hora correta.

- Passo 5: Altere a hora do relógio de hardware para a hora atual do relógio do sistema inserindo o comando abaixo.
sudo hwclock --systohc
- Passo 6: Remova quaisquer cabos Ethernet conectados para garantir que ele não obtenha a hora da internet e reinicie a placa.
sudo reboot
-
Passo 7: Verifique a hora do relógio de hardware para confirmar que a data/hora permanece a mesma mesmo que o dispositivo tenha sido desligado.
-
Passo 8: Crie um novo script shell usando qualquer editor de texto de sua preferência. Aqui usamos o editor de texto vi.
sudo vi /usr/bin/hwtosys.sh
- Passo 9: Entre no modo de inserção pressionando i, copie e cole o seguinte conteúdo dentro do arquivo.
#!/bin/bash
sudo hwclock --hctosys
- Passo 10: Torne o script executável.
sudo chmod +x /usr/bin/hwtosys.sh
- Passo 11: Crie um arquivo systemd.
sudo nano /lib/systemd/system/hwtosys.service
- Passo 12: Adicione o seguinte dentro do arquivo.
[Unit]
Description=Change system clock from hardware clock
[Service]
ExecStart=/usr/bin/hwtosys.sh
[Install]
WantedBy=multi-user.target
- Passo 13: Recarregue o daemon do systemctl.
sudo systemctl daemon-reload
- Passo 14: Habilite o serviço recém-criado para iniciar na inicialização e inicie o serviço.
sudo systemctl enable hwtosys.service
sudo systemctl start hwtosys.service
- Passo 15: Verifique se o script está em execução como um serviço systemd.
sudo systemctl status hwtosys.service
- Passo 16: Reinicie a placa e você verá que o relógio do sistema agora está sincronizado com o relógio de hardware.
Controle de ventoinha
nvfancontrol é um daemon em espaço de usuário para controle de velocidade da ventoinha. Ele gerencia a velocidade da ventoinha com base na tabela de mapeamento temperatura-para-velocidade da ventoinha no arquivo de configuração do nvfancontrol.
Existem alguns elementos básicos no serviço nvfancontrol, incluindo Tmargin, kickstart PWM, perfil de ventoinha, controle de ventoinha e governador de ventoinha. Todos eles podem ser programados por meio do arquivo de configuração com base nas preferências do usuário. Este capítulo explicará cada um deles nas seções a seguir.
Se você quiser alterar nvfancontrol.conf, certifique-se de ter lido isso
Uso
- Method 1
- Method 2
- Passo 1: Pare o serviço systemd nvfancontrol.
sudo systemctl stop nvfancontrol
- Passo 2: Altere nvfancontrol.conf.
vi /etc/nvfancontrol.conf
Depois de alterar nvfancontrol.conf, digite Ese e :q para sair
- Passo 3: Remova o arquivo de status.
sudo rm /var/lib/nvfancontrol/status
- Passo 4: Reinicie o serviço systemd nvfancontrol.
sudo systemctl restart nvfancontrol
- Passo 1: Entre no modo root.
sudo -i
- Passo 2: Pare o serviço systemd nvfancontrol.
sudo systemctl stop nvfancontrol
- Passo 3: Altere o valor de PWM.
echo 100 > /sys/devices/platform/pwm-fan/hwmon/hwmon3/pwm1
Quanto maior o valor, mais rápida a velocidade da ventoinha. O valor de PWM deve estar entre 0 e 255, talvez hwmon3 não seja o seu caminho, então verifique o seu próprio caminho
- Passo 4: Verifique o rpm.
cat /sys/class/hwmon/hwmon0/rpm
GPIO
Os detalhes do conector de 40 pinos são mostrados abaixo:
| Pino do Header | Nome do Pino do Módulo | Pino do Módulo | Nome do Pino do SoC | Uso Padrão | Funcionalidade Alternativa |
|---|---|---|---|---|---|
| 1 | - | - | - | Alimentação principal 3,3V | - |
| 2 | - | - | - | Alimentação principal 5,0V | - |
| 3 | I2C1_SDA | 191 | DP_AUX_CH3_N | Dados I2C nº 1 | - |
| 4 | - | - | - | Alimentação principal 5,0V | - |
| 5 | I2C1_SCL | 189 | DP_AUX_CH3_P | Clock I2C nº 1 | - |
| 6 | - | - | - | Terra | - |
| 7 | GPIO09 | 211 | AUD_MCLK | GPIO | Clock Mestre de Áudio |
| 8 | UART1_TXD | 203 | UART1_TX | Transmissão UART nº 1 | GPIO |
| 9 | - | - | - | Terra | - |
| 10 | UART1_RXD | 205 | UART1_RX | Recepção UART nº 1 | GPIO |
| 11 | UART1_RTS* | 207 | UART1_RTS | GPIO | UART nº 2 Request to Send |
| 12 | I2S0_SCLK | 199 | DAP5_SCLK | GPIO | Clock de Áudio I2S nº 0 |
| 13 | SPI1_SCK | 106 | SPI3_SCK | GPIO | Clock de Deslocamento SPI nº 1 |
| 14 | - | - | - | Terra | - |
| 15 | GPIO12 | 218 | TOUCH_CLK | GPIO | - |
| 16 | SPI1_CSI1* | 112 | SPI3_CS1 | GPIO | Chip Select nº 1 do SPI nº 1 |
| 17 | - | - | - | GPIO | - |
| 18 | SPI1_CSI0* | 110 | SPI3_CS0 | GPIO | Chip Select nº 0 do SPI nº 0 |
| 19 | SPI0_MOSI | 89 | SPI1_MOSI | GPIO | SPI nº 0 Master Out/Slave In |
| 20 | - | - | - | Terra | - |
| 21 | SPI0_MISO | 93 | SPI1_MISO | GPIO | SPI nº 0 Master In/Slave Out |
| 22 | SPI1_MISO | 108 | SPI3_MISO | GPIO | SPI nº 1 Master In/Slave Out |
| 23 | SPI0_SCK | 91 | SPI1_SCK | GPIO | Clock de Deslocamento SPI nº 0 |
| 24 | SPI0_CS0* | 95 | SPI1_CS0 | GPIO | SPI nº 0 Chip Select nº 0 |
| 25 | - | - | - | Terra | - |
| 26 | SPI0_CS1* | 97 | SPI1_CS1 | GPIO | SPI nº 0 Chip Select nº 1 |
| 27 | I2C0_SDA | 187 | GEN2_I2C_SDA | I2C nº 0 Dados | GPIO |
| 28 | I2C0_SCL | 185 | GEN2_I2C_SCL | I2C nº 0 Clock | GPIO |
| 29 | GPIO01 | 118 | SOC_GPIO41 | GPIO | Clock de uso geral nº 0 |
| 30 | - | - | - | Terra | - |
| 31 | GPIO11 | 216 | SOC_GPIO42 | GPIO | Clock de uso geral nº 1 |
| 32 | GPIO07 | 206 | SOC_GPIO44 | GPIO | PWM |
| 33 | GPIO13 | 228 | SOC_GPIO54 | GPIO | PWM |
| 34 | - | - | - | Terra | - |
| 35 | I2S0_FS | 197 | DAP5_FS | GPIO | Áudio I2S nº 0 Field Select |
| 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 | Áudio I2S nº 0 Dados de entrada |
| 39 | - | - | - | Terra | - |
| 40 | I2S0_DOUT | 193 | DAP5_DOUT | GPIO | Áudio I2S nº 0 Dados de saída |
UART
UART significa Universal Asynchronous Receiver/Transmitter. É um protocolo de comunicação usado para comunicação serial entre dois dispositivos. A comunicação UART envolve dois pinos: um para transmitir dados (TX) e um para receber dados (RX). É assíncrona, o que significa que os dados são transmitidos sem um sinal de clock compartilhado entre os dispositivos. UART é comumente usado em várias aplicações, como microcontroladores, sensores e comunicação entre diferentes dispositivos eletrônicos.
Visão geral da conexão
A interface UART está usando o pino abaixo, ou você pode usar outra interface UART no J401:
| Pino do header | Nome do pino do módulo | Pino do módulo | Nome do pino do SoC | Uso padrão | Funcionalidade alternativa |
|---|---|---|---|---|---|
| 6 | - | - | - | Terra | - |
| 8 | UART1_TXD | 203 | UART1_TX | UART nº 1 Transmitir | GPIO |
| 10 | UART1_RXD | 205 | UART1_RX | UART nº 1 Receber | GPIO |
Conecte o J401 com TTL com UART como abaixo:
| Pino do header J401 | Uso | USB traduz para TTL | Uso |
|---|---|---|---|
| 6 | Terra | GND | Terra |
| 8 | UART1_TXD | U_RX | UART_RX |
| 10 | UART1_RXD | U_TX | UART_TX |

Uso
- Passo 1: Instale o PuTTy no seu laptop com Windows e configure o PuTTy como abaixo:

- Passo 2: Instale o PuTTy no Jetson, abra o seu terminal (ALT+Ctrl+T) e digite o seguinte comando.
sudo apt install putty
- Passo 3: Use o PuTTy no Windows para enviar 'hello linux' para o Jetson, e use o PuTTy no Jetson para enviar 'hello windows' para o Windows.
Certifique-se de que o seu baudrate foi definido para 115200.
O resultado é o seguinte:

I2C
I2C significa Inter-Integrated Circuit. É um protocolo de comunicação serial amplamente utilizado que permite a comunicação entre vários circuitos integrados em um sistema. I2C usa duas linhas bidirecionais: uma para dados (SDA) e uma para clock (SCL). Os dispositivos conectados em um barramento I2C podem atuar como mestre ou escravo, permitindo que vários dispositivos se comuniquem entre si. I2C é popular por sua simplicidade, flexibilidade e capacidade de conectar uma variedade de dispositivos, como sensores, chips de memória e outros periféricos em sistemas embarcados e dispositivos eletrônicos.
Visão geral da conexão
A interface I2C está usando o pino abaixo, ou você pode usar outra interface I2C no J401:
| Pino do header | Nome do pino do módulo | Pino do módulo | Nome do pino do SoC | Uso padrão | Funcionalidade alternativa |
|---|---|---|---|---|---|
| 2 | - | - | - | Fonte principal de 5,0 V | - |
| 3 | I2C1_SDA | 191 | DP_AUX_CH3_N | I2C nº 1 Dados | - |
| 5 | I2C1_SCL | 189 | DP_AUX_CH3_P | I2C nº 1 Clock | - |
| 6 | - | - | - | Terra | - |
Conecte o J401 ao Grove-3-Axis Digital Accelerometer com I2C como abaixo:
| J401 | Uso | Grove-3-Axis Digital Accelerometer | Uso |
|---|---|---|---|
| 2 | Fonte de 5 V | Vcc | - |
| 3 | I2C1_SDA | SDA | I2C_SDA |
| 5 | I2C1_SCL | SCL | I2C_SCL |
| 6 | Terra | GND | Terra |

Teste
Abra o seu terminal (ALT+Ctrl+T) e digite o seguinte comando:
i2cdetect -y -r 7
Seu canal pode ser diferente do meu no comando: i2cdetect -y -r x.
Você verá o resultado abaixo, antes de conectar ao I2C, nenhum dispositivo I2C foi detectado no canal 7, mas depois um dispositivo I2C com o endereço 0x19 foi detectado.:

Se você quiser usar pinos IO gerais para controle lógico, consulte este wiki.
CAN
A série reComputer J401 fornece uma interface CAN onde o sinal CAN é enviado diretamente do SOM em níveis TTL/CMOS, que é um sinal diferencial não padrão exigindo um transceptor CAN externo para se conectar a um barramento CAN padrão; ela suporta formatos de quadro CAN FD, permitindo comprimento de dados estendido e taxas de dados mais altas, tornando-a adequada para automação industrial, robótica, prototipagem automotiva e outras aplicações que exigem comunicação confiável e em tempo real.
Visão geral da conexão

Uso
Passo 1. Configurar e abrir can0:
sudo ip link set can0 down
sudo ip link set can0 type can bitrate 500000
sudo ip link set can0 up
Passo 2. Teste de comunicação. Abra um terminal para receber sinais.
candump can0
Passo 3. Abra outro terminal para enviar o sinal.
cansend can0 123#abcdabcd

CAN FD
Passo 1. Configurar e 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

Passo 2. Abra outro terminal para enviar o sinal.
cansend can0 123#1122334455667788

Suporte Técnico e Discussão de Produtos
Obrigado por escolher nossos produtos! Estamos aqui para oferecer 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.