鲁班猫信息: 板卡从如下地址采购:https://detail.tmall.com/item.htm?_u=110jcean66aa&id=694560455663&spm=a1z09.2.0.0.56f52e8dj4eUdI&skuId=5156903694777 鲁班猫官方文档和教程:https://doc.embedfire.com/linux/rk356x/quick_start/zh/latest/quick_start/lubancat/lubancat.html 视频教程:https://space.bilibili.com/356820657/channel/collectiondetail?sid=1352573 板子实物图如下: 烧录鲁班猫镜像 按照视频教程的说法这里使用EMMC烧录镜像,选择如下镜像: E:\Study\鲁班猫\3-Linux镜像\Debian系统镜像\通用镜像(extboot)-适用于所有板卡\20230712\LubanCat-rk3566\lubancat-rk3566-debian10-xfce-20230712_update\lubancat-rk3566-debian10-xfce-20230712_update.img 注意:先短路MR点,再重新上电,这时候软件能够识别到MASKROM设备(如上图),然后再断开MR点,再点击升级按钮进行烧录 镜像烧录成功后可以看到下面的打印说明系统运行起来了,但是因为默认的屏幕使用的是HDMI的,而我们接的屏幕是MIPI的,所以我们看不到显示: 这里用串口登录系统 修改屏幕为MIPI 输入"fire-config"命令进入配置界面: 进入屏幕配置: 这里选择1080P: 注意:这里使用空格键进行切换(请看如下说明:https://doc.embedfire.com/linux/rk356x/quick_start/zh/latest/quick_start/fireconfig/fireconfig.html) 选择finish并且退出,然后输入"reboot"命令重启: 可以看到屏幕正常显示了:
鲁班猫修改屏幕适配MIPI
旋转屏幕为横屏显示但是现在屏幕是竖屏的,我们的使用习惯是横屏的,进入系统,输入如下命令: “xrandr --output DSI-1 --rotate left”
Last login: Thu Feb 14 18:13:09 CST 2019 on ttyFIQ0 OOOOOOOOOOOOOOOOO OOOOOOOOOOOOO .OOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO\OOOOOOOOOOOO/OOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOO/OOOOOOOOOOOOO\OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO\ ̄/OOOOOOOOOOOOOOOOOOOOOOOOOOOOO\/OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO__ _____ | |__ | |______ _____ / ___| ____ | |_ | || | | || '_ \ / _ || _ || |/ _ || __| | |___| |_| || |_) || (_| || | | || |___| (_| || |_ |_____|\__._||_.__/ \__'_||_| |_| \____|\__'_| \__| Welcome to Debian GNU/Linux 10 (buster) (GNU/Linux 4.19.232 aarch64) * Documentation: http://doc.embedfire.com * Management: http://www.embedfire.comLinux lubancat 4.19.232 #7 SMP Mon Jul 10 16:21:10 CST 2023 aarch64System information as of Thu Feb 14 18:21:53 CST 2019System load:1.70 0.39 0.13Up time:0 minMemory usage: 20 % of 1957MBIP:CPU temp: 44°C GPU temp: 44°CUsage of /:42% of 7.1Groot@lubancat:~# xrand-bash: xrand: command not foundroot@lubancat:~# xrandrScreen 0: minimum 320 x 200, current 1080 x 1920, maximum 8192 x 8192DSI-1 connected primary 1080x1920+0+0 (normal left inverted right x axis y axis) 0mm x 0mm1080x1920 60.00*+root@lubancat:~# xrandr --helpusage: xrandr [options] where options are: --display or -d--help -o or --orientation-qor --query -s /x or --size /x -r or --rate or --refresh-vor --version -x(reflect in x) -y(reflect in y) --screen--verbose --current --dryrun --nograb --prop or --properties --fb x --fbmm x --dpi / --output--auto --mode--preferred --pos x --rate or --refresh--reflect normal,x,y,xy --rotate normal,inverted,left,right --left-of--right-of--above--below--same-as--set--scale x --scale-from x --transform ,,,,,,,, --off --crtc--panning x[++[/x++[////]]] --gamma :: --brightness--primary --noprimary --newmode [flags...]Valid flags: +HSync -HSync +VSync -VSync +CSync -CSync CSync Interlace DoubleScan --rmmode--addmode--delmode--listproviders --setprovideroutputsource--setprovideroffloadsink--listmonitors --listactivemonitors --setmonitor {auto|/x/++} {none|,,...} --delmonitor root@lubancat:~# xrandrScreen 0: minimum 320 x 200, current 1080 x 1920, maximum 8192 x 8192DSI-1 connected primary 1080x1920+0+0 (normal left inverted right x axis y axis) 0mm x 0mm1080x1920 60.00*+root@lubancat:~# xrandr --output DSI-1 --rotate leftxrandr: --rotate: invalid argument 'leftxr'Try 'xrandr --help' for more information.root@lubancat:~# xrandr --output DSI-1 --rotate left[ 511.134234] rockchip-vop2 fe040000.vop: [drm:vop2_crtc_atomic_disable] Crtc atomic disable vp0[ 511.177205] [drm:vop2_plane_atomic_check] *ERROR* Cluster0-win0 is invisible(src: pos[0, 0] rect[64 x 64] dst: pos[833, 1856] rect[64 x 64][ 511.250694] rockchip-vop2 fe040000.vop: [drm:vop2_crtc_atomic_enable] Update mode to 1080x1920p0, type: 16 for vp0[ 511.251431] dw-mipi-dsi fe060000.dsi: [drm:dw_mipi_dsi_encoder_enable] final DSI-Link bandwidth: 870 x 4 Mbpsroot@lubancat:~#可以看到屏幕变成了我们想要的横屏 但是这里发现触摸异常了
鲁班猫触摸异常
这里通过"fire-config"来修改触摸方向: 向左旋转90度: 选择finish推出后可以看到屏幕恢复正常:
鲁班猫触摸正常
屏幕和触摸方向修改永久保存但是我测试发现这种方式在下次重启的时候又恢复成原来的竖屏了,这里要找到能够保存屏幕设置的方法才行! 按照鲁班猫官方的说法要解决这个问题就是开启一个自启动服务,这个服务去修改屏幕的方向,虽然我觉得这个不是最正宗的办法,后来根据官方的提醒修改"/etc/X11/xorg.conf.d/20-modesetting.conf"文件实现永久修改屏幕和触摸方向,修改后的"20-modesetting.conf"文件如下:
root@lubancat:~# cat /etc/X11/xorg.conf.d/20-modesetting.confSection "Device"Identifier "Rockchip Graphics"Driver "modesetting"### Use Rockchip RGA 2D HW accel#Option "AccelMethod""exa"### Use GPU HW accelOption "AccelMethod""glamor"Option "DRI""2"### Set to "always" to avoid tearing, could lead to up 50% performance lossOption "FlipFB" "none"### Limit flip rate and drop frames for "FlipFB" to reduce performance lost#Option "MaxFlipRate""25"Option "NoEDID" "true"EndSectionSection "Screen"Identifier "Default Screen"Device "Rockchip Graphics"Monitor "Default Monitor"EndSection### Valid values for rotation are "normal", "left", "right"Section "Monitor"Identifier "Default Monitor"Option "Rotate" "left"EndSectionSection "InputClass" Identifier "Goodix Capacitive TouchScreen" MatchProduct "Goodix Capacitive TouchScreen" Option "TransformationMatrix" " 0 -1 1 1 0 0 0 0 1 EndSection其中"Monitor"修改了屏幕的方向,"InputClass"修改了触摸的方向,实现效果其实和这两句话一样:
xrandr --output DSI-1 --rotate leftxinput set-prop 9 'Coordinate Transformation Matrix' 0 -1 1 1 0 0 0 0 1最终效果如下:
鲁班猫屏幕和触摸永久保存
这里还有一个问题,就是开机的时候log会输出到屏幕上,经过上面的修改后桌面的屏幕是反过来了,但是打印log的时候屏幕还没有反,这里修改"/boot/uEnv/uEnv.txt"文件如下:
uname_r=4.19.232size=0x1000000cmdline="earlyprintk console=ttyFIQ0 console=tty1 fbcon=rotate:3 consoleblank=0 loglevel=7 rootwait rw rootfstype=ext4"enable_uboot_overlays=1#overlay_start#40pin#dtoverlay=/dtb/overlay/rk3566-lubancat-msata-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-i2c3-m0-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-i2c5-m0-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm8-m0-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm9-m0-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm10-m0-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm11-ir-m0-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm12-m0-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm13-m0-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm13-m1-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm14-m0-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm14-m1-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm15-ir-m0-overlay.dtbo#dtoverlay=/dtb/overlay/rk356x-lubancat-pwm15-ir-m1-overlay.dtbo"/boot/uEnv/uEnv.txt" 51L, 2575C written这里主要是增加了内容"fbcon=rotate:3" 最终效果如下:
鲁班猫开机log屏幕旋转