news 2026/9/23 21:29:23

Nextion串口屏驱动安装与中文固件刷写:MMDVM热点显示恢复实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Nextion串口屏驱动安装与中文固件刷写:MMDVM热点显示恢复实战

简介:业余无线电数字语音通信中,MMDVM热点板配合Nextion串口屏的用途很广,但不少HAM在安装驱动或刷入中文固件时频频失败。这份资料正是针对该痛点的操作指南,适合已能进入Pi-Star配置页面、想为STM32-DVM热点完善屏幕显示的入门进阶用户。整个资源包只有一个PDF文档,压缩包大小约1.51MB,便携易存,手机或电脑上都能随时查阅。资源发布以来已有1616人浏览学习,内容经过实际环境验证,可信度较高。文档从Pi-Star仪表盘恢复出厂设置讲起,涵盖单工/双工模式选择、Nextion屏幕类型与端口配置,并给出通过SSH执行Gitee镜像安装命令的完整代码,强调确认输入y与重启校验等易漏细节;随后介绍中文固件刷写,包括内存卡FAT32格式化、TFT文件放入根目录、插到屏幕背后卡槽、断电上电自动刷机等步骤,还专门提醒区分屏幕卡槽与树莓派卡槽。按此操作即可让屏幕正常显示频率、主频与负载,并支持中文通讯录。

1. 为什么 Nextion 驱动装不上:症状与原因

一块 Nextion 串口屏接到 MMDVM 热点上,最典型的情况是:屏幕能亮、温度能读出来,但主频、负载、通话组信息全是空白。这多半不是屏幕坏了,而是树莓派上的 Nextion 驱动没装上,或者装了一半。原因基本都出在网络环节:驱动源文件放在 GitHub,国内主机 clone 经常超时,脚本跑到一半就断,旧驱动文件又被删掉了,于是屏幕只能靠串口自带的默认界面撑一下,看起来就是“半死”状态。下面把从驱动安装到中文固件刷写的完整链路拆开讲,所有命令基于 BD3OYD 整理的 Gitee 镜像仓库,适合 MMDVM 热点玩家、Pi-Star 用户和想折腾 Nextion 中文显示的业余无线电爱好者。

2. 装驱动前先把 Pi-Star 配置摆正:恢复出厂与端口选择

2.1 为什么要先恢复出厂设置

Pi-Star 的配置页在长期开热点、反复改 WiFi 和 DMR 参数之后,会留下很多旧状态。驱动安装脚本需要读取/etc/mmdvmhost/etc/pistar-release里的内容来匹配屏幕类型,旧配置里的端口、速率、板型设置一旦对不上,安装脚本就会把驱动装到一个不存在的设备节点上。所以流程的第一步是进入 Pi-Star 仪表盘,在“配置”页面点“恢复出厂设置”,这个动作会重置 MMDVMHost 配置和 GPIO 映射,让后续步骤在一个干净的基础上执行。

恢复出厂之后,Pi-Star 会重启服务,页面会重新进入首次配置向导。这时候不要急着改 WiFi,先把热点板型确定下来。如果盒子上标着 Duplex,就选双工模式;普通的单频热点选单工即可。选错的话,后续频率和时隙配置会互相干扰,屏幕上的 TX/RX 状态也会错乱。

2.2 Nextion 配置的三个关键项

进入配置页面后,找到 Nextion 配置区块。这里有三项决定驱动能否装成,缺一不可:

配置项选择说明
屏幕类型Nextion让 MMDVMHost 知道外接的是串口屏而不是 OLED 或并口 TFT
端口modem通过热点板的 modem 串口与树莓派通信,而不是独立 USB 串口
输出列表最后一个对应 UART 映射到屏幕的数据输出节点,不同板子位置不同,选最后一项是通用做法

这个组合是镜像仓库作者在大量板子上验证过的。端口选成 USB 的话,驱动会去枚举/dev/ttyUSB*,但多数 MMDVM 热点板的屏幕走的是板载串口,枚举不到设备,安装日志里就会出现Device not found。如果屏幕真的通过 USB 转串口模块连接,还需要提前确认 CH340 或 CP2102 驱动已经加载,否则设备节点根本不会出现。输出项选错,屏幕收得到数据但解析不出来,表现就是只显示第一行,后面全部空白。

2.3 热点板类型选择 STM32-DVM

Nextion 配置下面还有一个“热点版类型”下拉框,这里要选 STM32-DVM。这个选项决定了 MMDVMHost 以哪套 GPIO 和串口配置去初始化板子。STM32-DVM 是 MMDVM 热点最常见的控制板方案,树莓派通过它的 STM32 芯片跟射频模块打交道,同时把屏幕数据也走这条链路。选错成其他板型,比如 ZumSpot 或 MMDVM_HS,驱动也能装上,但屏幕和射频模块会抢串口,表现出来就是屏幕刷新慢、发射时黑屏。

选好之后点“应用设置”,等页面刷新。刷新完成后再进入 Expert 菜单,从网页端确认配置已经写进/etc/mmdvmhost。常见做法是直接在 SSH 里查一次:

# 查看与屏幕驱动相关的配置行 cat /etc/mmdvmhost | grep -E "Display|Nextion|Modem" | head -20

正常能看到Display=NextionNextionPort=modem这样的行。如果这些行还是旧值,说明刚才的应用设置没有生效,需要先重启 Pi-Star 的配置服务再回来检查。这个检查步骤很多人跳过,结果 SSH 里一看还是旧配置,驱动装了等于没装。

3. SSH 逐行跑命令:驱动安装的完整实录

3.1 登录 SSH 与准备工作

网页配置确认无误后,进入 Pi-Star 的 Expert → SSH,用pi-star账户登录,默认密码是raspberry。注意 SSH 密码输入时不回显,输完直接回车就行。登录后第一件事是执行rpi-rw,把根文件系统从只读切到可写。Pi-Star 默认把 SD 卡挂成只读,防止异常断电写坏文件系统,但安装驱动需要写入/usr/local/bin/etc,所以必须先切可写。

3.2 清理旧驱动和残留配置

逐行执行下面这段,每一行执行完看到提示符再执行下一行:

rpi-rw # 根文件系统切换为可写 sudo rm -rf /usr/local/bin/NextionDriver # 删除旧版驱动主程序 sudo rm -rf /etc/mmdvmhost.old # 删除 MMDVMHost 旧配置备份 cd /tmp # 进入临时目录

第一行rpi-rw切换可写状态;第二行删掉旧驱动主程序,避免覆盖安装时新旧版本混在一起;第三行删掉 MMDVMHost 的旧备份文件,这个文件会在安装时被脚本用来对比差异,如果里面留着上一个屏的配置,脚本可能误判当前设备;第四行进入/tmp,后续源码都拉到这里,重启后自动清空,不会污染系统目录。

3.3 用 Gitee 仓库绕过 GitHub 超时

# 拉取 Gitee 镜像仓库并执行安装脚本 sudo git clone https://gitee.com/BD3OYD/NextionDriverInstaller.git sudo NextionDriverInstaller/install.sh

克隆这一步是多数人卡住的地方。MMDVM 使用的 Nextion 驱动最初由 ON7LDS 开发,源仓库在 GitHub,国内访问经常超时。BD3OYD 把 NextionDriverInstaller 同步到 Gitee 后,国内主机 clone 一般几秒就完成。如果你在执行时git cloneCould not resolve host,先检查树莓派的 DNS,常见做法是把/etc/resolv.conf里的nameserver改成223.5.5.5再重试。这个排查思路和 git 安装及配置教程里常见的 clone 失败排错逻辑完全一样,先确认网络再重跑,不要反复删目录。

install.sh跑起来后,脚本会检测板型、屏幕型号和 UART 映射,然后询问是否确认安装驱动。这一步要用键盘输入一个y再回车,直接回车会被当成默认值跳过,驱动装了等于白装。

3.4 安装成功的判断标准

脚本跑完后,会列出屏幕的端口以及其他配置信息,形式大致如下:

Device: /dev/ttyAMA0 Speed : 115200 Model : NX4024T032 Status: OK

看到Status: OK和完整的设备路径才是安装成功。如果屏幕信息是空的,或者端口显示/dev/ttyUSB0,说明前面网页配置里的输出项没选到最后一项。这时候不用重装,回到配置页面改输出项,再重新跑一次安装脚本即可。脚本提示是否重启时输入y,重启后屏幕应该能完整显示主频、负载、通话组信息。

3.5 安装脚本报错怎么看

报错片段含义处理
Permission denied没执行 rpi-rw先跑 rpi-rw 再重来
git clone超时网络到 Gitee 不通检查 DNS 和网关
/dev/ttyAMA0被占用蓝牙串口没关在 config.txt 里关掉蓝牙对应 UART
安装后屏幕无显示固件和驱动不匹配接着刷对应型号中文固件

最后一种情况其实很常见:驱动只是软件层,屏幕内部还有一套固件在控制渲染。驱动装好但屏幕固件是旧英文版,中文通讯录照样显示不出来,这就是下一章要解决的刷固件问题。

4. 刷中文固件:FAT32、TFT 文件与卡槽的坑

4.1 驱动和固件各管哪一部分

Nextion 屏是串口屏,树莓派通过串口发指令,真正把这些指令渲染成文字、图形、进度条的是屏幕主控里的固件。驱动负责把 MMDVMHost 的温度、主频、通话组数据翻译成串口指令;固件负责把指令变成屏幕上的中文界面。所以两个部分是独立的,安装顺序不分先后,但缺一个都不完整。只装驱动不刷固件,能显示数据但中文通讯录里的中文字符会变成乱码或方块;只刷固件不装驱动,屏幕会显示自检画面但收不到任何数据。

4.2 准备 FAT32 格式的 TF 卡

刷固件需要用一张 microSD 卡,容量 2GB 到 32GB 都行,关键是文件系统必须是 FAT32。Windows 10 自带的格式化界面只列 FAT 和 NTFS,右键格式化时不一定看得到 FAT32,需要下载 FAT32 格式化工具,比如 GUIFormat 或 FAT32 Format。格式化时分配单元大小选默认值,卷标随意,完成后用文件管理器确认属性里显示“文件系统: FAT32”。

4.3 TFT 文件放根目录并检查命名

把屏幕型号对应的.tft文件复制到 TF 卡根目录,注意是根目录,不要放进任何文件夹。刷机程序只会扫描根目录下的.tft文件,文件名要和屏幕型号一致。比如 3.2 寸的 Nextion 屏,文件名通常是NX4024T032.tft,放进去之后最好再确认一下没有多出来一个同名的.tft.bak之类的后缀。Windows 的资源管理器如果隐藏了扩展名,容易误把NX4024T032.tft.txt当成有效文件,这种文件插进屏幕后刷写程序会提示文件打开失败。

4.4 卡槽位置:屏幕背面,不是树莓派

这一步最容易搞混。TF 卡要插入屏幕背面的卡槽,不是树莓派上的 SD 卡槽。Nextion 屏幕背面有一个很小的 push-push 卡槽,通常在排线接口旁边,插进去会有咔哒一声。树莓派上的 SD 卡是系统卡,插错了系统就启动不了了。插好卡后,断电,再重新上电,屏幕会先进入自检,显示型号和固件版本,大约 3 秒后自动开始刷写。

4.5 出现 SUcceed 才算刷完

刷写过程中屏幕会显示进度条或者更新的页面,完成后会出现SUcceed字样。

提示:Nextion 刷写程序里显示的固定拼写是SUcceed,不是Succeed,看到前者才是成功。

看到SUcceed后断电,拔出 TF 卡,再次上电,屏幕进入正常显示界面。如果中途看到Failed或者File not found,不要反复上下电,先把卡重新格式化一遍,再复制一次 TFT 文件重刷。刷写失败一般不是屏幕坏了,而是卡格式或文件位置不对。

4.6 刷写失败的排查思路

现象大概率原因处理
上电后一直停留在自检画面卡格式不是 FAT32重新用 FAT32 工具格式化
提示 File not foundTFT 文件不在根目录把文件移到根目录
刷完显示异常花屏型号文件选错下载对应屏幕分辨率的 TFT
刷写中断在 40% 左右TF 卡出现坏块换一张卡重试

刷写本身是屏幕固件程序在跑,不依赖树莓派,所以树莓派上装没装驱动不影响刷写过程。反过来,刷完固件如果树莓派侧驱动还没装,屏幕显示的是内置示例页,数据不动,这时候回到驱动安装步骤把软件层补齐就行。

5. 验证显示与手动更新中文通讯录

5.1 检查主屏数据是否恢复

重启后观察屏幕,主屏应该同时显示温度、主频、负载、发射状态和当前通话组。如果温度有、主频和负载空白,通常是驱动安装时install.sh里的系统信息模块没有正确读取树莓派 CPU 数据,重新跑一次安装脚本,输入y后等脚本自动配置即可。另外,MMDVM 热点在还没有通联时,屏幕上部分数据本来就是 0,不要因为这个误判安装失败。

5.2 手动更新中文通讯录

驱动安装脚本里集成了中文通讯录,但如果你发现 DMR 通联时屏幕上的名字仍是英文,可以手动执行一次更新。SSH 登录后依次运行:

rpi-rw # 切换可写 cd /tmp # 进入临时目录 sudo git clone https://gitee.com/BD3OYD/MMDVM.git # 拉取通讯录仓库 cd /tmp/MMDVM # 进入仓库目录 sudo cp stripped.csv /usr/local/etc # 复制通讯录到系统目录

第一行切换可写文件系统;第二、三行把包含stripped.csv的仓库克隆到/tmp;第四行进入仓库目录;第五行把通讯录数据库复制到/usr/local/etc。复制完成后,在 Pi-Star 配置页面把 MMDVMHost 重启一次,新通讯录才会被加载。注意这个仓库和驱动仓库是分开的,手动更新不会覆盖驱动文件,可以放心重复执行。

5.3 一个实用技巧:校验端口映射再重启

驱动装完、固件也刷好,最后可以做一次端到端校验,避免屏幕和树莓派之间的设备节点漂移。在 SSH 里执行:

# 检查屏幕对应的串口设备节点是否存在 ls -l /dev/ttyAMA0 /dev/ttyUSB0 2>/dev/null

正常应该看到至少一个设备节点存在。如果/dev/ttyAMA0没有出现,检查/boot/config.txt里有没有被蓝牙串口占用,注释掉对应行后重启树莓派。这和 stlink 驱动安装、jlink 驱动安装排查设备枚举的思路一样,设备节点不存在时,上层工具再正常也连不上硬件。经过这轮校验,屏幕、驱动、固件、通讯录四个环节都确认无误,热点在通联时就会显示中文,后续如果再出现空白,优先检查的就不是屏幕,而是配置页面里端口和输出项有没有被重置。

本文还有配套的精品资源,点击获取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/23 21:19:13

Excel换行全解析:Alt+Enter、CHAR(10)与自动换行原理

1. 项目概述:Excel换行不是“按回车”那么简单“Excel怎么换行?”——这问题我每天至少被问三遍,从刚入职的实习生到做了十年财务的老会计,再到自己开网店的小老板,人人都卡在这一步。表面看只是想让单元格里文字多行显…

作者头像 李华
网站建设 2026/9/23 21:17:21

MATLAB实现医学影像MIMO时序预测模型

## 1. 项目背景与核心价值在医学影像分析领域,多输入多输出(MIMO)系统的时序预测一直是个棘手问题。传统单输入单输出模型处理MRI动态扫描数据时,往往忽略了不同扫描序列间的耦合关系。这次我们用MATLAB搭建的两输入三输出预测模型…

作者头像 李华
网站建设 2026/9/23 21:11:06

从博客到百亿美妆DTC品牌:跨境突围实战拆解

先说明一下,我没有在美妆行业待过十年以上,但过去几年一直在帮几家DTC品牌做海外增长咨询,服务过从0到1的团队,也近距离看过几个从内容社区起家、后来估值冲到几十亿上百亿的品牌。这篇算是我结合行业观察和项目经验,对…

作者头像 李华