2021年10月2日土曜日

Waveshare 4inch HDMI LCD (800×480)

Waveshare 4inch HDMI LCDをRaspberry Pi 4に接続してRetroPieで使用できるようにするのが思いのほか面倒だったのでメモを残しておきます。


4inch HDMI LCD で RetroPie


簡単に接続できるだろうと思いHDMIタイプの4inch HDMI LCDを購入してみたのですが、Raspberry Pi 4で使用するには少し苦労しました。
※今回はタッチハネルの機能は使用せずHDMI接続のみで使用しています。




4inch HDMI LCD (裏面)
4inch HDMI LCD (裏面)


・Wiki

・LCD wiki




Windows10 HDMI接続
Windows10 HDMI接続



Windows10のPCではHDMI接続するだけで使用することが出来ました。





上手くいかなかった方法


上手くいかなかった方法も書いておきます。
ここは読み飛ばしてもらっていいです。

まずは公式のRaspberry Pi 4での使用方法を試してみました。
タッチパネルは使用しませんが、タッチドライバをインストールしてみます。




EmulationStationの起動失敗
EmulationStationの起動失敗




この方法はEmulationStationが起動せずエラーが出てコマンドで止まります。

次に一応下記RetroPie用の方法でも試してみましたが、そもそもPi4用は用意されていないのでやはり上手くいきませんでしたがそのうちにでもPi4用も出来るかもしれませんのでリンクしておきます。






なんとか動いた方法


システムの変更

ここまで読み飛ばしてもらっていいと思います。
正しい方法ではないかもしれませんのが取り敢えず表示はできた方法を記載します。

タッチパネルは使用しませんのでタッチドライバはインストールしません。

PCでSDカード上のconfig.txtに追記します。

config.txt
 [pi4] dtoverlay=vc4-fkms-v3d max_framebuffers=2 dtparam=audio=on hdmi_group=2 hdmi_mode=1 hdmi_mode=87 hdmi_timings=480 0 40 10 80 800 0 13 3 32 0 0 0 60 0 32000000 3 #display_rotate=3 hdmi_drive=1 hdmi_force_hotplug=1

公式では”dtoverlay=vc4-fkms-v3d”をコメントアウトすることになっているが
結局”dtoverlay=vc4-fkms-v3d”を入れないとEmulationStationの起動ができなかった。





config.txt 変更
config.txt 変更



これで4inch HDMI LCDに表示することが出来ます…がこのLCDは基本は縦での使用が基本ですので画面が縦に表示されます。
この表示でも問題なければこのままでもいいと思いますが、これを横画面に変更してみます。

ちなみにconfig.txtに”display_rotate=3”を追記しても”dtoverlay=vc4-fkms-v3d”を使用していると設定は反映されません。


PCでSDカード上のcmdline.txtに追記します。

cmdline.txt
video=HDMI-A-1:480x800M@60,rotate=90
このパラメータを追記するとコマンド画面も横画面になると思います。




EmulationStationの変更

直接書き換えてもいいのですが、起動している状態でネットワーク上の他PCで書き換えるが簡単です。

configs/all/autostart.sh
emulationstation --screenrotate 3 --screensize 800 480 #auto



autostart.sh 変更
autostart.sh 変更



これでEmulationStationは横画面にできました。
しかしゲームを起動するとやはり縦画面のままだと思います。


RetroArchの変更

最後にRetroArchを変更します。
これも他PCからが簡単ですね。


configs/all/retroarch.cfg
aspect_ratio_index = 21 video_allow_rotate=yes video_rotation = "1"
これでゲーム画面も横向きになったと思います。





lr-flycast
lr-flycast



但しこの方法ではRetroArchと設定が紐づいていない一部のエミュレータが縦画面のままなので個別の設定が必要となるようです。
例えばドリームキャスト用のエミュレータではreicastは縦画面になってしまいますがlr-flycastでは横画面になります。

0 件のコメント:

コメントを投稿