RaspberryPi 2 でカラーLCD表示する方法 (最も簡単な方法)
RaspberryPi 2 になってからなのか、新しいカーネルになってからなのか、ネット上で調べた方法ではカラーLCD表示が出なくて困りました。 日経Linux 2014年9月号の方法もすでに使えません。
買ってきたLCDが不良なのか?
配線が間違っているのか?
設定が間違っているか?
ドライバがないのか?
自分でカーネルをコンパイルしなければならないのか?
画面が出ないと疑問はいくらでも湧いてきます。。。 自己解決できなくて挫折してしまう人もいるかもしれません。
とりあえず、aitendoの2.2インチ カラーLCD(240x360)でフレームバッファを表示できたので、その設定方法をUPします。 1.8インチLCD(128x160)でもほぼ同様の設定でOKとなります。
配線は以下のとおり。
例のDAC基板を付けていても、この部分は空いてます。。。
偶然ではありません。
MISOとLEDは繋いでいません。 平行線はこれがおススメです。
LEDの配線は、このように100Ωの抵抗でVCC(3.3V)に接続しました。 これで十分な明るさになります。
使用したカーネルのバージョンは 3.18.11-v7+ (2015-05-05-raspbian-wheezy.img)
aitendoのwebサイトによると、このM-TM022-SPI というLCDの仕様は
ILI9340C、240x320、SPI
と簡素な説明です。 この駆動 ICの名前を頼りにしていきます。 面倒なのでデータシートなどは見ません。 見てはいけません(笑
では、早速セットアップしてみましょう。
■ Raspbianの起動
実は、RaspberryPi 2 用のRaspbian といいますか、最近のカーネルには多数のカラーLCDのドライバは標準で入っています。 2015年1月くらいから?
SDカードに Raspbianを転送して起動するだけ。
■ ドライバの設定(1)
SSHの初期ログインはユーザー名 pi パスフレーズ raspberry です。
sudo nano /boot/config.txt でconfig.txtを開いて
dtparam=spi=on 先頭の#を削除します。 SPIドライバをEnableするのです。
■ ドライバの設定(2)
sudo nano /etc/modules で開いて下記の1行を追加します。
fbtft_device name=adafruit22a rotate=270
この adafruit22a がどこからやってくるのか、悩みました。
こちらのソース内で定義されています。
ちなみに、1.8インチのLCDは adafruit18 に変更するだけです。 その他のLCDもこのソース内の定義を見て駆動 IC名からどの名称を指定すれば良いのか探せるはずです。
「reset」「dc」「lcd」などGPIOの割付も分かりますね。
rotate= は表示の回転角です。 90度単位で自由に指定できます。
■ boot時にコンソール表示させるには
sudo nano /boot/cmdline.txt で開いて 以下の呪文を後ろに追加します。
fbcon=map:10 fbcon=font:VGA8x8
すでに書いてある文字列の後ろに追加です。
改行しません。 スペースを1つ間に入れます。
コンソール表示させたくない場合は、この作業をとばします。 ドライバさえ組み込まれればソフトウェアからフレームバッファへと書き込んで表示させることができます。 LCD画面に表示がでるか確認するという意味では、一度はコンソール表示をONしてみることをおススメします。
■ 再起動します
sudo reboot
再起動すると何か表示されるはずです。
初回起動だと、ブートメッセージがダラダラ続いたあと、こんな感じに。
HDMIやコンポジット表示の初回起動で見覚えがある人も多いかもしれませんね。 USBキーボードをRaspberryPi 2に挿して、設定してあげてください。
ということで、、、方法さえ分かれば、とても簡単でしたね。
ネット検索だと古い情報が沢山ヒットしてしまうので、余計分かりにくくなっているだけのようです。
adafruitのwebサイトも情報が少し古くなっているようですが、とても参考になりました。
動画再生の方法や、X-windowの表示など見てみると役にたつかもしれません。
モデルチェンジ以前の aitendo の旧 1.8インチLCD で動画を再生中
夏休みの工作程度には楽しめます。 お気に入りの動画を320x180pixくらいのmp4に圧縮してSDカードに入れておくと楽しいかも。
にほんブログ村
ブログランキングに参加中です。 めざせ1位!
もしよろしければ「ぽちっと」お願いします。
« Stereo 8月号の付録は10cmスピーカーユニット | トップページ | 特注 Rコアトランス 再入荷しました »
「Raspberry Pi」カテゴリの記事
- MotionEyeと余っているラズパイで監視カメラ(2024.11.21)
- 秋の夜長にはRaspberryPi5 RT-linux セルフビルド(2024.10.13)
- 秋の夜長にはRaspberryPi5 64bit版 Sabreberry32 ドライバコンパイル(2024.10.10)
- RaspberryPi 5 の公式OSは32bit版でも64bit?(2024.10.09)
- 秋の夜長にはRaspberry Pi5 64bit カーネル・セフル・ビルド (2024.10.07)
コメント
« Stereo 8月号の付録は10cmスピーカーユニット | トップページ | 特注 Rコアトランス 再入荷しました »
たかじん様
インタフェース誌の記事や頒布物でいつも楽しませて頂いております。
SabreBerry+ にRasPIにaitendoのタッチパネル液晶3.5inch(http://www.aitendo.com/product/10814)を接続できれば、PCやスマホ無しで曲やインターネットラジオの選局ができていいなと思うのですが、ピン配置的に頑張ればなんとかなるものでしょうか?
投稿: coolsonic | 2015年8月27日 (木) 14時33分
coolsonic さん
配線さえどうにか接続できればカラーLCDとI2S-DACを両方ともつなぐことはできると思います。
タッチパネルをどう機能させるかまでは、調べていないのですが、
https://www.adafruit.com/products/1601
このあたりが参考になるかもしれません。
あとはGUIをどう作りこむかという部分ですね。
投稿: たかじん | 2015年8月28日 (金) 22時35分
たかじん様
ご回答いただきありがとうございます。
aitendoのLCDの端子とSabreBerry+のJ3,J4端子を比べてみたところ、aitendoのLCDをRasPI 2に刺してもJ4端子にはかからないようです。尚、SabreBerry+のJ3,J4端子の仕様がわからないのですが、I2Sの端子がJ4側にまとまっているのであればいけそうな気がしてきました。トラ技2015年9月号やHPに見つからなかったのですが、可能であれば、SabreBerry+のJ3,J4端子の仕様を教えて頂けますでしょうか。
IrBerryDACもあるのですが、こちらはRasPI BのJ2だけ繋いでIrBerryDAC電源は外部強化電源入力端子から5V供給すればaitendoのLCDの端子と全く干渉せずにいけそうな気がしました。
タッチパネルはコマンドベースで設定すると結構、厄介でしたので、aitendoのHPで供給してるimageをそのまま使いたいと思っています。
GUIですが、試してみましたらすんなり動いたのでこいつがそのまま使えそうです。
https://learn.adafruit.com/raspberry-pi-radio-player-with-touchscreen
投稿: coolsonic | 2015年8月29日 (土) 11時51分
追伸
Raspberry pi BとIRberryDACの組み合わせのほうは何とかaitendo 3.5 inch LCDと両立させることができました。この組み合わせですとI2S信号と電源5V、GNDをP5ピンヘッダから全て引っ張り出せますし、LCDのPINが高背なので配線は意外と簡単でした。
http://www.aitendo.com/product/10814
Raspberry pi Bのimageはaitendoのではなく(少しバージョンが古いようですので)こちらを使いました。
http://www.amazon.co.jp/dp/B00U6YCIT6?psc=1#productDetails
I2Sですが、Volumioとか使わずにどうやってRaspberry pi Bから出力させるのか少し悩みましたが、このページの方法でうまくいきました。
http://www.hifiberry.com/guides/configuring-linux-3-18-x/
Raspberry pi 2でもできるかやってみたいと思いますが、I2S信号の出力PINが一部、LCDと重なってしまうので、こちらはやや難易度が高そうです。
http://hifiduino.wordpress.com/2014/11/13/raspberry-pi-b-digital-audio/
取り急ぎご報告まで
投稿: | 2015年8月30日 (日) 05時55分
coolsonic さん
adafruitさんのところは情報満載ですね。
> I2S信号の出力PINが一部、LCDと重なってしまうので、こちらはやや難易度が高そうです。
LCDとかぶる信号は、PWMのバックライト? 明るさ調整をさせなければOKじゃないでしょうか。 上の例でもそうしてます。
ただ、ソフトは一部変更しないといけないですね。
投稿: たかじん | 2015年8月30日 (日) 09時06分
たかじん様
どうやら12PINはLCD側で使ってないような気がしてきました。もう少し調べて大丈夫そうだったら12PINのBITCLOCKをRasPIのハンダ面側から引き出して実験してみようと思います。
coolsonic
投稿: coolsonic | 2015年8月30日 (日) 11時24分
追伸
実験ですが12PIN(12番PIN:GPIO18)のBITCLOCKを使って、Raspberry PI2でもI2S出力うまくいきました。これでどうやら突破口が開けましたので、タッチパネル操作型ハイレゾ対応インターネットラジオの完成に向けもう一頑張りしたいと思います(^^;。
あと実験してるときに気付いたのですが、インタフェース誌2014年9月号のP26図1のP5ヘッダの5番PINと6番PINの接続関係が逆になっているように思いました。P27の表2と整合していないですが、表2が正しいと思います。CQ出版のHPには記載されていませんでしたので。。。
http://www.kumikomi.net/interface/contents/correction.php
投稿: coolsonic | 2015年8月30日 (日) 13時18分
coolsonic さん
確かにP26図1はおかしいです。 申し訳ございません。 気が付きませんでした。
P27の表2が正しいです。
投稿: たかじん | 2015年8月31日 (月) 22時54分
たかじん様
なんとかインターネットラジオが完成致しました。稚拙な内容ですが、今回辿った手順を備忘録として纏めておきました。
http://chibinariton.hatenablog.com/
今後、さらに機能拡張したいのですが、/boot/config.txtにdtoverlay=hifiberry-dacを書くとx windowの動作がおかしくなり、これを解決するまで難しいかもしれません。
coolsonic
投稿: | 2015年9月 2日 (水) 18時07分
coolsonicさん
タッチパネルつきインターネットラジオ、素晴らしいですね。
kodiなどで、マルチメディアプレーヤーとしても面白いかもしれません。
https://nw-electric.way-nifty.com/blog/2015/02/raspberry-pi--1.html
ここで設定したときは、dtoverlay=hifiberry-dac としてOKでした。
投稿: たかじん | 2015年9月 4日 (金) 23時17分