🦁
Raspberry Pi 3/4 の UART に Ubuntu から Raspberry Pi Debug Probe で接続する
Background
Raspberry Pi Debug Probe は UART と Arm SWD に使える便利なケーブル。
- https://www.raspberrypi.com/documentation/microcontrollers/debug-probe.html
- https://akizukidenshi.com/catalog/g/g117971/
Raspberry Pi 5 以降には専用の UART コネクタが存在しているので専用のケーブルで接続できる。
しかし、 Raspberry Pi 3/4 (およびそれより前) にはその端子がないのでピンヘッダに接続する必要がある。この記事ではその方法について記載する。
Raspberry Pi 側の設定
Raspberry Pi の microSD カードを PC などでマウントし、 /boots/config.txt
に enable_uart=1
を追記する。
ケーブル接続
Raspberry Pi Debug Probe の "U" (UART) 側に先が3本のメスピンのケーブルを接続し、
- 黒のケーブル (GND) を Raspberry Pi の 8 pin (GND) に接続
- 黄のケーブル (RX) を Raspberry Pi の 10 pin (TX) に接続
- オレンジのケーブル (TX) を Raspberry Pi の 12 pin (RX) に接続する
PC と Raspberry Pi Debug Probe を microUSB ケーブルを接続する。 このとき赤色の LED が点灯することを確認すること。 筆者のケーブルが悪いのか、接触が悪いことがあるため。
Ubuntu の設定
Ubuntu 24.04 では Raspberry Pi Debug Probe は /dev/ttyACM0
として認識された。
$ ls -al /dev
...
crw-rw---- 1 root dialout 166, 0 May 10 22:34 ttyACM0
...
ここでは cu を使って接続するので cu をインストールし、ユーザを dialout グループに追加する。 (参考: https://zenn.dev/articles/2b55cb533d3ff9/edit)
$ sudo apt install cu
$ sudo adduser $USER dialout
$ groups $USER
tomoki : tomoki adm tty dialout cdrom sudo dip plugdev users lpadmin
cu で Raspberry Pi Debug Probe を開く。このときポートレートは 115200
を選択する。
$ cu -s 115200 -l /dev/ttyACM0
その後 Raspberry Pi に電源を入れたら起動のログが見えるはず。
$ cu -s 115200 -l /dev/ttyACM0
Connected.
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 6.1.61-v8 (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 13.2.0, GNU ld (GNU Binutils) 2.41.0.20231213) #1 SMP PREEMPT Thu Nov 9 14:54:02 UTC 2023
[ 0.000000] random: crng init done
[ 0.000000] Machine model: Raspberry Pi 3 Model B Plus Rev 1.3
[ 0.000000] efi: UEFI not found.
[...
Discussion