Raspberry Pi2 3.5inchタッチスクリーンディスプレイの設定

3.5inchタッチスクリーンディスプレイの設定をします。
これあればHDMIモニターもPCも必要なしでも使えそう。

https://github.com/cdario/waveshare-3.5-Spotpear-for-Rpi
http://www.circuitbasics.com/setup-lcd-touchscreen-raspberry-pi/

上記アドレスの記述を参考に設定。

.LCDスクリーン セットアップ

 1.SPIの有効化

  $ sudo raspi-config

  Advanced OptionsからSPIを有効化し再起動。

 2.フレームバッファデバイスの変更

  $ sudo nano -w /usr/share/X11/xorg.conf.d/99-fbturbo.conf

 
  /dev/fb0を/dev/fb1に変更。 (/dev/fb0はHDMI、/dev/fb1はLCDに該当する)

 3.タッチスクリーンを使用するためのドライバとカーネルモジュールを入れる

  $ sudo REPO_URI=https://github.com/notro/rpi-firmware rpi-update
  $ sudo /sbin/reboot

 4.テスト

  $ sudo modprobe
flexfb width=320 height=480 regwidth=16 init=-1,0xb0,0x0,-1,0x11,-2,250,-1,0x3A,0x55,-1,0xC2,0x44,-1,0xC5,0x00,0x00,0x00,0x00,-1,0xE0,0x0F,0x1F,0x1C,0x0C,0x0F,0x08,0x48,0x98,0x37,0x0A,0x13,0x04,0x11,0x0D,0x00,-1,0xE1,0x0F,0x32,0x2E,0x0B,0x0D,0x05,0x47,0x75,0x37,0x06,0x10,0x03,0x24,0x20,0x00,-1,0xE2,0x0F,0x32,0x2E,0x0B,0x0D,0x05,0x47,0x75,0x37,0x06,0x10,0x03,0x24,0x20,0x00,-1,0x36,0x28,-1,0x11,-1,0x29,-3
  $ sudo modprobe fbtft_device debug=3 rotate=90 name=flexfb speed=16000000 gpios=reset:25,dc:24

  (青字は一行)
  それまで白く光っていたディスプレイが黒くなれば成功。

 5.起動時にドライバを読み込むよう設定


  $ sudo nano -w /etc/modules

   # waveshare 3.5inch LCD touchscreen
   flexfb width=320 height=480 regwidth=16 init=-1,0xb0,0x0,-1,0x11,-2,250,-1,0x3A,0x55,-1,0xC2,0x44,-1,0xC5,0x00,0x00,0x00,0x00,-1,0xE0,0x0F,0x1F,0x1C,0x0C,0x0F,0x08,0x48,0x98,0x37,0x0A,0x13,0x04,0x11,0x0D,0x00,-1,0xE1,0x0F,0x32,0x2E,0x0B,0x0D,0x05,0x47,0x75,0x37,0x06,0x10,0x03,0x24,0x20,0x00,-1,0xE2,0x0F,0x32,0x2E,0x0B,0x0D,0x05,0x47,0x75,0x37,0x06,0x10,0x03,0x24,0x20,0x00,-1,0x36,0x28,-1,0x11,-1,0x29,-3
   fbtft_device debug=3 rotate=90 name=flexfb speed=16000000 gpios=reset:25,dc:24

  (青字は一行)


 6.GPUメモリとフレームバッファコンソールの設定

  $ sudo nano -w /boot/config.txt

   gpu_mem=128

  $ sudo nano -w /boot/cmdline.txt

   fbcon=map:1 fbcon=font:ProFont6x11



.タッチスクリーンの有効化

 1.ライブラリのインストール

  $ sudo apt-get -y install xinput evtest libts-bin

 
2.ここで、READMEには/etc/modulesに
  ads7846_device model=7846 cs=1〜を記載するように言われていますが、
  調べてみると最新カーネルでは
ads7846_deviceはなくなったので、
  overlayを使いましょうとなったみたい?
  ここ(https://github.com/notro/fbtft/wiki/FBTFT-RPI-overlays)を読むと、
  Waveshare 3.2"/3.5":https://github.com/swkim01/waveshare-dtoverlays
  から.dtbファイルをコピーして設定してね、と言うことが書いてある。

 3.先ずはリポジトリのクローン

  $
git clone https://github.com/swkim01/waveshare-dtoverlays.git

 4.overlayのファイルwaveshare35a-overlay.dtbをコピー

  $ sudo cp waveshare-dtoverlays/waveshare35a-overlay.dtb /boot/overlays/

 5./boot/config.txtに設定

  $ sudo nano -w /boot/config.txt

   
dtoverlay=waveshare35a

 

  パラメーター設定も追加。詳しい事はよく分からないので、あちこちから参考して。


   dtoverlay=waveshare35a:cs=1,speed=200000,penirq=17,xmin=200,ymin=200,xmax=3900,ymax=3900,pmax=255,xohms=100

  再起動。

 6.キャリブレーションツールのインストール

  $ cd /tmp
  $ wget http://tronnes.org/downloads/xinput-calibrator_0.7.5-1_armhf.deb
  $ sudo dpkg -i -B xinput-calibrator_0.7.5-1_armhf.deb
  $ rm xinput-calibrator_0.7.5-1_armhf.deb
  $ sudo reboot

 7.キャリブレーションデータの取得

  Xの起動後、ターミナルを開きキャリブレーションツールを実行。(要USBキーボード)

  $ DISPLAY=:0.0 xinput_calibrator

 8.パラメーターの設定

  取得したデータ(3924,239,252,3902)をもとに作成。

  $ sudo nano -w /usr/share/X11/xorg.conf.d/99-calibration.conf

   Section "InputClass"
          Identifier "calibration"
          MatchProduct "ADS7846 Touchscreen"
          Option "Calibration" "3924 239 252 3902"
          Option  "SwapAxes"      "1"
   EndSection

  再起動して設定完了。


スポンサーサイト

  • 2017.07.23 Sunday
  • -
  • 22:38
  • -
  • -
  • by スポンサードリンク


カレンダー

S M T W T F S
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
<< July 2017 >>
GPV

最近の記事

カテゴリー

archives

profile

search this site.

others

mobile

qrcode

powered

無料ブログ作成サービス JUGEM

PR