【超シンプル】Rasberry Piと液晶画面をつなげたとき、表示が明らかにズレている時の治し方

Linuxと電子部品と音楽のブログ

【超シンプル】Rasberry Piと液晶画面をつなげたとき、表示が明らかにズレている時の治し方

こんにちはときえのきです。

先日、ラズパイ用に5インチのタッチ液晶を購入したんですよね。そしていざ電源を入れてみたら、なんだよこれ!初期不良か!?!?!?ってなりました。
具体的に言うと、以下の画像のようになりました。
画面の向きは設定から普通に変えればいいとして、これだけ表示位置がズレているのは絶対おかしいと。
ということで、今回はこいつの治し方です。超簡単です。

症状

とりあえずドライバをあてる

一応、ラズパイではドライバを入れると治る伝説が結構信じられているので、ドライバを入れてみました。
ちなみにこの液晶は、以下のサイトの物です。

https://www.waveshare.com/wiki/5inch_HDMI_LCD

Waveshare製です。秋葉原の千石電商にて購入。5000円くらいかな?
ここに書いてある通りにドライバをインストールしたり、画面の向きを変えたりもしましたが意味はありませんでした。というかタッチさえしなければドライバなしで完璧に動作するの強すぎる。タッチを反応させるにはドライバが必要です。


治し方

ここからが本題です。治していきます。

まずは、Rasberry Piの/boot/config.txtを開きます。
SSHが使える場合は、以下のコードを使えます。

sudo nano /boot/config.txt

SSHが不可能またはわからない場合は、ラズパイ本体の電源を切るというか切断し、MicroSDカードをパソコンに読み込ませます。
Windowsの場合は、マイコンピュータの場所に「boot」という名前のメディアが出てくるので、その中にあるconfig.txtをメモ帳とかで開きます。

そうしたらファイルの一番下まで移動し、改行してから以下のコードを入力します。

hdmi_cvt 480 800 60 6 0 0 0

これで上書き保存(SSHとnanoを使用した場合、Ctrl + Oでエンターします)すると、データが保存されるので再起動します。
そうすると、治っているはずです。
ちなみに、以下のコマンドを使って画面の向きを変えられるのですが、これをやる度に上記の設定はリセットされます。あまり高頻度で画面の向きを変更するには適していないようですね。

治した

解説

折角なので、Raspberry Piの/boot/config.txtとhdmi_cvtについて解説します。
/boot/config.txtは、デスクトップコンピュータで言うUEFI/BIOSの設定が保持されている場所です。当然、外部から知らないうちにここの設定を変えられた場合、最悪そのまま再起動ができなくなります。まあ、それくらいならラズパイのイメージ開いてその中にあるデフォルト状態のconfig.txtを上書きで書き込めばいいんですけどね。

そしてhdmi_cvtは、画面にどのような感じでグラフィックを出力するかみたいなのを設定します。(厳密には微妙に違う)
デフォルトではhdmi_cvt 800 480 60 6 0 0 0なのですが、今回の対処法では480と800を入れ替えました。
ここまでくれば皆様わかるかと思いますが、最初の二つの数字は解像度を表しています。そうですこの画面、実は縦で使うことを想定して作られていたのです…(ちなみにデフォルトの向きで画面が見えるように机に置くと、USBポートが埋まります)これはちょっとした落とし穴。画面を横にする方法は、以下のリンクのドライバを充ててから同リンクにあるコマンドを実行するだけです。

https://www.waveshare.com/wiki/5inch_HDMI_LCD

やったぜ。

最後に

いかがでしたか?
ときえのきはこれからも日々テキトーにゆるーくブログを書いていくのでよろしくお願いします!

 

2件の返信

  1. Gapashu より:

    いつも楽しみに読ませてもらってます!
    あの…とても細かいところなのですが、「解説」の部分で「この画面、実は盾で使うことを想定…」と「縦」が「shield」になってます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Please note that posts that do not contain Japanese are ignored. (Spam measures) (コメントには日本語を含めてください)