HOME
  Security
   Software
    Hardware
  
FPGA
  CPU
   Android
    Raspberry Pi
  
nLite
  etc.
   ALL
    LINK
  
English Translate 中文翻訳
BACK
 

[NEW] 2016/03/26

Raspberry Pi 3 Model Bでシリアル通信で接続してコンソールにログインする方法 Raspberry Pi 3 Model Bでシリアル通信で接続してコンソールにログインする方法

(ラズパイ3で UART通信を有効にするには既存のとは違う設定方法が必要です。)

Tags: [Raspberry Pi 3], [電子工作]






● Raspberry Pi 3 Model B

 Raspberry Pi3 Model B RPI2 RPI3

 大人気の CPUボードの Raspberry Piに WiFiと Bluetoothが搭載されたモデルが新発売となりました。
 以前から Raspberry Pi 2を買おうかどうか迷っていましたが、Raspberry Pi 3 Model Bの発売を機に購入を決意してラズベリアンになる事にしました。


● Raspberry Pi3の UART端子が使えない?

 Raspberry Pi3を適当にいじくっている過程で sudo raspi-configで色々な設定を変えられる事が分かりました。
 そこで、下記の手順で sudo raspi-configを実行して Software Configuration Toolを起動して Serialを Enableにして UART通信の実験をしようとしましたが、全く通信しませんでした。

・Raspberry Piで UARTを有効にする sudo raspi-config
Raspberry Piで UARTを有効にする sudo raspi-config


・Raspberry Piで UARTを有効にする Software Configuration Toolを起動する
Raspberry Piで UARTを有効にする Software Configuration Toolを起動する


・Raspberry Piで UARTを有効にする Advanced Optionsを選択する
Raspberry Piで UARTを有効にする Advanced Optionsを選択する


・Raspberry Piで UARTを有効にする Serialを選択する
Raspberry Piで UARTを有効にする Serialを選択する


・Raspberry Piで UARTを有効にする Yesを選択する
Raspberry Piで UARTを有効にする Yesを選択する


・Raspberry Piで UARTを有効にする Okを選択する
Raspberry Piで UARTを有効にする Okを選択する


・Raspberry Piで UARTを有効にする Finishを選択する
Raspberry Piで UARTを有効にする Finishを選択する


・Raspberry Piで UARTを有効にする Yesを選択して再起動する
Raspberry Piで UARTを有効にする Yesを選択して再起動する


Raspberry Pi3の場合、この方法では UARTが実質使えない。

● Raspberry Pi3の UART端子にシリアルアダプタを接続して UART通信をする方法

 そこでググッたら Raspberry Pi3で UARTが使えないとの同様の情報が沢山出てきました。

 Raspberry Pi3ではPI2時代に使用していた PL011と言う名称のシリアル通信機能を Bluetoothモジュールとの通信に割り当てており、代わりに mini UARTと言う名称のシリアル通信機能を割り当てています。(BCM2835 datasheet記載 One mini UART and one PL011 UART)
 この mini UARTのシリアル通信機能は CPUの動作周波数を元に通信速度(ボーレート)を生成しており、Raspberry Piでは負荷状況に応じて動作周波数が変化するので実質使い物になりません。

 と言う訳で、Raspberry Pi3の場合は通常の方法ではシリアル通信が出来ない事が分かりました。



●ラズパイの公式フォーラムでは既に 3月 1日の時点で UART動作の奇妙な点の報告が上がっています。

Tue Mar 01, 2016 1:50 pm - Raspberry Pi 3 login via UART on GPIO Baud Rates broken
 「いつもはシリアルコンソールの通信速度は 115200bpsで動作してます。 ~略~ 通信速度の設定値を 115200bpsにしているのに実際は 72000bpsで動作しているぞ!。9600bpsを設定すると 6002bpsで動いていて、それは 1.6倍遅い。」

Raspberry Pi 3 model B Serial console does not use correct baudrate #553

●ラズパイの公式フォーラムでの UART関係の投稿

Tue Mar 01, 2016 9:20 am - Raspberry Pi 3 - Bluetooth PL011 UART (9bit on mini-UART)?

Mon Mar 07, 2016 1:54 pm - Overlay to remap Pi 3 UART

Mon Mar 21, 2016 9:21 pm - Pi3 UART stopped working? Read this.
 「If you want to use the UART console during booting on a Pi3 then you need to add `enable_uart=1` to config.txt. Also, you can use the normal UART pins for other functions without pinctrl getting in the way.」
 「ブート時に UARTコンソールを使いたいなら enable_uart=1を config.txtに追加しろ。~略~ 以下 mini-UARTや PL011や core_freq コア周波数の固定等についての補足説明」
結果:駄目でした。(ボーレートが安定しない感じで実質使用出来ませんでした。)



●ラズパイ3で UART通信を安定して確実に使える様にする方法

 下記のページに書いてある方法を参考にして UARTが安定して確実に使えるようになり ラズパイ3の UARTが使えない問題が解決しました。
Raspberry Pi 3 Serial Port Usage
 「For Raspbian Jessie releases after 18th March 2016」を参考にした。

 なお、OSは Raspbian Jessie 2016/03/18版を使用しています。
RASPBIAN JESSIE Version:March 2016 Release date:2016-03-18

 Step1) SDカードに Raspbian Jessie 2016/03/18版を書き込む。
  ※ Windowsの場合は Win32DiskImagerを使用して imgファイルを SDカードに書き込む

 Step2) SDカードを一旦取り出し操作して、再度パソコンに差して認識させる

 Step3) SDカードのファイル config.txtの最後に dtoverlay=pi3-miniuart-btを追加する
※ラズパイ上では sudo nano /boot/config.txtで編集出来る。

 Step4) SDカードをラズパイ3に差して起動する

 Step5) TeraTerm等の通信ソフトで COMポートを 115200bpsで開いてラズパイ3と通信を行なう。

 私の環境では下記の 2つの手順は不要でした。
[For Raspbian Jessie releases after 18th March 2016]
$ sudo raspi-config
 で、serialを enableにする。(上記の「Raspberry Pi3の UART端子が使えない?」で行なった操作)

[Enabling the Serial Console Rasbian Jessie after 18th March 2016 release]
$ sudo nano /boot/cmdline.txt
 で、内容を下記に変更
$ dwc_otg.lpm_enable=0 console=tty1 console=serial0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

 ※上記の dtoverlay=pi3-miniuart-btの方法でシリアル通信を有効にしている場合は、Bluetooth機能が使用している PL011をシリアルで使用する事になるのでオンボードの Bluetooth機能を使えなくなる。

 下記の方法であればシリアル通信と Bluetooth機能を両立出来る。

[NEW] 2016/03/31
Raspberry Pi 3 Model Bで Bluetoothを生かしつつシリアル通信を有効にする方法(コンソール通信でログイン可能)
Raspberry Pi 3 Model Bで Bluetoothを生かしつつシリアル通信を有効にする方法(コンソール通信でログイン可能)

  ラズパイ3で Bluetoothと UART通信の両方を使える様にする設定方法のまとめ。


●ラズパイ3で UART通信をする為に、GPIO端子にジャンパー線を接続する方法

 USB to UARTアダプタを使用してラズパイ3とシリアル通信を行ないます。

 USB to UARTアダプタは TIの CC2540 BLEモジュールをタオバオ通販で購入する時に一緒に買った物を使用しました。(Silicon Labs CP2102を使用)


2014/08/01
TIの 8051マイコン内臓の BLE CC2540/CC2541を使ってみる
TIの 8051マイコン内臓の BLE CC2540/CC2541を使ってみる

  Bluetooth Low Energyの SensorTagや iBeacon、CC Debuggerの使い方など

 同様の製品は秋月やアマゾンでも購入出来ます。


Raspberry Pi ラズベリーパイ用の USB-TTLシリアルコンソールのUSB変換COMケーブルモジュールのケーブル
ASIN: B00K7YYFNM

SODIAL(R)FT232RLモジュール5V 3.3V FTDI USB TTL変換アダプタレッド
ASIN: B00YMJVSIS
秋月電子通商
[AE-FT234X] 超小型USBシリアル変換モジュール

※注意:注意点として USBシリアル変換は出力が +3.3Vロジックレベルの物を使用してください。+5V出力や RS-232C出力の物は Raspberry Piにダメージを与えます。(最悪ラズパイを破壊する)
※出力が +3.3Vロジックレベルであれば、Silicon Labs CP2102、FTDI FT232R、Prolific PL2303等々の使用している USBシリアル変換 ICの種類は問いません。

 結線方法は下記の様に 3本使用してそれぞれ接続します。
 (1) USB to UARTアダプタの TXD(送信)を ラズパイの GPIOの RXD(受信)
 (2) USB to UARTアダプタの RXD(受信)を ラズパイの GPIOの TXD(送信)
 (3) USB to UARTアダプタの GNDを ラズパイの GPIOの GND
 VCCや +3.3V等は何も接続しません。(接続したら壊れるので駄目)
 (送信を相手の受信側に接続するのは意味が分かると思います。野球に例えるとピッチャー(送信)とキャッチャー(受信)の関係になります。ピッチャー(送信)同士を接続するとボールが衝突してしまい、キャッチャー(受信)同士だとボールを投げる人が居ません。)

・ラズパイ3で UART通信をする為に、GPIO端子に線を接続する方法
ラズパイ3で UART通信をする為に、GPIO端子に線を接続する方法


・ラズパイ3で UART通信をする為に、GPIO端子に線を接続する方法
ラズパイ3で UART通信をする為に、GPIO端子に線を接続する方法


・ラズパイ3で UART通信をする為に、GPIO端子に線を接続する方法
ラズパイ3で UART通信をする為に、GPIO端子に線を接続する方法




●ラズパイ3で UART通信を用いてログイン及びコンソール操作が出来る様になりました。

 以上で、ラズパイ3で UART通信を用いてログイン及びコンソール操作が出来る様になりました。めでたしです。

 ttyAMA0と言うのは GPIO端子 GPIO14(TXD)と GPIO15(RXD)を使用した UARTを意味します。

・ラズパイ3で UART通信を用いてログイン及びコンソール操作する方法
ラズパイ3で UART通信を用いてログイン及びコンソール操作する方法


・ラズパイ3で UART通信を用いてログイン及びコンソール操作する方法
ラズパイ3で UART通信を用いてログイン及びコンソール操作する方法




● USBシリアル変換の Windows用のドライバ

 Prolific PL2303 UART Serial Windows Driver
Prolific PL2303 USB to UART/Serial Windows Driver Download
 PL2303_Prolific_DriverInstaller_v1.12.0.zip
 ※ Prolific PL2303の一部の型番は公式アナウンスで Windows 8/8.1/10をサポートしません。

 Silicon Labs CP2102 UART ブリッジ VCP ドライバ
Silicon Laboratories CP210x USB - UART ブリッジ VCP ドライバ
 CP210x_Windows_Drivers.zip

 FTDI FT232R Virtual COM Port Drivers WHQL Certified VCP
FTDI Virtual COM Port Drivers
 CDM v2.12.16 WHQL Certified.zip
 FTDI FT232H、FT2232H、FT4232H、FT2232D/C/L、FT232B等も使える。



●ラズパイ雑感

 ラズパイ3を購入するに当たって、予備知識をつけて置こうとして事前に色々な資料や情報を探したのですが、ちょっとした設定方法や TIPSもユーザー自身が思考錯誤して情報交換して共有していると言う感じで、公式からの正式なドキュメントで提供されている情報があまりにも貧弱、もしくは全くのブラックボックスの様に思います。

 今回の UART問題でも dtoverlay=pi3-miniuart-btなんて通常では絶対に分からない解決方法に思えます。公式からもアナウンスが無いし。



● Raspberry Piのコンソール上で使用する各種コマンド

 Raspberry Piのコンソール上で使用する各種コマンドは下記にまとめました。

[NEW] 2016/03/26
Raspberry Pi 3 Model Bの Linuxコンソール上で使用する各種コマンドまとめ
Raspberry Pi 3 Model Bの Linuxコンソール上で使用する各種コマンドまとめ

  ラズパイの Raspbian OSのコマンドラインで使用する便利コマンド、負荷試験や CPUシリアル番号の確認方法等も

Tags: [Raspberry Pi 3], [電子工作]

●関連するコンテンツ(この記事を読んだ人は、次の記事も読んでいます)

大人気の CPUボード、Raspberry Pi 3 Model Bで作ってみよう
大人気の CPUボード、Raspberry Pi 3 Model Bで作ってみよう

  Raspberry Piの開発環境の構築やタッチパネル付き液晶ディスプレイや各種センサーの使い方まとめ

技適認定有りの Raspberry Pi 3 Model Bを最短 3日でサクッと入手する方法
技適認定有りの Raspberry Pi 3 Model Bを最短 3日でサクッと入手する方法

  技適マーク付きの Raspberry Pi3を安心の国内通販でサクッと購入する方法

Raspberry Pi 3公式フォーラムの FAQの内容の日本語訳
Raspberry Pi 3公式フォーラムの FAQの内容の日本語訳

  ラズパイ公式フォーラムの「The Raspberry Pi 3 Model B Q&A thread」の日本語訳

Raspberry Pi 3 Model Bのキセノン・デス・フラッシュ問題を検証する
Raspberry Pi 3 Model Bのキセノン・デス・フラッシュ問題を検証する

  ラズパイ2で存在したカメラのフラッシュ光で死ぬ現象をラズパイ3でも検証し、その対処法を探る。

Raspberry Pi 3 Model Bの Linuxコンソール上で使用する各種コマンドまとめ
Raspberry Pi 3 Model Bの Linuxコンソール上で使用する各種コマンドまとめ

  ラズパイの Raspbian OSのコマンドラインで使用する便利コマンド、負荷試験や CPUシリアル番号の確認方法等も

Raspberry Pi 3 Model Bをシャットダウンした時に電源が切れたかを簡単に確認する方法
Raspberry Pi 3 Model Bをシャットダウンした時に電源が切れたかを簡単に確認する方法

  ラズパイをシャットダウン操作した時に電源が切れたかを簡単に確認する方法

Raspberry Pi 3 Model Bの GPIOに LEDとスイッチを接続して Lチカする方法
Raspberry Pi 3 Model Bの GPIOに LEDとスイッチを接続して Lチカする方法

  ラズパイ3の GPIOに LEDとスイッチを取り付けて Lチカ実験する方法

Raspberry Pi 3 Model Bの GPIOに LEDとスイッチを接続してシャットダウンボタンを実装する方法
Raspberry Pi 3 Model Bの GPIOに LEDとスイッチを接続してシャットダウンボタンを実装する方法

  ラズパイ3の GPIOにボタンを取り付けて再起動&シャットダウン機能を作成する方法

Raspberry Pi 3 Model Bで Bluetoothを生かしつつシリアル通信を有効にする方法(コンソール通信でログイン可能)
Raspberry Pi 3 Model Bで Bluetoothを生かしつつシリアル通信を有効にする方法(コンソール通信でログイン可能)

  ラズパイ3で Bluetoothと UART通信の両方を使える様にする設定方法のまとめ。

Raspberry Pi 3 Model Bで日本語音声を合成して喋らせる方法(AquesTalk編)
Raspberry Pi 3 Model Bで日本語音声を合成して喋らせる方法(AquesTalk編)

  ラズパイ3で 音声合成アプリ AquesTalk Piを使用してお手軽に日本語文章を喋らせる方法

Raspberry Pi 3 Model Bで日本語音声を合成して喋らせる方法(Open JTalk編)
Raspberry Pi 3 Model Bで日本語音声を合成して喋らせる方法(Open JTalk編)

  ラズパイ3で 音声合成システム Open JTalkをコンパイルして、お手軽に日本語の文章を喋らせる方法

Raspberry Pi 3 Model Bに USB Micを接続して日本語の音声認識をする方法(Julius編)
Raspberry Pi 3 Model Bに USB Micを接続して日本語の音声認識をする方法(Julius編)

  ラズパイ3で汎用大語彙連続音声認識エンジン Juliusをコンパイルして使用する方法

Raspberry Pi 3 Model Bの GPIOに 1-Wire通信方式の温度センサー DS18B20を接続する方法
Raspberry Pi 3 Model Bの GPIOに 1-Wire通信方式の温度センサー DS18B20を接続する方法

  ラズパイ3で 1-Wire接続の温度センサー DS18B20を使用する方法

Raspberry Pi 3 Model Bで赤外線受信センサーと赤外線 LEDでリモコン信号を送受信する方法
Raspberry Pi 3 Model Bで赤外線受信センサーと赤外線 LEDでリモコン信号を送受信する方法

  ラズパイ3の LIRC機能を使って赤外線学習リモコン、赤外線リモコン送信で外部機器を制御をする方法

Raspberry Pi 3 Model Bに SPI通信方式の NFCリーダライタ RFID-RC522を接続して NFCタグを読む方法
Raspberry Pi 3 Model Bに SPI通信方式の NFCリーダライタ RFID-RC522を接続して NFCタグを読む方法

  ラズパイ3に NXP MFRC522 RFIDリーダライタを接続して非接触で NFCカードを読み込む方法

Raspberry Pi 3 Model Bの Bluetoothで ブルテザで通信する方法(Bluetooth編)
Raspberry Pi 3 Model Bの Bluetoothで ブルテザで通信する方法(Bluetooth編)

  ラズパイ3に内蔵の Bluetoothで Bluetooth Tetheringを使用して通信環境を設定する方法

Raspberry Pi 3 Model Bの WiFiを無線LANアクセスポイント化 hostapd + bridge-utils編
Raspberry Pi 3 Model Bの WiFiを無線LANアクセスポイント化 hostapd + bridge-utils編

  ラズパイ3に内蔵の WiFiを無線LANアクセスポイントにして通信環境を設定する方法

Raspberry Pi 3 Model Bで音声合成して喋らせる方法(英語、中国語編)
Raspberry Pi 3 Model Bで音声合成して喋らせる方法(英語、中国語編)

  ラズパイ3で 音声合成アプリを使用してお手軽に英語と中国語の文章を喋らせる方法

Raspberry Pi 3 Model Bに形態素解析エンジン MeCabをインストールして形態素解析をする方法
Raspberry Pi 3 Model Bに形態素解析エンジン MeCabをインストールして形態素解析をする方法

  ラズパイ3で オープンソースの形態素解析エンジン MeCabをコンパイルして使用する方法まとめ

Raspberry Pi 3 Model Bに専用カメラモジュールを接続する方法
Raspberry Pi 3 Model Bに専用カメラモジュールを接続する方法

  ラズパイに専用カメラモジュールを接続して Raspbianで写真の静止画撮影や動画を録画する方法

Raspberry Pi 3 Model Bでネットワーク ライブカメラを構築する方法 Motion編
Raspberry Pi 3 Model Bでネットワーク ライブカメラを構築する方法 Motion編

  ラズパイのカメラで遠隔監視カメラ(ネットワークカメラ、ライブカメラ)

Raspberry Pi 3 Model Bでネットワーク ライブカメラを構築する方法 MJPG-streamer編
Raspberry Pi 3 Model Bでネットワーク ライブカメラを構築する方法 MJPG-streamer編

  ラズパイのカメラで遠隔監視カメラ(ネットワークカメラ、ライブカメラ)

Raspberry Pi 3 Model Bで動画処理アプリ FFmpegをコンパイルする方法
Raspberry Pi 3 Model Bで動画処理アプリ FFmpegをコンパイルする方法

  ラズパイ3で FFmpegをセルフコンパイルしてインストールする方法

Raspberry Pi 3 Model Bで動画処理アプリ libavをコンパイルする方法
Raspberry Pi 3 Model Bで動画処理アプリ libavをコンパイルする方法

  ラズパイ3で libavをセルフコンパイルしてインストールする方法

Raspberry Pi 3 Model Bで CMSフレームワーク WordPressをセットアップする方法
Raspberry Pi 3 Model Bで CMSフレームワーク WordPressをセットアップする方法

  ラズパイ3で WordPressをインストールする方法

Raspberry Pi 3 Model Bで画像処理ライブラリ OpenCVをコンパイルして顔認識する方法
Raspberry Pi 3 Model Bで画像処理ライブラリ OpenCVをコンパイルして顔認識する方法

  ラズパイ専用カメラで OpenCVを使用する方法とかも、USBカメラはそのままで大丈夫

Raspberry Pi 3 Model Bに日本語 OCR Tesseractをインストールして OCR文字認識をする方法
Raspberry Pi 3 Model Bに日本語 OCR Tesseractをインストールして OCR文字認識をする方法

  ラズパイ3で オープンソースの OCRエンジン Tesseractをインストールして使用する方法まとめ

Raspberry Pi 3 Model Bに日本語 OCR NHocrをビルドして OCR文字認識をする方法
Raspberry Pi 3 Model Bに日本語 OCR NHocrをビルドして OCR文字認識をする方法

  ラズパイ3で オープンソースの OCRエンジン NHocrをコンパイルして使用する方法まとめ

Raspberry Pi 3 Model Bに HDMI接続の 800x480 5インチ TFT液晶を接続して使用する方法
Raspberry Pi 3 Model Bに HDMI接続の 800x480 5インチ TFT液晶を接続して使用する方法

  ラズパイ3に 5インチ HDMI液晶を接続してタッチパネル機能を有効にする方法、ダウンスケーリングして擬似的に広くする方法。

Raspberry Pi 3 Model Bに SPI接続の 480x320 3.5インチ TFT液晶を接続して使用する方法
Raspberry Pi 3 Model Bに SPI接続の 480x320 3.5インチ TFT液晶を接続して使用する方法

  ラズパイ3に KeDei 3.5インチ液晶 V5.0を接続して使用する方法。(KeDei公式パッチを適用)

Raspberry Pi 3 Model Bで SPI接続の 2.8インチ TFT液晶を使用する方法
Raspberry Pi 3 Model Bで SPI接続の 2.8インチ TFT液晶を使用する方法

  ラズパイ3に 320x240 ILI9341 TFT 2.8インチ LCDを SPI接続して自前アプリから直接制御する方法。

Raspberry Pi 3 Model Bで SPI接続の 2.8インチ TFT液晶を X Windowやコンソールの画面として使用する方法
Raspberry Pi 3 Model Bで SPI接続の 2.8インチ TFT液晶を X Windowやコンソールの画面として使用する方法

  ラズパイ3に 320x240 ILI9341 2.8インチ TFT LCDを FBTFTで X-Windowの表示画面として使用する方法。

Espressif ESP8266 Arduino互換でスケッチが使える ESP-12Eモジュール基板
Espressif ESP8266 Arduino互換でスケッチが使える ESP-12Eモジュール基板

  Espressif ESP8266 ESP-12-E NodeMCU V1 ESP12 CP2102

BangGood通販はドローン以外にも面白い商品がまだまだ有った(電子工作編)
BangGood通販はドローン以外にも面白い商品がまだまだ有った(電子工作編)

  レーザー彫刻機、カラー液晶の DIYオシロ、Arduinoや Raspberry Pi用の小型カラー液晶


● Raspberry Pi 3の I2Cに各種センサーを繋げて使用する方法は下記の記事をご覧下さい。
 3軸 加速度センサ、3軸 地磁気センサ、3軸 ジャイロセンサ、秋月キャラクタ液晶、湿度センサ、AD/DA変換、リアルタイムクロック、I2Cメモリ、気圧センサ

[NEW] 2016/03/26
Raspberry Pi 3 Model Bで GPIO端子の I2C機能を有効化する方法
Raspberry Pi 3 Model Bで GPIO端子の I2C機能を有効化する方法

  ラズパイ3の GPIO端子の I2C機能を有効にして各種センサーを繋げる方法まとめ



[HOME] | [BACK]
リンクフリー(連絡不要、ただしトップページ以外はweb構成の変更で移動する場合があります)
Copyright (c) 2016 FREE WING,Y.Sakamoto
Powered by 猫屋敷工房 & HTML Generator

http://www.neko.ne.jp/~freewing/raspberry_pi/raspberry_pi_3_uart_tips/