前言
的时候博主入手了人生中第一款树莓派,型号B+,玩了一段时间后看到微雪有出3.5寸LCD显示屏,虽然是电阻屏,但是依然很棒。当时候博主对Linux并不是很熟,所以只能使用官方提供的树莓派镜像,已经集成了LCD屏幕的驱动,那个时候官方提供下载还是使用的百度网盘,并没有提供单独的驱动包,百度网盘也没有像现在这样到了没有会员几乎无法下载的地步。
当时玩树莓派基本上都是用来做跟wifi和GSM相关的东西,觉得LCD屏没啥用处,索性直接拆掉丢箱底,树莓派刷入kali fro arm,命令行也挺好。
多年后的今天,博主在整理房间杂物的时候翻出来那块尘封已久的LCD屏幕还有许久没有碰过的B+,不禁感叹科技的进步,现在树莓派都出到3B+了,版本迭代很快,新版本的性能是旧版无法比拟的,博主这几年陆续入手了2B,zero,3B+,在今天看来B+的性能显然已经很难带的动庞大的系统,但依然不妨碍我对她进行一番调教,廉颇老矣尚能饭否?
开机
找出电源适配器,这里使用了LCD屏幕,电源适配器最好使用5V 2A避免供电不足导致的问题,从下载官方原版kali for arm镜像,找出一张32G class 10 SD卡,使用USBWriter将镜像写入到SD卡,轻轻地插入B+的屁股,将LCD屏幕插入树莓派的GPIO接口,最后上电开机,上电后LCD屏幕白屏属于正常现象。
等待一会,使用终端ssh连接树莓派,啥?不知道IP多少?对,忘记插网线了,网线插上,打开Fing扫描一下局域网设备或者直接进入路由器后台看下树莓派的IP多少就行了。输入账号 root 密码 toor进入树莓派的kali。
随着科技的进步,微雪官方也在Github上提供了安装驱动的shell脚本,地址 /waveshare/LCD-show 使用 git命令克隆下载
git clone /waveshare/LCD-show.git
正克隆到 'LCD-show'...
remote: Enumerating objects: 358, done.
remote: Counting objects: 100% (358/358), done.
remote: Compressing objects: 100% (180/180), done.
remote: Total 358 (delta 213), reused 286 (delta 165), pack-reused 0
接收对象中: 100% (358/358), 5.06 MiB | 355.00 KiB/s, 完成.
处理 delta 中: 100% (213/213), 完成.
正在检出文件: 100% (267/267), 完成.
之后,执行 ./LCD35-show 开始安装(按照官方教程的写法)。
cd LCD-show/
./LCD35-show
但是官方并没有说脚本不适合B+,所以,这里就很顺利的报错了。
报错
执行安装命令后报错
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
xserver-xorg-input-evdev 已经是最新版 (1:2.10.6-1)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会同时安装下列软件:
cmake-data librhash0 libuv1
建议安装:
cmake-doc ninja-build
下列【新】软件包将被安装:
cmake cmake-data librhash0 libuv1
升级了 0 个软件包,新安装了 4 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 4,321 kB 的归档。
解压缩后会消耗 22.0 MB 的额外空间。
错误:1 /kali kali-last-snapshot/main armel cmake-data all 3.12.3-1
404 Not Found [IP: 192.99.200.113 80]
错误:2 /kali kali-last-snapshot/main armel librhash0 armel 1.3.6-2
404 Not Found [IP: 192.99.200.113 80]
错误:3 /kali kali-last-snapshot/main armel libuv1 armel 1.23.1-1
404 Not Found [IP: 192.99.200.113 80]
错误:4 /kali kali-last-snapshot/main armel cmake armel 3.12.3-1
404 Not Found [IP: 192.99.200.113 80]
E: 无法下载 /kali/pool/main/c/cmake/cmake-data_3.12.3-1_all.deb 404 Not Found [IP: 192.99.200.113 80]
E: 无法下载 /kali/pool/main/r/rhash/librhash0_1.3.6-2_armel.deb 404 Not Found [IP: 192.99.200.113 80]
E: 无法下载 /kali/pool/main/libu/libuv1/libuv1_1.23.1-1_armel.deb 404 Not Found [IP: 192.99.200.113 80]
E: 无法下载 /kali/pool/main/c/cmake/cmake_3.12.3-1_armel.deb 404 Not Found [IP: 192.99.200.113 80]
E: 有几个软件包无法下载,要不运行 apt-get update 或者加上 --fix-missing 的选项再试试?
sudo: cmake:找不到命令
make:/usr/bin/cmake:命令未找到
make: *** [Makefile:176:cmake_check_build_system] 错误 127
dpkg: 处理归档 ./xinput-calibrator_0.7.5-1_armhf.deb (--install)时出错:
软件包体系架构(armhf)与本机系统体系结构(armel)不符
在处理时有错误发生:
./xinput-calibrator_0.7.5-1_armhf.deb
LCD configrue 0
cp: 无法创建普通文件'/boot/overlays/waveshare35a.dtbo': 没有那个文件或目录
cp: 无法创建普通文件'/boot/overlays/': 不是目录
Connection to 192.168.123.47 closed by remote host.
Connection to 192.168.123.47 closed.
这个报错清晰明了,首先提示一些软件包无法下载,Oh,糟糕,刷完系统没有更新,有点尴尬...
OK,先执行更新系统吧
apt update && apt upgrade -y
当年更新系统使用的是 apt-get 现在使用 apt就可以了,更新完系统继续看错误信息
dpkg: 处理归档 ./xinput-calibrator_0.7.5-1_armhf.deb (--install)时出错:
软件包体系架构(armhf)与本机系统体系结构(armel)不符
在处理时有错误发生:
./xinput-calibrator_0.7.5-1_armhf.deb
这里的意思是cpu架构不符合,在驱动包里面找到了xinput-calibrator_0.7.5-1_armhf.deb,但是这里需要的是 xinput-calibrator_0.7.5-1_armel.deb包,于是求助搜索引擎,找到了合适的deb包,下载地址 http://ftp./debian/pool/main/x/xinput-calibrator/xinput-calibrator_0.7.5+git0201-1+b2_armel.deb ,下载后放到到git 仓库的根目录下面,备份旧的 xinput-calibrator_0.7.5-1_armhf.deb 为 xinput-calibrator_0.7.5-1_armhf.deb.bak,把新的deb包改名为 xinput-calibrator_0.7.5-1_armhf.deb。
继续看错误
cp: 无法创建普通文件'/boot/overlays/waveshare35a.dtbo': 没有那个文件或目录
cp: 无法创建普通文件'/boot/overlays/': 不是目录
这里说/boot/overlays/不是目录,去/boot/下看看是什么情况
root@kali:/boot# ls
cmdline.txt config.txt
确实没有那个目录,使用mkdir创建一个目录后执行./LCD35-show进行安装,顺利通过没有报错。
root@kali:~/files/LCD-show# ./LCD35-show
LCD configrue 0
Connection to 192.168.123.47 closed by remote host.
Connection to 192.168.123.47 closed.
树莓派自动重启,但是重启后依然无法正常使用LCD屏幕,依然白屏。
解决
取出SD卡,插入读卡器,使用电脑进入到SD卡的 boot 分区,发现 /boot/路径下的内容跟系统 /boot/下面的内容并不一样,尝试把系统下面的那个boot文件夹直接复制过来覆盖,记得先备份旧的文件夹,复制过来覆盖后,重新插入树莓派开机,搞定,屏幕正常显示,触摸也正常,可以愉快的玩耍了。
本文链接:/?action=show&id=23483
!!! 转载请先联系non3gov@授权并在显著位置注明作者和原文链接 !!! 小黑屋
提示:技术文章有一定的时效性,请先确认是否适用你当前的系统环境。