ぽよメモ

レガシーシステム考古学専攻

RaspberryPiでili9488と書かれたTFT液晶モジュールを使う

楽しい楽しい春休みです。

1月中に手に入れたTFT液晶モジュールがあったのですが、テスト期間だったので触れず放置していました。

超チープです。商品を開けた時も、最初ディスプレイ表面についていた保護シートは傷まみれでした。数ドル程度のクオリティ。

f:id:pudding_info:20160822222521j:plain

裏に「ili9488」の文字が見えます。

f:id:pudding_info:20160822222552j:plain

今回それを引っ張りだしていじくり回そうと思ったのですが、fbtftの対応LCDに載っておらず、そもそもググってもほぼ出ず、データシート読んでもチンプンカンプン…

かなり探しまわってここに行き着きました。

julienrat/ili9488

ほぼ完全にコレに従って記述するだけです。

予めraspi-configでSPIをenableにしておきます。

$ sudo REPO_URI=https://github.com/notro/rpi-firmware rpi-update
$sudo reboot
$ sudo modprobe fbtft_device name=flexpfb rotate=180 fps=60 gpios=dc:18,reset:7,wr:17,cs:4,db00:22,db01:23,db02:24,db03:10,db04:25,db05:9,db06:11,db07:8
$ sudo modprobe flexfb width=480 height=320 buswidth=8 init=-1,0xb0,0x0,-1,0x11,-2,120,-1,0x3A,0x55,-1,0xC2,0x33,-1,0xC5,0x00,0x1E,0x80,-1,0x36,0x28,-1,0xB1,0xB0,-1,0xE0,0x00,0x04,0x0E,0x08,0x17,0x0A,0x40,0x79,0x4D,0x07,0x0E,0x0A,0x1A,0x1D,0x0F,-1,0xE1,0x00,0x1B,0x1F,0x02,0x10,0x05,0x32,0x34,0x43,0x02,0x0A,0x09,0x33,0x37,0x0F,-1,0x11,-1,0x29,-3
$ conf2fbmap 1 1

こんな感じになるかと思います。

f:id:pudding_info:20160822222641j:plain

起動時にロードできるように色々記述します。

$ sudo vim /etc/modules-load.d/fbtft.conf
spi-bcm2835
fbtft_device

$ sudo vim /etc/modules-load.d/flexfb.conf
flexfb

$ sudo vim /etc/modprobe.d/fbtft.conf
options fbtft_device name=flexpfb rotate=180 fps=60 gpios=dc:18,reset:7,wr:17,cs:4,db00:22,db01:23,db02:24,db03:10,db04:25,db05:9,db06:11,db07:8

$ sudo vim /etc/modprobe.d /flexfb.conf
options flexfb width=480 height=320 buswidth=8
init=-1,0xb0,0x0,-1,0x11,-2,120,-1,0x3A,0x55,-1,0xC2,0x33,-1,0xC5,0x00,0x1E,0x80,-1,0x36,0x28,-1,0xB1,0xB0,-1,0xE0,0x00,0x04,0x0E,0x08,0x17,0x0A,0x40,0x79,0x4D,0x07,0x0E,0x0A,0x1A,0x1D,0x0F,-1,0xE1,0x00,0x1B,0x1F,0x02,0x10,0x05,0x32,0x34,0x43,0x02,0x0A,0x09,0x33,0x37,0x0F,-1,0x11,-1,0x29,-3

$ sudo vim /boot/cmdline.txt
#以下を追記する
fbcon=map:10 fbcon=font:VGA8x8 fbcon=rotate:3

$ sudo reboot

こうすればうまくいくはず

f:id:pudding_info:20160822222730j:plain

なんか表示が崩れてる… しかもこれ以降一切変化なし。全く動作せず。

$ dmesg | grep fb1
[ 5.269990] graphics fb1: flexfb frame buffer, 480x320, 300 KiB video memory, 4 KiB DMA buffer memory, fps=100[/code]

/dev/fb1で動作しているらしいことは分かったのでfbiで画像を表示させてみよう…

[code]$ sudo apt-get install fbi
$ wget https://homepages.cae.wisc.edu/~ece533/images/baboon.png
$ sudo fbi -T 1 -a baboon.png
using "DejaVu Sans Mono-16", pixelsize=16.67 file=/usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf

f:id:pudding_info:20160822222815j:plain

はい変化なし!残念でした!

じゃねんじゃ…

どうにか動かないかと試行錯誤していきます。何か情報あればよろしくお願い致します。