-
Notifications
You must be signed in to change notification settings - Fork 795
/
LCD154-show
executable file
·151 lines (139 loc) · 4.74 KB
/
LCD154-show
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
#!/bin/bash
sudo ./system_backup.sh
if [ -f /etc/X11/xorg.conf.d/40-libinput.conf ]; then
sudo rm -rf /etc/X11/xorg.conf.d/40-libinput.conf
fi
#if [ ! -d /etc/X11/xorg.conf.d ]; then
#sudo mkdir -p /etc/X11/xorg.conf.d
#fi
#sudo cp ./usr/mhs35-overlay.dtb /boot/overlays/
#sudo cp ./usr/mhs35-overlay.dtb /boot/overlays/mhs35.dtbo
#root_dev=`grep -oPr "root=[^\s]*" /boot/cmdline.txt | awk -F= '{printf $NF}'`
#if test "$root_dev" = "/dev/mmcblk0p7";then
#sudo cp -rf ./boot/config-noobs-nomal.txt ./boot/config.txt.bak
#else
#sudo cp -rf ./boot/config-nomal.txt ./boot/config.txt.bak
#sudo echo "hdmi_force_hotplug=1" >> ./boot/config.txt.bak
#fi
source ./system_config.sh
#sudo sed -i -e 's/dtoverlay=vc4-kms-v3d/#dtoverlay=vc4-kms-v3d/' ./boot/config.txt.bak
sudo echo "hdmi_force_hotplug=1" >> ./boot/config.txt.bak
sudo echo "hdmi_cvt 300 300 60 1 0 0 0" >> ./boot/config.txt.bak
sudo echo "hdmi_group=2" >> ./boot/config.txt.bak
sudo echo "hdmi_mode=1" >> ./boot/config.txt.bak
sudo echo "hdmi_mode=87" >> ./boot/config.txt.bak
sudo echo "display_rotate=0" >> ./boot/config.txt.bak
sudo echo "gpio=6,19,5,26,13,21,20,16=pu" >> ./boot/config.txt.bak
sudo cp -rf ./boot/config.txt.bak /boot/config.txt
#sudo cp -rf ./usr/99-calibration.conf-mhs35-90 /etc/X11/xorg.conf.d/99-calibration.conf
#sudo cp -rf ./usr/99-fbturbo.conf /usr/share/X11/xorg.conf.d/99-fbturbo.conf
#if test "$root_dev" = "/dev/mmcblk0p7";then
#sudo cp ./usr/cmdline.txt-noobs /boot/cmdline.txt
#else
#sudo cp ./usr/cmdline.txt /boot/
#fi
#sudo cp ./usr/inittab /etc/
#sudo cp ./boot/config-mhs35.txt /boot/config.txt
sudo touch ./.have_installed
echo "gpio:resistance:LCD154:90:300:300" > ./.have_installed
#FBCP install
if [ -d ./fbcp-ili9341 ]; then
sudo rm -rf ./fbcp-ili9341
fi
wget --spider -q -o /dev/null --tries=1 -T 10 https://github.com
if [ $? -eq 0 ]; then
#sudo cp -rf ./usr/99-fbturbo-fbcp.conf /usr/share/X11/xorg.conf.d/99-fbturbo.conf
sudo apt-get install cmake 2> error_output.txt
result=`cat ./error_output.txt`
echo -e "\033[31m$result\033[0m"
grep -q "^E:" ./error_output.txt && exit
#sudo rm -rf rpi-fbcp
sudo git clone https://github.com/juj/fbcp-ili9341.git
sudo mkdir ./fbcp-ili9341/build
cd ./fbcp-ili9341/build/
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=10 -DWAVESHARE_ST7789VW_HAT=ON -DBACKLIGHT_CONTROL=OFF -DSTATISTICS=0 -DUSE_DMA_TRANSFERS=OFF ..
sudo make -j
sudo install fbcp-ili9341 /usr/local/bin/fbcp
cd - > /dev/null
sudo cp -rf ./etc/rc.local /etc/rc.local
else
type fbcp > /dev/null 2>&1
if [ $? -eq 1 ]; then
sudo cp -rf ./usr/fbcp-ili9341 ./
sudo mkdir ./fbcp-ili9341/build
cd ./fbcp-ili9341/build/
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=10 -DWAVESHARE_ST7789VW_HAT=ON -DBACKLIGHT_CONTROL=OFF -DSTATISTICS=0 -DUSE_DMA_TRANSFERS=OFF ..
sudo make -j
sudo install fbcp-ili9341 /usr/local/bin/fbcp
cd - > /dev/null
sudo cp -rf ./etc/rc.local /etc/rc.local
fi
fi
#KEY install
wget --spider -q -o /dev/null --tries=1 -T 10 http://mirrors.zju.edu.cn
if [ $? -eq 0 ]; then
sudo apt-get install python-xlib 2> error_output.txt
else
dpkg -l | grep python-xlib
if [ $? -eq 1 ]; then
sudo dpkg -i -B ./python-xlib_0.23-2_all.deb 2> error_output.txt
fi
fi
result=`cat ./error_output.txt`
echo -e "\033[31m$result\033[0m"
grep -q "^E:" ./error_output.txt && exit
grep -q "error:" ./error_output.txt && exit
wget --spider -q -o /dev/null --tries=1 -T 10 https://pypi.org
if [ $? -eq 0 ]; then
sudo pip install PyMouse 2> error_output.txt
result=`cat ./error_output.txt`
echo -e "\033[31m$result\033[0m"
grep -q "^E:" ./error_output.txt && exit
grep -q "error:" ./error_output.txt && exit
else
pip list | grep PyMouse
if [ $? -eq 1 ]; then
sudo tar xvzf ./PyMouse-1.0.tar.gz
sudo python PyMouse-1.0/setup.py install
fi
fi
if [ ! -d ~/.config/autostart ]; then
sudo mkdir -p ~/.config/autostart
fi
if [ ! -f ~/.config/autostart/local.desktop ]; then
sudo cp -rf ./usr/local.desktop ~/.config/autostart
fi
#evdev install
#nodeplatform=`uname -n`
#kernel=`uname -r`
#version=`uname -v`
#if test "$nodeplatform" = "raspberrypi";then
#echo "this is raspberrypi kernel"
#version=${version##* }
#version=${version#*#}
#echo $version
#if test $version -lt 2017;then
#echo "reboot"
#else
#echo "need to update touch configuration"
#sudo dpkg -i -B ./xserver-xorg-input-evdev_1%3a2.10.6-1+b1_armhf.deb 2> error_output.txt
#sudo apt-get install xserver-xorg-input-evdev 2> error_output.txt
#result=`cat ./error_output.txt`
#echo -e "\033[31m$result\033[0m"
#grep -q "error:" ./error_output.txt && exit
#sudo cp -rf /usr/share/X11/xorg.conf.d/10-evdev.conf /usr/share/X11/xorg.conf.d/45-evdev.conf
#echo "reboot"
#fi
#else
#echo "this is not raspberrypi kernel, no need to update touch configure, reboot"
#fi
sudo sync
sudo sync
sleep 1
if [ $# -eq 1 ]; then
sudo ./rotate.sh $1
elif [ $# -gt 1 ]; then
echo "Too many parameters"
fi
echo "reboot now"
sudo reboot