2025-07-20 17:57:40 +08:00
2025-07-20 17:57:40 +08:00
2025-01-15 00:29:41 +08:00
2025-01-13 06:22:04 +00:00
2025-02-08 20:14:55 +08:00

墨水屏展示当前时间及天气数据

本项目复刻自Seek-Huang代码仓库 并在此基础上进行改进

本仓库已添加一键安装部署脚本

注意:请先配置完需要的硬件以及系统配置操作再运行脚本

API说明:

#### 一言API 此网站可以获取指定长度指定类型的一个句子,可以限定返回长度及返回类型

https://international.v1.hitokoto.cn/?c=a&encode=text&max_length=20

天气API

获取的天气是通过网页的接口,获取的内容保存在当前目录下的json文件接口的地址是在这里抓取的

http://www.weather.com.cn/

在控制台f12就可以抓取到 手动伪造一个来源即可正常的获取到该数据内容

外壳及电池模块

使用的是PiSugar3的外壳,获取电源及树莓派(Raspberry)RTC时间都是靠这一部分模块完成的,附上github地址

 https://github.com/PiSugar/PiSugar/wiki/PiSugar-3-Series#rtc-on-board
 https://www.pisugar.com/

ps:如果没有使用此模块则需要更改代码内容,以避免运行出错。

ps:代码里需要nc命令需要安装netcat安装内容已集成到“需要安装的软件和依赖"

墨水屏2.13inch e-Paper HAT+硬件连接

连接树莓派的时候,可以直接将板子插到树莓派的 40PIN 排针上去,注意对好引脚。

开启SPI接口

打开树莓派终端,输入以下指令进入配置界面: sudo raspi-config 选择Interfacing Options -> SPI -> Yes 开启SPI接口 image

按需开启

PiSugar 3 板载一个 RTC可以通过 hwclock 轻松使用 将以下内容写入/boot/firmware/config.txt文件

dtoverlay=i2c-rtc,ds3231

image

重启树莓派:

sudo reboot 检查 /boot/firmware/config.txt可以看到 'dtparam=spi=on' 已被写入

image

为了确保 SPI 没有被占用,建议其他的驱动覆盖暂时先关闭。可以使用 ls /dev/spi* 来检查 SPI 占用情况,终端输出 /dev/spidev0.0 和 /dev/spidev0.1 表示 SPI 情况正常

image

wifi连接管理

可以使用PiSugar/sugar-wifi-conf:让树莓派提供蓝牙BLE服务使用小程序可以随时更改树莓派的wifi连接

使用脚本直接安装(推荐)

参数定义

--zh                      设置系统语言为zh_CN,UTF-8
--cn                      替换apt镜像源为中国镜像源
--gitcn                   克隆中国仓库
--pip-offline             pip依赖离线安装
--pisugar-wifi-conf       安装pisugar-wifi-conf
--pisugar-power-manager   安装pisugar-power-manager
--version <tag>           版本号(使用方法 --version + 仓库标签,格式例如 v1.x.x ,可以是主仓库main)
--debug                   输出详细信息

#中国源默认设置(不加参数)
curl -sSL https://gitee.com/xingguangk/2.13-Ink-screen-clock/raw/main/bin/install.sh | sudo bash
#中国源参数设置(不使用--debug参数,替换cn镜像源,pip在线安装,不安装pisugar)
curl -sSL https://gitee.com/xingguangk/2.13-Ink-screen-clock/raw/main/bin/install.sh | sudo bash -s -- --zh --cn --gitcn --version <tag>
#中国源参数设置(不使用--debug参数,替换cn镜像源,pip依赖离线安装,不安装pisugar)
curl -sSL https://gitee.com/xingguangk/2.13-Ink-screen-clock/raw/main/bin/install.sh | sudo bash -s -- --zh --cn --gitcn --pip-offline --version <tag>
#默认源默认设置(不加参数)
curl -sSL https://github.com/kxgx/2.13-Ink-screen-clock/raw/main/bin/install.sh | sudo bash
#默认源默认设置(不使用--debug参数,替换cn镜像源,pip在线安装,不安装pisugar)
curl -sSL https://github.com/kxgx/2.13-Ink-screen-clock/raw/main/bin/install.sh | sudo bash -s -- --zh --cn --gitcn --version <tag>
#默认源默认设置(不使用--debug参数,替换cn镜像源,pip依赖离线安装,不安装pisugar)
curl -sSL https://github.com/kxgx/2.13-Ink-screen-clock/raw/main/bin/install.sh | sudo bash -s -- --zh --cn --gitcn --pip-offline --version <tag>

需要安装的软件和依赖:

参考 微雪电子 https://www.waveshare.net/wiki/2.13inch_e-Paper_HAT+#Raspberry_Pi PiSugar 3官方文档 https://github.com/PiSugar/PiSugar/wiki/PiSugar-3-Series#software-installation

sudo apt-get update
sudo apt-get install -y git pigpio i2c-tools netcat* gawk python3-dev python3-pip python3-pil python3-numpy python3-gpiozero python3-pigpio build-essential
sudo pip3 install spidev borax pillow requests
wget https://cdn.pisugar.com/release/pisugar-power-manager.sh
bash pisugar-power-manager.sh -c release

安装命令和执行启动文件组合命令:

sudo apt-get update && sudo apt-get install -y git pigpio i2c-tools netcat* gawk python3-dev python3-pip python3-pil python3-numpy python3-gpiozero python3-pigpio build-essential && sudo pip3 install spidev borax pillow requests && wget https://cdn.pisugar.com/release/pisugar-power-manager.sh && bash pisugar-power-manager.sh -c release && cd ~/ && git clone https://github.com/kxgx/2.13-Ink-screen-clock.git && cd ~/2.13-Ink-screen-clock/bin/ && sudo chmod +x start.sh && sudo ./start.sh
使用国内仓库:
sudo apt-get update && sudo apt-get install -y git pigpio i2c-tools netcat* gawk python3-dev python3-pip python3-pil python3-numpy python3-gpiozero python3-pigpio build-essential && sudo pip3 install spidev borax pillow requests && sudo pip3 install spidev borax pillow requests --break-system-packages && wget https://cdn.pisugar.com/release/pisugar-power-manager.sh && bash pisugar-power-manager.sh -c release && cd ~/ && git clone https://gitee.com/xingguangk/2.13-Ink-screen-clock.git && cd ~/2.13-Ink-screen-clock/bin/ && sudo chmod +x start.sh && sudo ./start.sh
注意
# 如果使用的是非lite系统请在pip3安装部分添加
--break-system-packages

在weanther.py文件第64行可以修改默认城市数据

效果展示

总体采用局刷方案,程序运行后一直处于程序的获取新数据的过程中,当发现数据变化后即开始自动局刷。 image

Description
树莓派驱动微雪2.13inch e-Paper HAT+墨水屏展示天气时钟 (本项目复刻自https://github.com/Seek-Huang/2.13-Ink-screen-clock 的代码仓库 并在此基础上进行改进)
Readme 42 MiB
Languages
Python 98.1%
Shell 1.9%