πduinoは、Arduino互換ボードのUARTとRaspberryPiのGPIOポートのUARTを接続し、RASBIANのArduinoIDEからUART経由でプログラミングしたり、Scratchのセンサーボード(PicoBoard,なのぼ~ど,WeDo)のような機能を実現するものです。
参照:(トランジスタ技術2017年2月号の付録)
RASBIANのConfigは、トランジスタ技術本誌に記載されていますが、誤記等もあったのでをメモしておきます。
UARTのconfigは、オンボードのBlueToothに影響を与えるので、RaspberriPi3BとRaspberryPi Zero Wの2機種はOnBoardのBlueToothは使えなくなります。
・確認OSバージョン
Raspbian 8.0(Jessie)
1.事前インストール
以下のコマンドで、WiringPiとPythonをインストールしておく
$sudo apt-get install python-dev python-setuptools
$sudo apt-get install python-pip
$sudo pip install wiringpi2
$
2.ArduinoIDEのための設定
2-1.シリアルポートの設定変更
2.ArduinoIDEのための設定
2-1.シリアルポートの設定変更
$sudo leafpad /boot/config.txt
最終行の下に以下の2行を追加
dtoverlay=pi3-miniuart-bt
enable_uart=1
$sudo leafpad /boot/cmdline.txt
2-2.シリアル・ポートのデバイス・ファイル名変更(Arduino1.8.3では不要)
最終行の下に以下の2行を追加
dtoverlay=pi3-miniuart-bt
enable_uart=1
$sudo leafpad /boot/cmdline.txt
以下の内容に変更します
$sudo reboot
変更前(1行です)
dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p7 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait splash plymoutth.ignore-serial-consoles
dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p7 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait splash plymoutth.ignore-serial-consoles
下線部分変更後(1行です)
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p7 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait splash plymoutth.ignore-serial-consoles
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p7 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait splash plymoutth.ignore-serial-consoles
$sudo reboot
2-2.シリアル・ポートのデバイス・ファイル名変更(Arduino1.8.3では不要)
ArduinoIDE1.0.xでは、”ttyAMA0”が認識できないので、”ttyS8"にリンクしておく
$sudo leafpad /etc/udev/rules.d/80-ttyS8.rules
$sudo leafpad /etc/udev/rules.d/80-ttyS8.rules
以下の内容で作成します
KERNEL=="ttyAMA0", SYMLINK+="ttyS8", GROUP="dialout", MODE:=0666
3.UARTのDTR機能を有効にする
KERNEL=="ttyAMA0", SYMLINK+="ttyS8", GROUP="dialout", MODE:=0666
3.UARTのDTR機能を有効にする
$sudo leafpad /etc/rc.local
最後のほうの、"exit 0" の前の行に以下を追加する
/usr/bin/gpio mode 0 alt3
最後のほうの、"exit 0" の前の行に以下を追加する
/usr/bin/gpio mode 0 alt3