reComputer Mini ハードウェアとインターフェースの使用方法

このwikiでは、reComputer mini J40シリーズの様々なハードウェアとインターフェース、およびそれらを使用してプロジェクトのアイデアを拡張する方法について紹介します。
ハードウェアインターフェース概要

電源
reComputer Miniには**12-54V (XT30)**電源インターフェースが搭載されており、幅広い電圧入力範囲(12Vから54V)に対応しているため、様々な電源供給環境に適しています。

ディスプレイ
この製品には、Host + DP(DisplayPort)機能を備えたType-Cポートが搭載されています。これは、データ転送をサポートするだけでなく、このポートを介してモニターを接続し、高品質なビデオ出力を可能にします。

WIFI とBluetoothのためのM.2 Key E
reComputer MiniにはM.2 Key Eインターフェースが搭載されており、これを通じてデバイスのBluetoothとWi-Fi機能を拡張できます。
Intel Dual Band RTL8822CE Wireless NICの使用を推奨します。
ハードウェア接続

使用方法
Wi-Fiモジュールを取り付けてデバイスの電源を入れた後、デバイスのWi-FiとBluetoothの設定を構成できます。

もちろん、以下のコマンドを使用してデバイスの動作状態を確認することもできます。
ifconfig

bluetoothctl

M.2 Key M for SSD
M.2 Key Mは高速ソリッドステートドライブ(SSD)用に設計されたインターフェースで、超高速データ転送速度を提供し、高性能アプリケーションに最適です。
reComputer Industrialには、x4 PCIe Gen3のM.2 Key Mスロットに接続された128GBの産業グレードSSDが標準で含まれており、JetPackシステムがプリインストールされています。
ハードウェア接続
付属のSSDを取り外して新しいものを取り付けたい場合は、お使いのSSDが以下の2つの条件を満たしていることを確認する必要があります:
- x4 PCIe Gen3のM.2 Key Mスロットインターフェースをサポートしている。
- 2242サイズ仕様に準拠している。

使用方法
Jetsonデバイスでターミナルを開き、以下のコマンドを入力してSSDの読み書き速度をテストします。
sudo dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fdatasync

テスト完了後、sudo rm tempfile
コマンドを実行してキャッシュファイルを削除してください。
Ethernet
ハードウェア接続
reComputer Miniは拡張ボード上に**RJ45ギガビットEthernetポート(10/100/1000M)**を搭載しています。

使用方法
ターミナルでifconfig
と入力すると、Ethernetインターフェースにマッピングされたデバイス名がeth0
であることが確認できます:

ギガビットEthernet RJ45ケーブルを使用してreComputer MiniをPCに接続します。iperf
ツールを使用して、Ethernetインターフェースの伝送速度を簡単にテストできます。
ターミナルを開き、PCとreComputer Miniの両方にiperf3
をインストールします。
sudo apt update
sudo apt install iperf3
PCでターミナルを開き、iperf3 -s
と入力します。

次に、reComputer Miniでターミナルを開き、iperf3 -c <あなたのPCのIP>
と入力します。
この場合、私のPCのネットワークインターフェースのIPアドレスは192.168.12.211
です。コマンド例は以下の通りです:
iperf3 -c 192.168.12.211
次に、下図に示す結果に基づいて、reComputer MiniのEthernet伝送速度がギガビットレベルに達することがわかります。

USB
ハードウェア接続
reComputer Miniキャリアボードには合計4つのUSBポートがあります:USB 3.2 Type-Aポート2つ、フラッシュ用USB 2.0 Micro-Bポート1つ、USB 2.0 GH1.25ポート1つです。そして拡張ボードにはUSB 3.0 Type-Aポート4つがあります。

データシートでは、USB 2.0 5ピンGH-1.25インターフェースの配線図を以下のように確認できます:

USB 3.2/USB 2.0/USB 3.0経由でストレージデバイスをreComputer miniに接続し、USBの読み書き速度をテストするために、以下の手順を参照できます。使用方法では次のステップを表示します。

使用方法
Jetsonターミナルでwatch -n 1 lsusb -tv
を入力してUSBポートを検出できます。USBデバイスが接続されると、そのポートの詳細情報がここに表示されます。

USB 3.2/USB 2.0/USB 3.0経由でストレージデバイスを接続した後、ターミナルで以下のコマンドを入力してストレージデバイスによってマップされたパーティションを表示します:
ls /dev/sd*

/dev/sda1 は、USB経由で接続されたストレージデバイスによってマップされたパーティションです。複数のデバイスが挿入されている場合、異なるマップされたパーティション名を持つ可能性があります。例:/dev/sdb1。
GitHub からテストプログラムをプルして実行し、USBの書き込み速度と読み取り速度を測定します。プログラムは 1GB の一時データを書き込み、その後読み取りを行います。このデータはテスト完了後に削除されます。
sudo ./USBIO
の後のパラメータは、USB経由で接続されたストレージデバイスのマップされたパーティションに依存します。
git clone https://github.com/jjjadand/Mini_USBIO_test.git
cd Mini_USBIO_test/
gcc -o USBIO USB_test.c
sudo ./USBIO /dev/sda1
USB 3.2経由で接続された外付けSSDでの1GBデータ転送の読み書き速度は以下の通りです:

このプログラムは他のUSBインターフェースのテストにも適用できます。
USB Micro-Bインターフェースの使用方法については、詳細なチュートリアルとしてこのwikiを参照してください。
UART
reComputer Miniキャリアボードには、UART1とUART-DEBUGの2つの4ピンGH-1.25 UARTインターフェースがあります。

UART1
ハードウェア接続
データシートでは、UART1 4ピンGH-1.25インターフェースの配線図を以下のように確認できます:

UART1の送信および受信機能をテストおよび監視するには、適切なUART-to-USBモジュール(要件に基づいて)を選択し、データシートの配線図に従って接続し、その後cutecomをインストールします。
一端をUART1の4ピンGH-1.25インターフェースに接続し、もう一端をUSBポートに差し込み、TxがRxに、RxがTxに接続されていることを確認してください。 使用方法の説明では次のステップが表示されます。


使用方法
UART1でシステムが認識するシリアルポート番号は:/dev/ttyTHS1です。ターミナルで以下のコマンドを入力することで確認できます:

UART1のデータ送受信をテストするためにCutecomをインストールします:
sudo apt update
sudo apt install cutecom
2つの異なるターミナルでCutecomを開きます。
sudo cutecom
下図に従ってパラメータを設定してください:一方のターミナルでは、「device」オプションに /dev/ttyTHS1 を選択します。もう一方のターミナルでは、「device」は使用しているUART-to-USBモジュールに基づいて選択する必要があります。「Input」フィールドにメッセージを入力して、データの送受信をテストできます。


UART-DEBUG
ハードウェア接続
データシートでは、以下に示すようにUART-DEBUG 4ピンGH-1.25インターフェースの配線図を確認できます:

UART-DEBUGをテストするには、UART-to-USBモジュールも必要で、下図に示すようにPCに接続する必要があります。


使用方法
ハードウェア接続を完了した後。
まず、PCにシリアルポートログインツールMobaXtermをインストールします。 次に、PCで**「デバイスマネージャー」を開いて、UART-to-USBモジュールによってマップされたCOMポートを確認します。 UART-DEBUGをテストするには、UART-to-USBモジュールも必要で、下図に示すようにPC**に接続する必要があります。

PCでMobaXtermを開き、「Session」をクリックし、次に「Serial」をクリックします。**「デバイスマネージャー」**でマップされたCOMポートに基づいてCOMポートを選択し、ボーレートを115200に設定します。

ユーザー名とパスワードを入力した後、UART-DEBUG経由でreComputer Miniのターミナルにログインします。

RTC
reComputer MiniはRTCインターフェースを搭載しており、システムの電源がオフの場合でも正確な時刻管理を提供します。
JSTコネクタ付きの3V CR2032コイン電池をボード上の2ピン1.25mm JSTソケットに接続します。

FAN
reComputer Miniのオンボードファンインターフェースは、nvfancontrolデーモンによって管理され、Jetsonモジュールの動作状況に基づいてファン速度を適応的に調整します。設定ファイル/etc/nvfancontrol.conf
を通じてデーモンの動作モードを設定できます。
詳細については、こちらをご確認ください。
さらに、jtopツールを使用してファン速度を手動で設定することもできます。
ターミナルで以下のコマンドを入力してjtopをインストールできます。
sudo apt update
sudo apt install python3-pip -y
sudo pip3 install jetson-stats
その後、reComputer Miniを再起動してください:
sudo reboot
jtopをインストールした後、ターミナルで起動できます:
jtop

CAN
reComputer miniは2つのCANインターフェースを搭載し、拡張ボードには4つの外部CANインターフェースがあります。CAN0は2つのXT30コネクタ(2+2)で構成され、CAN1は2つの4ピンGH-1.25コネクタで構成されています。

CAN0/CAN1通信
ハードウェア接続
データシートでは、以下に示すCAN0/CAN1インターフェースの配線図を確認できます:


CAN0とCAN1を使用する前に、底面カバーを取り外し、両方の120Ω終端抵抗をON位置に設定してください。

ここでは、125 kbpsのボーレートでCAN0からCAN1に30秒間連続してデータを送信するデモンストレーションを行います。 まず、下図に示すように、CAN0の信号線をCAN1の信号線に接続します。具体的には、CAN0_HをCAN1_Hに、CAN0_LをCAN1_Lに接続します。


使用方法
ハードウェア接続を完了した後。
ターミナルで以下のコマンドを入力して、CAN0とCAN1にマッピングされたデバイス名を確認します:
ifconfig -a
ここで、can0
は CAN0 インターフェースに対応し、can1
は CAN1 インターフェースに対応します。

ターミナルで can-utils
をインストールします:
sudo apt-get update
sudo apt-get install can-utils
Open a Terminal 1 and enter the following command to monitor the number of bytes of data sent from can0
:
watch -n 1 'ifconfig can0 | grep "TX packets"'
Open a Terminal 2 . Pull the script for testing CAN communication from GitHub and run it:
git clone https://github.com/jjjadand/Mini_CANtest.git
cd Mini_CANtest
sudo ./canTest.sh
2つのターミナルを観察することで、ターミナル1ではCAN0から送信されるバイト数が増加していることがわかります。

ターミナル2では、CAN1がCAN0から受信したデータが印刷されます。

CAN0電源出力
CAN0-PPOWERの出力電圧は、理論的にはreComputer Miniの現在のDC入力電圧と等しくなります。DC入力電圧範囲は12-54V
です。したがって、**CAN0 XT30 (2+2)**の電源出力範囲も12-54V
となります。
DC入力に異なる電圧を供給し、CAN0-PPOWERの出力電圧を測定します。 安定化電源とマルチメーターを使用し、以下の図に従って接続します。

DC入力が26.3V
の場合、マルチメーターで測定したCAN0-POWER出力は26.03V
です。

DC入力が12.6V
の場合、マルチメーターで測定したCAN0-POWER出力は12.48V
です。

上記のテスト結果に基づくと、CAN0-POWERの出力はDC入力に近いことがわかります。 詳細については、回路図を参照してください。
I2C
ハードウェア接続
reComputerの拡張ボードには、2つの4ピンGH-1.25 IICインターフェース、IIC0とIIC1があります。
データシートでは、IIC0/IIC1 4ピンGH-1.25インターフェースの配線図を以下のように確認できます:


テスト用のIICインターフェースデバイスを選択してください。選択はお任せします。ここでは、IICインターフェースセンサーをI2C0/I2C1に接続してテスト目的で使用します。
ここでのテストプロセスでは、IIC0/IIC1に外部接続されたデバイスのアドレスをスキャンします。

使用方法
ハードウェア接続を完了した後。
IICテスト用のツールをインストールする必要があります。デバイスをスキャンする前に、ターミナルで以下を入力してください:
sudo apt update
sudo apt-get install i2c-tools
次に、ターミナルで以下のコマンドを入力して、IICバス上のマップされた名前を表示します。
i2cdetect -l
拡張ボード上の外部インターフェース IIC0-J7 は i2c-1 i2c c240000.i2c
に対応し、外部インターフェース IIC1-J7 は i2c-7 i2c c250000.i2c
に対応します。

外部I2Cデバイスを接続してそのアドレスを設定した後、2つの異なるターミナルを開き、以下のコマンドを入力してI2C0とI2C1でスキャンを実行します:
sudo i2cdetect -y -r 1
sudo i2cdetect -y -r 7


I2C0に接続されたデバイスがアドレス0x15
に設定され、I2C1に接続されたデバイスがアドレス0x19
に設定されていることがわかります。
SPI
ハードウェア接続
reComputerの拡張ボードには、6ピンGH-1.25外部SPIインターフェースが搭載されています。
データシートでは、以下に示すようにSPI 6ピンGH-1.25インターフェースの配線図を確認できます:

外部SPI-to-USBモジュールを使用しない場合は、6ピンGH-1.25 SPIインターフェースを自分で接続してデータの送受信をテストできます。MOSIをMISOに、CS0をSCKに接続します。 配線図は以下の通りです:


使用方法
ハードウェア接続を完了した後。
次に、GitHubからSPIテスト用のコードを取得してコンパイルします:
git clone https://github.com/rm-hull/spidev-test
cd spidev-test
gcc spidev_test.c -o spidev_test
ターミナルで以下のコマンドを入力して、SPIにマッピングされたデバイス名を確認してください。例えば、/dev/spidev0.0
は拡張ボード(J17)のSPI0に対応します。
ls -l /dev/spi*

ターミナルで以下のコマンドを入力して、SPIテスト用のプログラムを実行します:
sudo ./spidev_test -v
拡張ボード(J17)のSPI0で送受信されるデータを観察できます。

リソース
技術サポート & 製品ディスカッション
弊社製品をお選びいただき、ありがとうございます!お客様の製品体験が可能な限りスムーズになるよう、さまざまなサポートを提供いたします。異なる好みやニーズに対応するため、複数のコミュニケーションチャンネルをご用意しています。