Raspberry Pi3 でシリアルコンソールを使おうとすると、bps をどのように設定しても速度が合わず、文字化けの嵐になります。
[Raspberry Pi 3 UART baud rate workaround]
(https://frillip.com/raspberry-pi-3-uart-baud-rate-workaround/) で詳しい解説がされているので、詳細はこちらを読んでもらえればよいのですが、結論から述べると、config.txt
に
core_freq=250
を追加することで、問題は解消します。
[Raspberry Pi 3 UART baud rate workaround]
(https://frillip.com/raspberry-pi-3-uart-baud-rate-workaround/) に書かれていることの要旨だけ挙げておきます。
Raspberry Pi 3 になって、Bluetooth のサポートのために、GPIO の UART の割り当てが変更され、uart1 を使うようになった。
uart0 は Bluetooth が使うようになっている。
uart0 はコアクロックに影響されないが、uart1 の速度はコアクロックに依存する。
コアクロックが変わるとシリアルの通信速度も変わる。
回避策として、コアクロックを 250MHz に設定する、つまり/boot/config.txt
でcore_freq=250
を指定することで、適切な速度が設定される。