터치스크린이 특정 영역에서는 터치가 안되는 현상이 발생
안녕하세요 몇주전부터 터치스크린 포팅한다고 씨름중이네요
개발보드는 비글본블랙이구요
터치스크린은 waveshare사의 7인치 정전식 터치 LCD입니다.(터치컨트롤러는 goodix사의 gt911)
터치스크린은 I2C통신에 의해 작동되구요(비글본에서 핀 4개 따서 씁니다. i2c_scl, i2c_sda, reset, interrupt)
디바이스 트리 부팅시 오버레이 시켰구요
디바이스 드라이버 역시 부팅시 모듈 올라가게 설정했습니다.
ts_calibrate 후 ts_test_mt(멀티터치용) 돌려본 결과입니다..
4개의 모서리는 심혈을 기울여야 터치가 되고
보시는바와 같이 기울어진것(?)같고 특정 영역이 터치가 안되는거 같네요
후 어찌해야할지 ㅠㅠ
애초부터 드라이버단에서 raw데이터 받아들일 때, 조금씩 터치가 튄다는 느낌을 받고 있어요
오늘 하루죙일 씨름해도 답이 나오지 않아 함께 고민해보자고 글 올려봅니다
저두 열심히 스터디하며 해결하려 노력하구 있어요!!ㅎㅎ
tslib의 소프트웨어적인 필터로는 안될것같고 다른 방면으로 해결책을 찾아봐야할텐데,,
p.s: 환경변수 설정입니다.
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_CONSOLEDEVICE=none
export TSLIB_TSDEVICE=/dev/input/event1
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_PLUGINDIR=/usr/lib/ts/
export QWS_MOUSE_PROTO=tslib:/dev/input/event1
첨부 | 파일 크기 |
---|---|
![]() | 594.67 KB |
다양한 원인이 있을거라 예상합니다. 우선 goodix
다양한 원인이 있을거라 예상합니다. 우선 goodix device driver를 다른 버젼으로 바꿔서 테스트해 보세요.
참고로 저는 v2.8.0.1과 v2.8.0.2를 안드로이드 플렛폼에 사용합니다.
혹시 가능하다면, chip vendor에 goodix firmware version 체크하셔서 업데이트도 해보세요.
펌웨어 버전은
2.8.0.1버전이네요
하지만 제 비글본 블랙은 현재 안드로이드가 아니라 리눅스 데비안 os이기 때문에 https://github.com/goodix/goodix_gt9xx_public 링크의 디바이스 드라이버를 활용하여 디바이스 드라이버 모듈로 컴파일 후 insmod로 모듈 올렸습니다.
안드로이드 플랫폼용으로는 2.8.0.2버전의 펌웨어던데.. 호환되지않을것 같아서 시도하진 않았습니다.
터치 IC에도 펌웨어가 들어가는데 보통 디바이스
터치 IC에도 펌웨어가 들어가는데 보통 디바이스 드라이버 작업자하고 터치 IC 업체하고 같이 튜닝(?)을 합니다. 일부 영역이 이상하면 드라이버에서 보정해줄수도 있는데 보통 터치 IC 업체의 지원이 없으면 수정이 불가능합니다.
그런것 같습니다.
제가 포팅한 디바이스 드라이버는 goodix 의 github에서 받아서 모듈 컴파일했습니다.
여전히 문제를 못 찾고 있어 동일 터치LCD 하나 더 주문해서 기다리고 있는 상황이네요
무언가 뾰족한 수가 없을까요 정말 하드웨어만의 문제일까요
답답합니다,,
댓글 달기