Uso das Interfaces do J401B
Introdução

Este wiki apresenta os diversos hardwares e interfaces diferentes no reComputer J401B e como usá‑los para expandir suas ideias de projeto.
Mini-PCIe
O reComputer J401B vem com um conector mini PCIe que oferece suporte a 4G.
Módulo 4G compatível
- LTE Cat 4 EC25-AFXGA
- LTE Cat 4 EC25-EUX
- LTE Cat 4 EC25-AUXGR
- LTE Cat 4 EC25-EFA
- LTE Cat 4 EC25-EMGA
- LTE Cat 4 EC25-JFA
Visão geral da conexão
- Etapa 1. Instale o módulo 4G
- Etapa 2. Conecte as antenas
- Etapa 3. Insira o cartão SIM
Uso
-
Setp1. Abra Mobile Broadband e configure a conexão de rede de acordo com as especificações do cartão SIM 4G.
Settings-->Network-->Mobile Broadband -
Setp2. Abra um navegador para testar se a rede 4G está funcionando corretamente.
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, ao conectar o adaptador de energia você 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 hospedeiro. A designação "Key M" refere‑se à configuração específica dos pinos e à chaveta 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 128GB NVMe M.2 PCle Gen3x4 2280
- SSD interno 256GB NVMe M.2 PCle Gen3x4 2280
- SSD interno 512GB NVMe M.2 PCle Gen3x4 2280
- SSD interno 1TB NVMe M.2 PCle Gen3x4 2280
- SSD interno 2TB NVMe M.2 PCle Gen3x4 2280
Visão geral da conexão
Se você quiser remover o SSD incluído e instalar um novo, pode seguir as etapas abaixo.

Uso
Explicaremos como fazer um teste simples de desempenho no SSD conectado.
- Etapa 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
- Etapa 2: Verifique a velocidade de leitura executando os comandos abaixo. Certifique‑se de executar isto após executar o comando acima para 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 dos pinos e à chaveta 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 hospedeiro. 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 sã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 um comando como abaixo:
sudo /opt/nvidia/jetson-io/jetson-io.py

- Método 1
- Método 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 configurações adicionais da câmera, pode digitar "nvgstcapture-1.0 --help" para acessar todas as opções configuráveis disponíveis.
Para a 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 contagem de tempo precisa mesmo quando o dispositivo está desligado. Eles são frequentemente 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 de 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 de RTC como 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 a uma rede por meio de um cabo Ethernet e selecione Automatic Date & Time para obter automaticamente a data/hora.

Se você não tiver se conectado à internet via Ethernet, poderá definir a data/hora manualmente aqui.
- Passo 4: Abra uma janela de terminal e execute o seguinte comando 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 conteúdo 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, PWM de kickstart, perfil da ventoinha, controle da ventoinha e governor da ventoinha. Todos eles podem ser programados via arquivo de configuração de acordo com as 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 do I2C #1 | - |
| 4 | - | - | - | Alimentação Principal 5,0V | - |
| 5 | I2C1_SCL | 189 | DP_AUX_CH3_P | Clock do I2C #1 | - |
| 6 | - | - | - | Terra | - |
| 7 | GPIO09 | 211 | AUD_MCLK | GPIO | Clock Mestre de Áudio |
| 8 | UART1_TXD | 203 | UART1_TX | Transmissão UART #1 | GPIO |
| 9 | - | - | - | Terra | - |
| 10 | UART1_RXD | 205 | UART1_RX | Recepção UART #1 | GPIO |
| 11 | UART1_RTS* | 207 | UART1_RTS | GPIO | UART #2 Requisição para Enviar |
| 12 | I2S0_SCLK | 199 | DAP5_SCLK | GPIO | Clock de Áudio I2S #0 |
| 13 | SPI1_SCK | 106 | SPI3_SCK | GPIO | Clock de Deslocamento SPI #1 |
| 14 | - | - | - | Terra | - |
| 15 | GPIO12 | 218 | TOUCH_CLK | GPIO | - |
| 16 | SPI1_CSI1* | 112 | SPI3_CS1 | GPIO | SPI #1 Seleção de Chip #1 |
| 17 | - | - | - | GPIO | - |
| 18 | SPI1_CSI0* | 110 | SPI3_CS0 | GPIO | SPI #0 Seleção de Chip #0 |
| 19 | SPI0_MOSI | 89 | SPI1_MOSI | GPIO | SPI #0 Mestre Saída/Escravo Entrada |
| 20 | - | - | - | Terra | - |
| 21 | SPI0_MISO | 93 | SPI1_MISO | GPIO | SPI #0 Mestre Entrada/Escravo Saída |
| 22 | SPI1_MISO | 108 | SPI3_MISO | GPIO | SPI #1 Mestre Entrada/Escravo Saída |
| 23 | SPI0_SCK | 91 | SPI1_SCK | GPIO | Clock de Deslocamento SPI #0 |
| 24 | SPI0_CS0* | 95 | SPI1_CS0 | GPIO | SPI #0 Seleção de Chip #0 |
| 25 | - | - | - | Terra | - |
| 26 | SPI0_CS1* | 97 | SPI1_CS1 | GPIO | SPI #0 Chip Select #1 |
| 27 | I2C0_SDA | 187 | GEN2_I2C_SDA | I2C #0 Dados | GPIO |
| 28 | I2C0_SCL | 185 | GEN2_I2C_SCL | I2C #0 Clock | GPIO |
| 29 | GPIO01 | 118 | SOC_GPIO41 | GPIO | Clock de Uso Geral #0 |
| 30 | - | - | - | Terra | - |
| 31 | GPIO11 | 216 | SOC_GPIO42 | GPIO | Clock de Uso Geral #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 #0 Seleção de Campo |
| 36 | UART1_CTS* | 209 | UART1_CTS | GPIO | UART #1 Clear to Send |
| 37 | SPI1_MOSI | 104 | SPI3_MOSI | GPIO | SPI #1 Master Out/Slave In |
| 38 | I2S0_DIN | 195 | DAP5_DIN | GPIO | Áudio I2S #0 Dados de Entrada |
| 39 | - | - | - | Terra | - |
| 40 | I2S0_DOUT | 193 | DAP5_DOUT | GPIO | Áudio I2S #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íncrono, 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 em 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 #1 Transmitir | GPIO |
| 10 | UART1_RXD | 205 | UART1_RX | UART #1 Receber | GPIO |
Conecte o J401 com TTL com UART como abaixo:
| Pino do Header J401 | Uso | USB traduz 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 como 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 como abaixo, ou você pode usar outra interface I2C em 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 5,0V | - |
| 3 | I2C1_SDA | 191 | DP_AUX_CH3_N | I2C #1 Dados | - |
| 5 | I2C1_SCL | 189 | DP_AUX_CH3_P | I2C #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 5V | 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.
Suporte Técnico & Discussão de Produtos
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.