loja 发表于 2022-7-13 18:06:37

DM-M10R800 V2 显示屏模组 触摸横屏 如何修改?

本帖最后由 loja 于 2022-7-15 16:03 编辑

Android12的系统已经通过配置改为横屏,但是官方配套的DM-M10R800 V2 显示屏模组点击时还是竖屏状态,有大佬知道如何修改吗?


板子是rk3588j

jpchen 发表于 2022-9-2 09:09:28

目前最新的软件支持横竖屏切换,触摸也没有问题

loja 发表于 2022-10-28 19:48:02

jpchen 发表于 2022-9-2 09:09
目前最新的软件支持横竖屏切换,触摸也没有问题

git更新了最新的代码试了还是一样,
进入Android系统后,横竖屏切换是没有问题的;
但是通过修改默认值刷出来的横屏系统,触摸就会有问题。

这边修改默认值的地方是:
BoardConfig.mk里面的SF_PRIMARY_DISPLAY_ORIENTATION改为了270

liangyj 发表于 2022-11-1 17:18:39

loja 发表于 2022-10-28 19:48
git更新了最新的代码试了还是一样,
进入Android系统后,横竖屏切换是没有问题的;
但是通过修改默认值 ...

出现这样的问题是因为,显示方向改了,但触摸方向没改所造成的
1.添加以下修改(如果有了就不用改了)diff --git a/frameworks/native/services/inputflinger/reader/mapper/TouchInputMapper.cpp b/frameworks/native/services/inputflinger/reader/mapper/TouchInputMapper.cpp
index 29a0fc748ea..042358a5b51 100644
--- a/frameworks/native/services/inputflinger/reader/mapper/TouchInputMapper.cpp
+++ b/frameworks/native/services/inputflinger/reader/mapper/TouchInputMapper.cpp
@@ -692,7 +692,7 @@ void TouchInputMapper::configureSurface(nsecs_t when, bool* outResetNeeded) {
             // in the same orientation as the device. The input device orientation will be
             // re-applied to mSurfaceOrientation.
             const int32_t naturalSurfaceOrientation =
-                  (mViewport.orientation - static_cast<int32_t>(mParameters.orientation) + 4) % 4;
+                  (mViewport.orientation + static_cast<int32_t>(mParameters.orientation)) % 4;
             switch (naturalSurfaceOrientation) {
               case DISPLAY_ORIENTATION_90:
                     naturalLogicalWidth = mViewport.logicalBottom - mViewport.logicalTop;
~
~
~2.添加触摸屏的配置文件,文件中放置touch.orientation (默认触摸的方向)的参数
(1)如果是mipi屏可以在板子/system/usr/idc/添加名为himax-touchscreen.idc的文件
文件中添加touch.orientation = ORIENTATION_0(这里的触摸方向是0,如果你要改成90度,则改为ORIENTATION_90,180度改为ORIENTATION_180),方向与默认显示方向要一致。
也可以在sdk的frameworks/base/data/keyboards/下添加上述的配置文件,编译后烧写进板子。


(2)如果烧写的是hdmi的固件,用的是hdmi屏,在上述同样的路径添加名为ILITEK_ILITEK-TP.idc的文件,文件中属性要按上面的配置一样。


(3)如果烧写的是支持mipi的固件,插进的是hdmi屏,hdmi的触摸方向要设为0(不放置hdmi的配置文件或者配置文件里的默认触摸方向改为0)


3.补充
可以在板子终端输入dumpsys input来查看输入设备的设备名,我们的配置文件是根据屏幕设备名来命名的
如图所示当输入命令后,我们可以找到我插入mipi屏的一些设备信息(这个是我已经放置好配置文件了,所以ConfigurationFile那一项才有信息,如果没有放置配置文件的话,ConfigurationFile那一项是空的),我这里的mipi触摸的设备名为himax-touchscreen,所以对应的配置文件命名为himax-touchscreen.idc


如果放置了配置文件还出现问题要看一下配置文件名与设备名是否对应,注意如果设备名中有空格,配置文件名要将空格改为"_",如设备名为ILITEK ILITEK-TP,那么配置的文件名要命名为ILITEK_ILITEK-TP.idc。
页: [1]
查看完整版本: DM-M10R800 V2 显示屏模组 触摸横屏 如何修改?