コンソールアクセス(シリアル接続)
ここではコンソールケーブルを使って、Rock4c+にアクセスする方法を紹介する。
シリアル(UART)通信とは
送信と受信の2本の信号線でデータを送受信する。
具体的には、
PC側の送信(Tx)とRock4c+の受信(Rx)をつないで、PCからRock4c+へ信号を送信し、
PC側の受信(Rx)はRock4c+の送信(Tx)をつないで、Rock4c+からの信号をPCで受信する。
また、この通信方式は同期をとる信号を持たないため、あらかじめデータを送受信する際のスピード(ボーレート)をお互いに合わせておく必要がある。
UARTについてのわかりやすい説明として以下のサイトのリンクを貼っておく。
UARTとは?通信の仕組みを解説 – ensatellite
https://ensatellite.com/ja/uart/
Radxa wiki
シリアルコンソール接続について、Radxaのwikiに説明が掲載されている。
Rockpi4/dev/serial-console - Radxa Wiki
https://wiki.radxa.com/Rockpi4/dev/serial-console
この記事を参考にしながらシリアルコンソール接続を実践していく。
コンソールケーブルの選定
Rock4c+との通信に使うコンソールケーブルの選定には注意が必要である。なぜならRock4c+は通信スピード(ボーレート)の要求が高く、1,500,000bpsのスピードが必要になる。(通常は9,600bpsや115,200bpsが一般的)
そのため、このスピードで安定した性能を発揮できるChipが搭載されている物でないと、手順通りに接続しているはずなのに、うまくいかないということが起こる。
Radxaのwikiにもコンソールケーブルについては以下のように注意書きがあり、FT232RLを使って説明している。
・The default baudrate of ROCK Pi 4 is 1500000(1.5Mbps), please check if your USB to TTL cable support 1.5Mbps baudrate. Some model of CP210X and PL2303x have baudrate limitation, please check the specified model. We also tested that some cheap PL2303x based cable does not work well. Make sure choose a high quality one. The instructions below use a FT232RL based cable.
私も、Radxaのページをよく読まずに安いという理由で異なるChipのものを2本も買って、全然うまくいかなかった。
参考で私がうまく接続できたコンソールケーブルを紹介しておく。
DSD TECH SH-U09C USB - TTLシリアルアダプター + FTDI FT232RLチップ
minicomの設定
Radxa wikiではLinuxの場合、minicomを使った手順が記載されている。私の使用するPCはLinux環境であるため、ここではminicomを使って接続してみる。
minicomついての説明については以下のサイトを参照されたい。
Minicom - Community Help Wiki
https://help.ubuntu.com/community/Minicom
Junya Nakada – minicom を試す
https://junyanakada.com/try-minicom.html
まず、PCにminicomをインストールする。Radxa wikiに記載の通り、aptコマンドでインストールする。
$ sudo apt update
$ sudo apt install minicom
上記コマンドを実行すればインストールは完了する。
minicomインストール後、Radxa wikiでは以下のような設定を記載しているが、
1つ目は、どうやら一般ユーザでminicomを実行する場合に必要な設定のようである。しかし、私の環境ではコンソールケーブルのUSBは管理者権限が必要なため、minicomも管理者権限で実行する。そのため上記コマンドは実行しない。
2つ目の設定に関しても、上記のパラメータを指定せずに実行してみたが、私の端末では問題なく動作した。そのためこの作業も行わない。(使用するPCによってはパラメータの指定が必要になるかもしれない。)
次にRock4c+用のminicom設定ファイルを作成する。
まず、以下のコマンドで、管理者(root)権限を取得する。
$ sudo su -
rootユーザに代わるとカレントディレクトリが/rootディレクトリになる。このrootディレクトリに、”.minirc.rockpi4”という名前でファイルを作成し、viコマンドで以下の情報を入力する。
pu port /dev/ttyUSB0
pu baudrate 1500000
pu bits 8
pu parity N
pu stopbits 1
pu rtscts No
設定項目とその値の間には半角スペースを入れている。
Rock4c+用のminicom設定ファイルを作成後の/rootディレクトリは上のようになる。".minirc.rockpi4"というファイルが存在し、ファイルの中身は入力した設定項目が記録されている。
正しく設定ができていれば一度、PCを再起動しておく。
シリアルアダプターの接続
シリアルアダプターに付属されているケーブルの接続を行う。
このシリアルアダプターは出力する電圧を選ぶことができる。今回は3.3V出力にしたいので、上の写真のようにVCCと3V3をジャンパスイッチで接続する。
次にシリアルアダプターと付属のケーブルを接続する。物理的にはどちらの向きでもさすことができるが、上の写真のようにVCCと記載されているPinに赤色のケーブルがささるようにする。
すると、シリアルアダプターのGNDは黒色、TXDは青色、RXDは緑色になる。
最後にRock4c+とケーブルを接続する。
Radxaのwikiに記載されているように、Rock4c+はGNDがpin6、TXがpin8、RXがpin10なので上の写真のように、
- 黒色をpin6
- 緑色をpin8
- 青色をpin10
に接続する。
minicom接続
minicomの設定とシリアルアダプターの接続が完了すれば、PCからRock4cへコンソールアクセスしてみる。
まず、上の図のようにシリアルアダプターのUSBとPCはまだ接続していない状態で、Rock4c+に電源をいれ、青色LEDが点滅するまで待つ。(Rock4c+の通電前にシリアルアダプターをPCにつないでしまうと、Rock4c+の電源を入れてもbootがうまくいかず、Rock4c+が起動しない。)
青色LEDが点滅すれば、シリアルアダプターのUSBをPCに接続する。
接続すると、シリアルアダプターLEDが点灯する。点灯を確認後、PCに以下のコマンドを実行する。
$ sudo minicom rockpi4
実行すると、上のような画面が表示されるので、一度Enterを入力する。
すると、ログインIDとパスワードを求められるので入力する。
ログインに成功すれば、いつものRock4c+の画面が表示される。
minicomの終了方法
minicomを終了したい時は、ctrl + aを入力後、zキーを入力する。
すると、上のような画面が表示されるので、xキー(リセットして終了)を実行。Minicomを終了しますか?と聞いてくるので、「はい」を選択すると終了する。