From 7e43e6302d1beaef046b6f933385a77f9fa7b777 Mon Sep 17 00:00:00 2001 From: keita <16924591+keita_sakura@user.noreply.gitee.com> Date: Mon, 28 Sep 2026 09:31:00 +0800 Subject: [PATCH] =?UTF-8?q?=E9=83=A8=E7=BD=B2=E6=96=87=E6=A1=A3=E8=A1=A5?= =?UTF-8?q?=E5=86=85=E6=A0=B8=E6=8E=A7=E5=88=B6=E5=8F=B0=E5=9D=91:=20?= =?UTF-8?q?=E4=BB=85=E5=85=B3getty=E4=B8=8D=E5=A4=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 实测: printk legacy console [ttyS0] 未清时内核日志混入吊舱协议流, 表现为 收几帧后 OSError errno 5; 补充 cmdline.txt 清理步骤与串口静默后三连验证 --- docs/树莓派4B部署注意事项.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/树莓派4B部署注意事项.md b/docs/树莓派4B部署注意事项.md index e5e15e6..e4fbc85 100644 --- a/docs/树莓派4B部署注意事项.md +++ b/docs/树莓派4B部署注意事项.md @@ -80,7 +80,16 @@ pytest # 仅上机自测需要,部署运行可省 串口硬件选 Yes**(等价于 `enable_uart=1` + 关闭 serial-getty 抢占); - Pi 4B 上 `/dev/serial0` 默认指向 mini-UART(ttyS0,波特率随主频漂移), 115200 下不稳——在 `/boot/firmware/config.txt` 加 `dtoverlay=disable-bt` - 把 PL011(ttyAMA0)换回来,`/dev/serial0` 随之改指 ttyAMA0; + 把 PL011(ttyAMA0)换回来,`/dev/serial0` 随之改指 ttyAMA0 + (想保留蓝牙改用 `dtoverlay=miniuart-bt`); + - **必须同时清掉内核控制台**(2026-09-28 实测踩坑):`dmesg` 出现 + `printk: legacy console [ttyS0] enabled` 说明内核 printk 也在往同一个口 + 吐日志,与吊舱协议流混在一起(表现为能收几帧后 `OSError errno 5` 或 + 持续坏帧)。编辑 `/boot/firmware/cmdline.txt`(**单行文件,务必先备份**) + 删掉 `console=serial0,115200` / `console=ttyS0,115200` 后重启; + - 串口静默后三连验证(缺一不可):`ls -l /dev/serial0`→ttyAMA0、 + `ps aux | grep "[a]getty"` 无串口 getty、`dmesg | grep -i "console \["` + 不再出现 ttyS0; - **Pi 是 3.3V 电平,绝不直连 5V/RS232 电平**,会烧 GPIO。 - 接线三线:TX/RX **交叉**、**必须共地(GND)**,不共地是通讯乱码的第一大原因。 - 用户权限:`sudo usermod -aG dialout $USER`,重登录生效,否则 open 串口 Permission denied。