Waveshare3.2インチLCD 装着
Raspberry Pi に”3.2インチ”のLCDを付ければ大きさがぴったりで、Raspberry Pi を携帯して使用するには便利ではないかと、Amazonで”Waveshare 3.2inch RPi LCD (V3)”を購入。
スクリーンへの表示はうまく行ったが、タッチスクリーンが機能せず、四苦八苦する。
2015-05-05-raspbian-wheezy ではうまく行かず、2015-02-16-raspbian-wheezy でセットアップするとOKとなる。(理由、不明。)
Raspberry Pi と Waveshare 3.2inch RPi LCD (V3)。 Touch screen to move crosshair
LCDは /dev/fb1 として、タッチパネルは /dev/input/mouse1 として認識される。
sudo nano /etc/modules ← に以下の行を追加。
ads7846_device model=7846 cs=1 gpio_pendown=17 speed=1000000 keep_vref_on=1 swap_xy=1
pressure_max=255 x_plate_ohms=60 x_min=200 x_max=3900 y_min=200 y_max=3900
fbtft側のrotate設定に合わせて、
ads7846側の swap_xy
も適宜設定(値は0または1)が必要らしい。
ここからの作業は、LCDに表示したまま、Tera Term を使用して行うとやり易い。
①. “event test” & “touchscreen library” をインストールする。No device specified, trying to scan all of /dev/input/event*
Not running as root, no devices may be available.
Available devices:
/dev/input/event0: ADS7846 Touchscreen
Select the device event number [0-0]: 0
Input driver version is 1.0.1
Input device ID: bus 0x0 vendor 0x0 product 0x0 version 0x0
Input device name: "ADS7846 Touchscreen"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 330 (BTN_TOUCH)
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Value 0
Min 200
Max 3900
Event code 1 (ABS_Y)
Value 0
Min 200
Max 3900
Event code 24 (ABS_PRESSURE)
Value 0
Min 0
Max 255
Properties:
Testing ... (interrupt to exit)
sudo apt-get install dh-autoreconf
sudo apt-get install libx11-dev libxext-dev libxi-dev x11proto-input-dev
cd ~
git clone https://github.com/tias/xinput_calibrator
cd xinput_calibrator/
./autogen.sh
make
sudo make install
ここで、Raspberry Pi に接続しているキーボードとマウスを利用して、
アクセサリの中のLXTerminalを起動し、
xinput_calibrator
と、入力する。 → 画面の四隅に十字マークが出るのでペンでタッチ。
タッチが終わると、画面に設定値が表示されるので、それをメモし、
Section "InputClass"
Identifier "calibration"
MatchProduct "ADS7846 Touchscreen"
Option "Calibration" "302 3862 3893 132" ← メモした値
Option "SwapAxes" "0"
EndSection
を追加。
fbcon=map:10 fbcon=rotate:0 fbcon=font:ProFont6x11
以上。
(2015.05.27)