240x240, 1.3inch IPS LCD display HAT for Raspberry Pi

WaveShareの1.3インチ 240×240 IPS LCDディスプレイHATについてのメモです。
秋葉原の千石電商で買いました。https://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-5BKD
Waveshareの商品説明 https://www.waveshare.com/1.3inch-lcd-hat.htm
手持ちのRaspberry Pi Zero WHに接続してみました。
公式のドキュメントが間違っていて動作しなかったので使ってみて分かった事をまとめてみました。

window.jpg

SPIを有効にする

RaspbianまたはRetroPie共通設定

以下は設定済みのRaspbianまたはRetroPieに追加設定します。

ドライバをダウンロードしてビルド、インストールする

piユーザーでログイン後に以下の操作を実行する

$ sudo apt-get install cmake
$ cd ~
$ git clone https://github.com/juj/fbcp-ili9341.git
$ cd fbcp-ili9341
$ mkdir build
$ cd build
$ cmake -DSPI_BUS_CLOCK_DIVISOR=6 -DWAVESHARE_ST7789VW_HAT=ON -DSTATISTICS=0 ..
$ make -j
$ sudo install fbcp-ili9341 /usr/local/bin/fbcp-ili9341
$ sudo nano /etc/rc.local
exit 0の前に「fbcp-ili9341 &」を追加する。
------------------------------
fbcp-ili9341 &
exit 0
------------------------------
Ctrlキーを押しながらoを押してEnterで保存する。
Ctrlキーを押しながらxを押して終了する。
$ sudo nano /boot/config.txt
下の設定を追加する。
------------------------------
hdmi_group=2
hdmi_mode=87
hdmi_cvt=240 240 60 1 0 0 0
hdmi_force_hotplug=1
------------------------------
Ctrlキーを押しながらoを押してEnterで保存する。
Ctrlキーを押しながらxを押して終了する。
$ sudo reboot
以上の操作でOSが再起動してHAT上のディスプレイに表示されます。
この設定ではHAT上のディスプレイには表示されますがHDMI端子にケーブルを接続しても映らなくなってしまいます。
(他の方は映ってる人もいるのかな??私の環境では240x240の設定だとHDMI側(Dell P2715Q)は真っ暗でダメでした。)
hdmi_cvt=256 240 60 1 0 0 0
に設定するとHDMI端子に接続したディスプレイでも表示されるようになりましたが、
横256ドットが240ドットに縮小されるためドットが潰れて表示されます。
cmakeのオプションに-DDISPLAY_CROPPED_INSTEAD_OF_SCALING=ONを追加するとドットが潰れることは無くなります。
しかし240x240からはみ出た右側16ドットの部分は表示されません。
私はドットが潰れないようにこのオプションを付けています。
ドットが潰れて少しのぼやけを容認して画面全体を表示するのか、16ドットはみ出てでもドットが潰れないようにするかの違いです。

RetroPieの設定

hydlidespecial.jpg
HATにはボタンが3つ+方向キー押し込みの4つしかないためファミコンでさえボタンが足りません。
ゲームは動作するけど遊ぶことは難しいです。
私はSELECTキーを設定しなかったのでハイドライドスペシャルのウインドウが開けません…
しかも音が出ません。残念。
あとHATの下に見えるのはハイドライドスペシャルのファミコンカセットです。念のため。

コントローラーの設定

RetroPieを終了してコマンドプロンプトで以下の操作を実行する。

$ cd ~
$ wget https://raw.githubusercontent.com/adafruit/Raspberry-Pi-Installer-Scripts/master/retrogame.sh
$ sudo bash retrogame.sh
1を選ぶ
REBOOT NOW? [y/N]と表示されたら「y」を選んでEnterを押して再起動する。
$ sudo nano /boot/retrogame.cfg
キーの設定を以下のように書き換える。
------------------------------
LEFT       5  # Joypad left
RIGHT     26  # Joypad right
DOWN      19  # Joypad down
UP         6  # Joypad up
Z         16  # KEY3 button
X         20  # KEY2 button
SPACE     13  # Joystick Press button
ENTER     21  # KEY1 button
------------------------------
Ctrlキーを押しながらoを押してEnterで保存する。
Ctrlキーを押しながらxを押して終了する。
$ sudo reboot

前に戻る


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS