安卓手机配置KlipperScreen相关代码
路特皮卡
2022年02月22日 12:29

以下是对应流程的命令和相关脚本,仅供参考。


安装ADB


创建UDEV规则:


加载规则


查看手机设备


安装安卓程序

APK下载地址:

下载1.11.40版本的XSDL 


创建KlipperScreen服务脚本

在klipperScreen同目录下创建 launch_klipperscreen.sh

#!/bin/bash

# forward local display :100 to remote display :0

adb forward tcp:6100 tcp:6000

adb shell dumpsys nfc | grep 'mScreenState=&#​39; | grep OFF_LOCKED > /dev/null 2>&1

if [ $? -lt 1 ]

then

echo "Screen is OFF and Locked. Turning screen on..."

adb shell input keyevent 26

fi

adb shell dumpsys nfc | grep 'mScreenState=&#​39; | grep ON_LOCKED> /dev/null 2>&1

if [ $? -lt 1 ]

then

echo "Screen is Locked. Unlocking..."

adb shell input keyevent 82

fi

# start xsdl

adb shell am start x.org.server/.MainActivity

ret=1

timeout=0

echo -n "Waiting for x-server to be ready "

while [ $ret -gt 0 ] && [ $timeout -lt 60 ]

do

xset -display :100 -dpms s off -q > /dev/null 2>&1

ret=$?

timeout=$( expr $timeout + 1 )

echo -n ".&#​34;

sleep 1

done

echo "&#​34;

if [ $timeout -lt 60 ]

then

DISPLAY=:100 /home/pi/.KlipperScreen-env/bin/python screen.py

exit 0

else

exit 1

fi


修改启动脚本

[Unit]

Description=KlipperScreen

After=moonraker.service

StartLimitIntervalSec=0

[Service]

Type=simple

Restart=always

RestartSec=1

User=pi

WorkingDirectory=/home/pi/KlipperScreen

ExecStart=/home/pi/KlipperScreen/launch_klipperscreen.sh

[Install]

WantedBy=multi-user.target


重新加载守护进程


启动服务