Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Raspberry Pi3 や Zero Wで オンボードのシリアル (UART) を使う (DietPiでの方法も補足)

More than 3 years have passed since last update.

Overview

Raspberry Pi Zero WやRaspberry Pi3は、Bluetoothを搭載され、UARTで結線されてる関係で、使うのに手間がかかります。

  • SoC内のUARTの切り替え (pinヘッダーに出ているTXD/RXDを使えるように) が 必要

簡易UARTに切り替えることもでき、Raspberry Pi3やZero Wで、BluetoothとUARTの併用が可能です。

  • シリアルコンソールの無効化が必要

    • /dev/ttyAMA0/dev/ttyS0 は、 consoleとししても使われているため、無効化しないと、オンチップのUARTを、自分用途で利用できないので、無効化が必要
  • TXD/RXD の ピンレイアウトは、

  • Diet Pi特記事項

    • DietPi は特殊なdistributionでDTのoverrideが /boot直接では、できないので注意が必要

やり方

オンボードシリアルの有効化

/boot/config.txt
enable_uart=1

以下が、Tiny UARTとPL011の切り替えです。

/boot/config.txt
dtoverlay=pi3-miniuart-bt

を追加 (pi3となっていますが、Zero Wでも有効)

baurdrateを115200よりも使う時。

ATmega32u4などでUSBで使う場合には、baurdateを500000bpsとかに設定するかと思いますが、
その時は、

/boot/config.txt
init_uart_clock=8000000

も追加しておきましょう。

なお、
/boot/config.txtは、DietPi上では、直接編集しても無意味です。
/DietPi/config.txt
を代わりに編集しましょう

UART ttyの無効化

/boot/cmdline.txt
-dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
+dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

/boot/cmdlineでconsole=serial0,1152000が入っているかと思いますが、上のように
除去しましょう。

sudo systemctl stop serial-getty@ttyAMA0.service
sudo systemctl disable serial-getty@ttyAMA0.service

のように、gettyが/dev/ttyAMA0や/dev/ttyS0を取ろうとしているので、無効化します。

これで使えるはずです。

hidenorly
All tweets are my personal opinions and do not represent those of my employer.
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away