关键词

更新

_

PrintSphere Lite 版本变更记录

版本 日期 改动 影响范围 回退说明
firmware/backend-v0.6.0-release 2026-08-22 SD2 UI 正式整合版:保留已确认的 240x240 UI 布局、比例和颜色;整合 10 秒测试动画、1 秒启动图、状态/进度/HMS/AMS 映射修复、中文 WiFi 扫描与配置,以及云验证码结果和冷却提示 固件、配置工具和正式交付包;不改变已确认 UI 结构 回退到 v0.5.0 固件与 v0.5.1 配置工具可恢复上一组件版本
backend-v0.4.71-ui-clean 2026-07-01 优化后端配置页布局:Bambu 登录改为紧凑表单;ESP 配置按 WiFi、设备、屏幕、高级 HTTP 兜底和操作按钮分组;状态提示集中显示,减少页面堆叠和空白 只影响后端页面 HTML/CSS 和版本标识;不改固件、不改云登录、串口写入、WiFi 配置、打印机同步和 MQTT 显示逻辑 回退 companion/server.js 中页面模板、CSS 和 BACKEND_VERSION 即可恢复 v0.4.70
firmware/backend-v0.4.70-dual-nozzle-fit 2026-07-01 修复双喷嘴温度如 250/50 被省略成 250/.. 的问题:信息面板温度卡扩大数值绘制宽度并取消省略,极端长文本才降字号但仍完整显示 只影响信息面板温度数值绘制和版本标识;不改 MQTT 字段解析、云配置和后端流程 回退 drawDashboardCelsiusValue() / drawDashboardTempCard() 和版本号即可恢复 v0.4.69
firmware/backend-v0.4.69-no-temp-unit 2026-07-01 信息面板温度数值去掉摄氏度单位,只显示数字,避免单位符号遮挡;保留 v0.4.68 的剩余时间 4h49m 格式 只影响信息面板温度文本和版本标识;不改 MQTT 字段解析、云配置和后端流程 回退 drawDashboardCelsiusValue() 和版本号即可恢复 v0.4.68
firmware/backend-v0.4.68-time-format 2026-07-01 信息面板剩余时间改为 4h49m / 49m 格式,不再使用冒号;保留 v0.4.67 的双喷嘴温度统一字号 只影响信息面板剩余时间文本和版本标识;不改 MQTT 字段解析、云配置和后端流程 回退 timeText() 和版本号即可恢复 v0.4.67
firmware/backend-v0.4.67-dual-temp-size 2026-07-01 双喷嘴温度显示不再降级为小字体,喷嘴/热床/仓温数值统一使用同一字号;收紧 ℃ 单位绘制宽度,适配 249/50℃ 这类双喷嘴显示 只影响信息面板温度数值绘制和版本标识;不改 MQTT 字段解析、云配置和后端流程 回退 drawDashboardCelsiusValue() 单位宽度、喷嘴卡字号和版本号即可恢复 v0.4.66
firmware/backend-v0.4.66-dashboard-grid 2026-07-01 信息面板改为 2x2 数据卡:进度/仓温一行,喷嘴/热床一行;顶部删除设备别名,设备型号放大并与打印状态对称;喷嘴、热床、仓温统一绘制为 ℃ 样式,避免只有 C 没有圆点;后端隐藏设备别名输入 影响信息面板布局、温度单位绘制和后端显示设置页面;不改云 MQTT、WiFi/Token/打印机写入流程 回退 drawDashboardBase()、drawDashboardFields()、温度卡绘制函数、后端别名输入和版本号即可恢复 v0.4.65
firmware/backend-v0.4.65-manual-brightness 2026-07-01 删除屏幕自动节能降亮逻辑,亮度完全由用户在后端手动设置;亮度改为 0-100 自由调节,后端使用滑块和数字输入同步控制;保留 v0.4.64 的 P2S/X2D/H2 系列仓温兜底和信息面板字体放大 影响 ESP 背光调节和后端亮度 UI;不改云 MQTT、WiFi/Token/打印机写入流程 回退 normalizeBrightness()、applyBrightness()、后端亮度控件和版本号即可恢复四档亮度/自动节能逻辑
firmware/backend-v0.4.64-chamber-brightness 2026-07-01 参考 Bambu monitor 项目补充 P2S/X2D/H2 系列仓温兜底:标准仓温字段缺失时允许读取 print.device.ctc.info.temp 和 print.info.temp;信息面板右侧温度和底部时间字体放大;屏幕亮度改为 0-100 自由调节 影响仓温字段解析、信息面板字体和亮度 UI;不改云 MQTT 主链路和配置流程 回退仓温兜底、温度字体位置、后端亮度控件和版本号即可恢复 v0.4.63
firmware/backend-v0.4.63-dashboard-clean 2026-07-01 信息面板布局改为纯百分比显示,去掉左侧进度环,避免 100% 裁切;底部标题改为“剩余时间 / 预估完成时间”;设备型号放大并与别名左对齐;固件不再启动 AP 配网热点,保留电脑后端 USB 串口优先、局域网 HTTP 兜底;按 MQTT_FIELDS.md 增加仓温目标字段兜底,P2S 等有仓温机型更容易显示有效仓温;MQTT 重连后先清空旧实时温度,避免首屏短暂显示历史喷嘴温度 影响信息面板布局、ESP 配网入口、仓温字段解析、后端页面文案;经典布局、Bambu 云 MQTT 主链路、USB 配置、选择打印机流程不改 回退 src/main.cpp 中 dashboard 绘制、startSetupAp()/httpNetworkReady()、仓温字段和版本号;回退 companion/server.js 页面文案和版本号即可恢复 v0.4.62
firmware/backend-v0.4.62-tls-buffer 2026-07-01 ESP8266 云 MQTT TLS 连接稳定性优化:BearSSL 收发缓冲改为 512/512,并将连接超时提高到 8 秒,降低 TLS 连接阶段内存压力和弱网 TCP failed 概率;保留 v0.4.61 的联网后关闭配置热点策略 只影响 ESP 云 MQTT TLS 连接参数和版本标识;屏幕布局、字段解析、后端流程不改 回退 mqttNet.setBufferSizes() 和 setTimeout() 参数及版本号即可恢复 v0.4.61
firmware/backend-v0.4.61-mqtt-stability 2026-07-01 修复 v0.4.60 实机开始连接 Bambu 云 MQTT 时可能触发 ESP8266 WiFi/LwIP 底层异常重启的问题:设备已连上局域网后自动关闭配置热点,释放 WiFi 栈资源;ESP 状态接口返回归一化后的型号,避免 N7-V2 直接显示 影响 ESP WiFi/AP 并存策略和状态接口型号显示;未配置 WiFi 时配置热点仍保留;云 MQTT、后端登录和打印机选择流程不改 回退 wifiConnect() 中关闭 SoftAP 的逻辑、statusJson() 型号归一化和版本号即可恢复 v0.4.60
firmware/backend-v0.4.60-dashboard-polish 2026-07-01 信息面板布局继续优化:准备状态显示为“准备中”;左侧去掉进度环外侧方框,仅保留小圆环和中心百分比;右侧三组数据扩大空间,改为单行“喷嘴/热床/仓温 + 数值”;按 MQTT_FIELDS.md 补齐固件和后端型号映射,包含 BL-P001/X1C、N7-V2/P2S、N6-V2/X2D、O1C2-V2/H2C 等;后端设备别名示例改为普通客户场景 影响 dashboard 视觉布局、型号显示映射和后端文案;经典布局、云 MQTT、WiFi/Token/打印机配置流程不改 回退 dashboard 右侧布局、normalizedModelName()、后端 normalizeModelName() 和版本号即可恢复 v0.4.59
firmware/backend-v0.4.59-dashboard-model-fix 2026-07-01 修复 v0.4.58 信息面板布局中设备型号没有显示的问题:顶部左侧卡片改为别名在上、设备型号小字在下;型号变化时也会触发顶部区域重绘 只影响 dashboard 顶部左侧显示区域和版本标识;经典布局、云 MQTT、WiFi/Token/打印机配置流程不改 回退 drawDashboardFields() 顶部卡片绘制和版本号即可恢复 v0.4.58
firmware/backend-v0.4.58-dashboard-cn-ring 2026-07-01 优化信息面板布局:左侧大方框去掉 Bambu 图标,改成小圆环进度并在中心显示百分比;底部只保留“剩余”和“完成于”两个大时间格;固件内置少量 1-bit 中文点阵标签,状态、喷嘴、热床、仓温和底部标题改为中文;动态剩余时间改为 小时:分钟 数字格式,避免额外中文字体库 只影响 dashboard 新布局的视觉呈现和后端版本标识;经典布局、云 MQTT、WiFi/Token/打印机配置流程不改 回退 src/main.cpp 的中文点阵资源、dashboard 圆环和底部两格布局,并恢复 v0.4.57;后端回退 BACKEND_VERSION 和本条 CHANGELOG 即可
firmware/backend-v0.4.57-dashboard-layout 2026-07-01 新增可在后端切换的“信息面板布局”:显示打印状态、进度、喷嘴/双喷嘴温度、热床、仓温、层数、剩余时间、预估完成时间、机型和用户别名;后端新增设备别名输入,并渲染为 1-bit 点阵图写入 ESP;按 MQTT_FIELDS.md 增加仓温和机型字段兼容;ESP 连接 WiFi 后同步 NTP 用于 ETA;精简 ESP 串口状态/确认回包,避免中文别名导致串口 JSON 截断 影响后端屏幕显示设置、ESP 配置存储、dashboard 新布局和状态字段解析;经典布局、云 MQTT 主链路、WiFi/Token/打印机配置流程不改 回退 src/main.cpp 中 dashboard 布局、alias bitmap、chamber/model 字段和版本号;回退 companion/server.js 的 layout/alias UI、点阵渲染和写入 payload;恢复 v0.4.56 即可
firmware/backend-v0.4.56-usb-first 2026-06-20 所有 ESP 配置写入统一为 USB 串口优先、HTTP 兜底:WiFi、云 token、打印机选择、亮度和 ESP 本地打印机列表均遵循同一规则;执行配置写入前通过当前串口重新确认 ESP 身份,避免历史档案或旧 IP 串台;固件沿用原厂 10 位 PWM 并统一版本号 影响后端所有 ESP 配置写入传输顺序和目标识别;固件仅更新版本标识 回退各 push*ToEsp() 和 syncPrinterListToEsp() 的传输顺序、写入前身份检测,并恢复 v0.4.55
firmware/backend-v0.4.55-brightness-target 2026-06-20 修复多 ESP 历史档案下应用亮度可能优先写入旧 IP、当前 USB 设备仍保持 50%,随后页面又被设备回报覆盖的问题;应用亮度前通过当前串口重新确认 ESP 身份,亮度写入改为 USB 串口优先、HTTP 兜底;固件沿用 v0.4.54 的原厂 10 位 PWM并统一版本号 影响后端亮度目标设备识别和传输优先级;固件仅更新版本标识 回退串口身份确认和 pushBrightnessToEsp() 传输顺序即可恢复 v0.4.54
firmware/backend-v0.4.54-brightness-pwm 2026-06-20 修复 v0.4.53 四档值能保存但屏幕亮度肉眼不变化的问题;GPIO5 背光控制改回 SD2 原厂固件的 ESP8266 10 位 PWM:范围 0-1023,输出 1023 - 亮度×10;四档配置和自动亮度逻辑不变 只修正背光 PWM 实际输出和统一版本号;不改 MQTT、屏幕内容、后端流程 恢复 0-255 PWM 代码和 v0.4.53 版本号可回退,但会恢复亮度不明显的问题
firmware/backend-v0.4.53-brightness 2026-06-20 增加 25% / 50% / 75% / 100% 四档背光亮度;每台 ESP 独立保存用户亮度;无有效任务或任务结束/失败后持续 5 分钟自动降到 25%,新任务进入准备、打印或暂停状态时恢复用户亮度;后端页面新增亮度选择、当前实际亮度/节能状态和独立应用按钮,首次配网与同步云配置也会写入亮度 影响 GPIO5 背光 PWM、ESP 配置存储/状态接口和后端配置页面;不改屏幕布局、打印数据解析、云登录和打印机选择 回退固件亮度状态、StoredConfig.brightness、GPIO5 PWM 调度与后端 display 配置/UI,并恢复 v0.4.52 版本号即可
firmware/backend-v0.4.52-release 2026-06-20 统一正式交付版本号:固件和后端均显示 v0.4.52;包含固件 v0.4.51 的首次 MQTT 快速连接,以及后端 v0.4.47 的多 ESP 自动切换、旧 IP 清理、串口写入确认和串口任务排队修复;本次不改变已验证功能逻辑 固件与后端版本标识,以及完整正式交付包 固件恢复 firmware-v0.4.51-fast-first-mqtt,后端恢复 backend-v0.4.47-auto-device-switch 即可回退组件版本标识,功能逻辑不变
backend-v0.4.47-auto-device-switch 2026-06-20 页面保持打开时增加每 8 秒一次的低频 USB ESP 身份识别;拔下第一台再插入第二台后会自动切换到当前设备档案并刷新 IP;用户正在配置 WiFi 或主动检测时暂停后台识别;后端串口命令统一排队,页面初始化改为先识别 ESP 再扫描 WiFi,避免自动检测与扫描同时占用 COM 口 只影响后端页面自动切换当前 ESP 和串口任务调度;不改固件、不改云登录、打印机选择和 MQTT 数据 回退页面脚本中的 operationBusy、autoDetectBusy、8 秒定时检测和顺序初始化,并移除 queueSerialCommand(),恢复 BACKEND_VERSION 即可恢复 v0.4.46
backend-v0.4.46-esp-ip-identity 2026-06-20 修复更换或恢复出厂 ESP 后,串口检测虽已识别当前设备但页面仍保留该档案历史 IP 的问题:状态明确返回未获取 IP 时同步清空当前 ESP 的 host / last_ip;未确认联网时配置 WiFi 强制走当前 USB 串口,避免历史地址抢先接收配置;所有 ESP 的 HTTP 配置端口仍统一为 8081 只影响后端 ESP 地址与设备身份绑定、WiFi 写入传输选择;不改 ESP 固件、不改屏幕、不改 MQTT 和云账号数据 回退 activateEspProfileFromStatus() 的 IP 同步逻辑和 /api/esp 保存 host 条件,并恢复 BACKEND_VERSION 即可恢复 v0.4.45
backend-v0.4.45-serial-write-ack 2026-06-20 修复第二台或恢复出厂后的 ESP 通过 USB 配置 WiFi 时,后端使用 Windows 串口文件流后未验证设备是否收到,却直接报告“写入成功”的问题;串口写入现统一使用 115200 波特率的 JSON 命令通道,并且只有收到 ESP 返回的 ok 确认才算成功 只影响电脑后端 USB 串口配置确认;不改 ESP 固件、不改屏幕显示、不改 MQTT 字段解析、不改 HTTP 优先和单次单 ESP 流程 回退 server.js 的 BACKEND_VERSION、pushConfigToSerial(),并恢复旧 configureSerialPort() 即可恢复 v0.4.44
firmware-v0.4.51-fast-first-mqtt 2026-06-19 修复开机后 WiFi 已连接但首次 MQTT 连接仍等待一个重连周期的问题;现在启动完成后会立即尝试连接 Bambu 云 MQTT,减少开机后进度、状态、热床、层数和剩余时间首屏显示等待 只影响 ESP 固件首次 MQTT 连接调度;不改 MQTT 字段解析、不改屏幕布局、不改后端、不改 WiFi / token / 打印机配置流程 回退 src/main.cpp 的 FIRMWARE_VERSION 和 setup() 末尾 lastMqttConnect 赋值即可恢复 v0.4.50
firmware-v0.4.50-x2d-pushall-buffer-fix 2026-06-19 将 ESP 固件 MQTT 接收缓存从 8192 提升到 12288,避免 X2D / H 系列等完整 pushall 首包过大时被整包丢弃,改善开机后进度、状态、热床、层数和剩余时间显示很慢的问题 只影响 ESP 固件 MQTT 首包接收能力;不改屏幕布局、不改字段解析、不改后端、不改 WiFi / token / 打印机配置流程 回退 src/config.h 的 MQTT_BUFFER_SIZE 到 8192,并回退 src/main.cpp 的 FIRMWARE_VERSION 即可恢复 v0.4.49
firmware-v0.4.49-x2d-name-clear-fix + backend-v0.4.44-x2d-model-fix 2026-06-19 根据 Bambu 云绑定字段适配 X2D:云端 dev_model_name=N6-V2、dev_product_name=X2D 时后端列表显示为 X2D;固件底部剩余时间/设备名区域扩大清屏范围,并对过长设备名做宽度裁剪,避免打印状态显示剩余时间时左右残留旧设备名 影响后端机型名称归一化,以及 ESP 固件底部文字局部清屏/裁剪;不改 MQTT 核心温度、进度、层数解析;不保存用户 token 回退 server.js 的 BACKEND_VERSION 和 normalizeModelName() 中 X2D/N6-V2 映射;回退 src/main.cpp 的 FIRMWARE_VERSION、fitTextToWidth() 和底部 drawTextBox(18,181,204,34,...) 即可恢复 v0.4.48
firmware-v0.4.48-progress-field-fix 2026-06-18 修复下载文件/准备文件阶段屏幕进度会间歇跳到 100% 的问题:主打印进度只使用 mc_percent 和明确的打印进度字段,不再用 download_progress、model_download_progress、gcode_file_prepare_percent、prepare_percent、gcode_prepare_percent 覆盖进度条 只影响 ESP 固件打印进度字段解析;不改温度、热床、层数、剩余时间、双喷嘴显示、后端和局域网页面 回退 src/main.cpp 中 FIRMWARE_VERSION、progressKeys 和 MQTT filter 的进度字段即可恢复 v0.4.47 行为
firmware-v0.4.47-dual-nozzle-polish-release + backend-v0.4.43-esp-printer-list-sync 2026-06-18 正式交付版:移除 v0.4.46 测试固件中的全部写死温度和 UI_TEST_MODE;保留双喷嘴温度残影修复、NOZZLE / BED 标签字号优化、ESP 局域网打印机列表同步和后端 v0.4.43 同步按钮 影响 ESP 固件双喷嘴温度显示清屏和标签字号,以及后端同步打印机列表到 ESP 本地网页;温度、进度、热床、层数仍全部来自真实 Bambu 云 MQTT;不保留测试写死数据 固件回退到 firmware-v0.4.45-label-font-polish 可保留 UI 优化但不包含本次正式清理记录;后端回退到 backend-v0.4.42 会移除 ESP 本地网页打印机列表手动同步按钮
firmware-v0.4.46-dual-nozzle-temp-test 2026-06-18 双喷嘴温度显示测试版:临时开启 UI_TEST_MODE,强制显示 L 100°C / R 200°C 三秒交替、热床 80°C、状态 printing,用于检查双喷嘴温度区域残影和 NOZZLE / BED 标签字号 只用于测试 ESP 屏幕 UI;包含写死测试温度,不可作为正式交付固件 正式版必须关闭 UI_TEST_MODE 并恢复真实 MQTT 温度;回退到 firmware-v0.4.45-label-font-polish 可保留残影修复和标签字号优化
firmware-v0.4.45-label-font-polish 2026-06-18 在 v0.4.44 双喷嘴温度残影修复基础上,将 NOZZLE 和 BED 标签字体改为与层数字段相同的 2 号字体,并扩大标签清屏区域,避免从旧小字体切换后留下边缘残影 只影响 ESP 固件中 NOZZLE / BED 标签字号和局部清屏;不改温度数字大小、不改温度位置、不改单喷嘴/双喷嘴数据解析、不改后端 回退 src/main.cpp 中 FIRMWARE_VERSION 和 drawLabels() 字体/清屏区域即可恢复 v0.4.44 的标签显示
firmware-v0.4.44-dual-nozzle-ghost-fix 2026-06-18 修复双喷嘴温度显示从单喷嘴温度区域切换过来时,C 右侧可能残留半个旧字符的问题;双喷嘴温度仍保持原左移位置,只扩大清屏区域覆盖旧单喷嘴框和当前双喷嘴框的并集 只影响 ESP 固件双喷嘴温度区域局部清屏;不改温度位置、不改单喷嘴显示模式、不改云 MQTT 解析、不改后端 回退 src/main.cpp 中 FIRMWARE_VERSION 和 drawDualNozzleTempBox() 清屏范围即可恢复 v0.4.42/v0.4.41 的绘制行为
backend-v0.4.43-esp-printer-list-sync 2026-06-18 后端新增“同步打印机列表到 ESP 本地网页”按钮,可把电脑端已读取的 Bambu 打印机列表主动推送到 ESP 的 /printers.json;刷新打印机列表、选择显示打印机和手动同步都会返回 ESP 列表同步结果;ESP 地址未手动填写时自动使用上次检测到的 ESP WiFi IP;同步结果只把 HTTP 2xx 视为成功,避免 ESP 网页显示“暂无已同步打印机”但后端误判成功 只影响电脑后端向 ESP 本地网页同步打印机列表的流程和页面提示;不改 ESP 屏幕显示、不改云 MQTT 字段解析、不改 USB 串口兜底和单次单 ESP 防误写 回退 companion/server.js 的 syncSavedPrinterListToEsp()、/api/esp/sync-printers、页面同步按钮、refresh() 的 ESP IP 显示和 syncPrinterListToEsp() 成功判断即可恢复 v0.4.42
firmware/backend-v0.4.42-esp-web-config 2026-06-18 ESP 新增内置轻量网页配置页:访问 ESP 局域网地址或配置热点地址的 :8081/ 可查看状态、扫描并保存 WiFi、查看已同步打印机列表并无线切换显示打印机;后端刷新 Bambu 打印机列表或同步云配置时,会把精简打印机列表同步到 ESP 本地 /printers.json;Bambu 云登录和 token 获取仍由电脑端后端完成,避免把云登录流程塞进 ESP8266 影响 ESP HTTP 配置入口和后端打印机列表同步;不改云 MQTT 显示主逻辑、不改原 USB 串口兜底、不改单喷嘴/双喷嘴屏幕显示路径 回退 src/main.cpp 中本地网页、/api/printers*、/api/select-printer 和 /printers.json 逻辑;回退 server.js 的 syncPrinterListToEsp() 调用即可恢复 v0.4.41
firmware-v0.4.41-dual-nozzle-release 2026-06-18 双喷嘴正式版:移除 v0.4.37-v0.4.40 的全部 UI 测试写死数据,进度、热床、左右喷嘴温度全部恢复真实 MQTT 数据;保留双喷嘴 L/R 三秒交替显示、喷嘴温度左移 4 像素、热床轻量显示和工具编号左右映射修正;单喷嘴机型继续使用原来的温度显示模式 影响 ESP 固件双喷嘴显示和双喷嘴 MQTT 温度兜底;不改后端,不写死测试温度/进度,不改变单喷嘴原显示路径 回退到 firmware-v0.4.40-dual-nozzle-ui-test 会回到测试写死 UI;如需回退到无双喷嘴显示,回退到 firmware-v0.4.35 前的固件逻辑
firmware-v0.4.40-dual-nozzle-ui-test 2026-06-18 双喷嘴 UI 测试版 4:保持 v0.4.39 的字体大小和热床温度位置不变,仅将双喷嘴模式下喷嘴温度框整体向左移动 4 像素,用于避开中心图标遮挡;单喷嘴仍使用原来的温度显示模式 只影响当前 ESP 固件测试 UI 中双喷嘴喷嘴温度的位置;不改热床位置,不改后端,不改真实 MQTT 解析;正式版本必须关闭 UI_TEST_MODE 回退到 firmware-v0.4.39-dual-nozzle-ui-test 会恢复双喷嘴喷嘴温度原位置
firmware-v0.4.39-dual-nozzle-ui-test 2026-06-18 双喷嘴 UI 测试版 3:双喷嘴 L/R 喷嘴温度和热床温度同步收小一档,保持 4 号字体但取消加粗叠绘,视觉上比 v0.4.38 轻约 5%;明确双喷嘴交替显示和热床轻量温度框只用于双喷嘴显示模式,单喷嘴仍使用原来的温度显示模式;测试模式继续写死 L 100°C / R 200°C、热床 80°C、进度 100% 只影响当前 ESP 固件测试 UI 显示;不改后端,不改真实 MQTT 解析;正式版本必须关闭 UI_TEST_MODE,不能保留写死测试数据 回退到 firmware-v0.4.38-dual-nozzle-ui-test 会恢复上一版更粗更大的双喷嘴/热床温度显示;正式发布前把 UI_TEST_MODE 改为 false
firmware-v0.4.38-dual-nozzle-ui-test 2026-06-18 双喷嘴 UI 测试版 2:放大双喷嘴交替温度字体,继续以 L 100°C / R 200°C 三秒交替显示;测试模式下额外写死热床 80°C、进度 100%,用于无双喷嘴设备时观察满进度和温度布局;测试数据统一挂在 UI_TEST_MODE 开关下 只影响当前 ESP 固件测试 UI 显示;不改后端,不改真实 MQTT 解析;正式版本必须关闭 UI_TEST_MODE,不能保留写死测试数据 回退到 firmware-v0.4.37-dual-nozzle-display-test 会保留上一版较小字体测试显示;正式发布前把 UI_TEST_MODE 改为 false
firmware-v0.4.37-dual-nozzle-display-test 2026-06-18 双喷嘴测试版:修正工具编号喷嘴左右映射反向问题;喷嘴标题恢复固定 NOZZLE;双喷嘴温度框改为每 3 秒交替显示 L 100°C / R 200°C 这种格式,不再显示 L NOZZLE / R NOZZLE;临时开启写死测试温度,方便无双喷嘴设备时验屏 只影响 ESP 固件喷嘴温度显示和测试温度;不改后端登录、WiFi 配置、打印机选择、热床/层数/进度布局 正式发布前关闭 DUAL_NOZZLE_TEST_MODE;如需整体回退,恢复到 firmware-v0.4.36-dual-nozzle-fallback
firmware-v0.4.36-dual-nozzle-fallback 2026-06-12 固件增加通用双喷嘴 MQTT 兜底:按 device.extruder.info[] / device.nozzle.info[] 的条目数量和 id 识别双喷嘴,不按机型名硬编码;支持 tool1_*、左右喷嘴别名和原始 payload 中 extruder.info 深层解析;双喷嘴显示时每 3 秒在 L NOZZLE 与 R NOZZLE 间切换;热床 nested bed.info[] 数组结构增加兜底 只影响 ESP 固件的喷嘴温度解析、喷嘴标签显示和 H/双喷嘴机型温度兜底;不改后端登录、WiFi 配置、打印机选择和现有屏幕布局 回退 src/main.cpp 中 leftNozzleTemp/rightNozzleTemp/dualNozzle 状态、双喷嘴解析函数、tool1 filter、displayedNozzle* 显示切换和 bed.info[] 兜底即可恢复 v0.4.35 行为
backend-v0.4.35-history-profile-polish 2026-06-07 优化历史 ESP 档案显示:同一串口当前检测到另一台 ESP 时,旧档案会标记为离线;当前没有连接的历史串口也会标记为离线,避免下拉框看起来像多台设备都在线;自动检测后仍自动选中当前唯一连接的 ESP,历史档案保留用于以后这台设备再次插入时识别 只影响后端自动检测后的档案状态显示;不改固件、不改屏幕显示、不改 Bambu 云 MQTT 字段解析 回退到 backend-v0.4.34-flow-polish 会保留主流程优化,但历史档案可能仍显示得像在线设备
backend-v0.4.34-flow-polish 2026-06-07 优化单次单 ESP 配置流程:检测到多台 ESP 时页面直接禁用 WiFi 写入、同步和选择打印机;减少重复串口检测,选择打印机后同步配置、保存 WiFi 后写入配置不再重复扫描两次;页面文案改成“检测当前 ESP / 重新检测 ESP”,弱化 COM 口概念 只影响后端流程性能、防呆和前端文案;不改固件、不改屏幕显示、不改 Bambu 云 MQTT 字段解析 回退到 backend-v0.4.33-single-esp-config-mode 会保留单 ESP 模式,但页面多台设备时仍可能显示可点按钮且配置响应较慢
backend-v0.4.33-single-esp-config-mode 2026-06-07 配置流程改为单次只连接一台 ESP:自动检测发现多台 ESP 时会提示只保留当前要配置的一台,避免多串口误写;电脑端保留公共默认 WiFi、Bambu 登录信息和打印机列表,新 ESP 首次识别或旧空档案会自动继承默认 WiFi,方便连续配置下一台设备;写入 WiFi、选择打印机、手动同步前都会检测是否只连接一台 ESP 影响后端 ESP 检测/写入防呆和页面流程提示;不改固件、不改屏幕显示、不改 Bambu 云 MQTT 字段解析 回退到 backend-v0.4.32-target-http-fix 会恢复允许多台 ESP 同时在线配置的流程
backend-v0.4.32-target-http-fix 2026-06-07 修复多 ESP 同步云配置仍可能写到 COM7 的根因:HTTP 写入 URL 不再重新读取全局当前 ESP,而是使用本次选择的目标 ESP 档案;选择打印机时按按钮携带的 ESP ID 直接锁定目标档案;同步结果返回目标 ESP ID、串口和 HTTP 地址 只影响“显示这台并同步”和“同步云配置到 ESP”的目标选择;不改固件、不改屏幕显示、不改 Bambu 云 MQTT 字段解析 回退到 backend-v0.4.31-auto-detect-esp 会保留自动检测,但可能再次出现 HTTP 写入走到全局当前 ESP 的问题
backend-v0.4.31-auto-detect-esp 2026-06-07 新增自动检测 ESP:后端枚举所有串口并逐个读取 ESP 身份,按真实 MAC/device_id 自动修正每台 ESP 对应的 COM 口;页面启动和刷新串口后会自动检测不同串口状态;已保存 ESP 设备按串口号排序并显示真实串口和在线状态 影响后端串口检测、ESP 档案显示和页面流程;不改固件、不改屏幕显示、不改 Bambu 云 MQTT 字段解析 回退到 backend-v0.4.30-select-target-fix 会恢复手动读取当前串口 ESP 的流程
backend-v0.4.30-select-target-fix 2026-06-07 修复点击“显示这台”时可能推送到旧串口的问题:选择打印机后直接使用刚保存的当前 ESP 档案写入,不再重新猜测目标设备;前端请求带上当前 ESP 身份和串口,后端校验不一致时阻止写入;按钮文案改为“显示这台并同步”,选打印机就是最终写入步骤 只影响后端选择打印机/同步云配置到 ESP 的目标锁定,以及页面流程文案;不改固件、不改屏幕显示、不改 Bambu 云 MQTT 字段解析 回退到 backend-v0.4.29-multi-esp-save-fix 会恢复上一版多 ESP 保存逻辑,但可能再次出现显示打印机推送到旧串口的问题
backend-v0.4.29-multi-esp-save-fix 2026-06-07 修复多 ESP 档案保存顺序:切换到某台 ESP 后保存 WiFi、串口、地址或打印机,会先写入当前 ESP 档案,再同步页面显示;补充接口自测覆盖默认档案禁止写配置、COM7/COM11 档案隔离、串口读取切换 ESP 身份 只影响后端多 ESP 配置保存链路和测试记录;不改固件、不改屏幕显示、不改 Bambu 云 MQTT 数据解析 回退到 backend-v0.4.28-multi-esp-redesign 会恢复上一版多 ESP 流程,但可能再次出现保存 WiFi/打印机后被旧档案覆盖的问题
backend-v0.4.28-multi-esp-redesign 2026-06-07 重做单 Bambu 账号多 ESP 设备流程:云账号共用,每台 ESP 独立保存 WiFi、串口、地址和显示的打印机;后端强制先读取当前串口 ESP 身份,再允许保存 WiFi 或选择打印机;从旧单 ESP 配置升级时,首次读取真实 ESP 会迁移原有 WiFi、打印机和串口配置到该 ESP 档案 影响后端配置结构、页面流程、多 ESP 档案管理;不改 ESP 屏幕显示、不改 Bambu 云 MQTT 字段解析 回退到 backend-v0.4.21-single-esp-rollback 可恢复单 ESP 流程;回退前注意多 ESP 配置会被单 ESP 结构折叠
backend-v0.4.27-wifi-detect-feedback 2026-06-06 检测 ESP WiFi 增加 USB 串口状态兜底,局域网找不到时也能提示 ESP 是否已响应、是否拿到 WiFi IP;保存并配置 ESP WiFi、检测 ESP WiFi 按钮点击后立即显示进度并临时禁用 只影响后端 WiFi 检测反馈和页面按钮状态;不改固件、不改屏幕显示、不改 Bambu 登录、不改 MQTT 数据解析 回退 server.js 的 checkEspStatusViaSerial()、checkEspStatus() 串口兜底和页面 saveEsp()/checkEsp() 忙碌提示
backend-v0.4.26-config-write-fix 2026-06-06 配置保存改为先写临时文件再原子替换,避免读取 ESP 时 config.json 目标文件短暂占用导致 EPERM;保留 v0.4.25 的串口列表合并逻辑,继续稳定显示多个 COM 端口 只影响后端配置保存稳定性和串口读取流程;不改固件、不改屏幕显示、不改 Bambu 登录、不改 MQTT 数据解析 回退 server.js 的 writeJson() 原子写入逻辑和版本号
backend-v0.4.25-serial-merge-fix 2026-06-06 后端串口列表同时合并 Win32_SerialPort 和 mode 两种来源,避免其中一种来源漏掉 COM11;串口列表按 COM 编号去重排序,读取 ESP 下拉框稳定显示所有已连接端口 只影响后端串口枚举;不改固件、不改屏幕显示、不改 Bambu 登录、不改 MQTT 数据解析 回退 server.js 的 listSerialPortObjects() 合并逻辑,恢复 v0.4.24 的单来源优先策略
backend-v0.4.24-serial-list-fix 2026-06-06 后端串口列表改为和刷固件工具一致:优先 Win32_SerialPort,失败再用 mode 兜底;修复页面选择 COM11 后被自动刷新改回当前档案 COM7,导致“读取当前串口 ESP”仍使用旧串口 只影响后端串口枚举和页面串口选择保持;不改固件、不改屏幕显示、不改 Bambu 登录、不改 MQTT 数据解析 回退 server.js 的 listSerialPortObjects()、/api/serial/ports 返回结构和 refresh()/loadPorts() 串口保护逻辑
backend-v0.4.23-esp-url-scan-fix 2026-06-06 修复 ESP 未连接 WiFi 时状态接口返回 (IP unset) 被保存进 last_ip,后续扫描拼出非法 URL 导致 ERR_INVALID_URL;WiFi 扫描接口增加 serial_port 参数,页面扫描时跟随当前选择的 COM 口,避免多 ESP 时扫到旧设备 只影响后端 ESP 地址清洗和 WiFi 扫描串口选择;不改屏幕显示、不改 Bambu 登录、不改 MQTT 数据解析 回退 server.js 的 normalizeEspHost()、isWifiConfiguredStatus()、espScanCandidates() 地址清洗和 /api/wifi/networks?serial_port= 传参
firmware/backend-v0.4.22-multi-esp-profiles 2026-06-06 后端新增多 ESP 配置档案:Bambu 云账号和打印机列表共用,每台 ESP 单独保存 WiFi、串口、ESP 地址和已选择打印机;页面新增“当前 ESP 设备”和“读取当前串口 ESP”;固件状态接口和串口 {"cmd":"status"} 返回 device_id、MAC 和 chip_id 影响后端配置结构和 ESP 身份读取;不改屏幕布局、不改 Bambu 登录接口、不改云 MQTT 数据解析 回退 server.js 的 esp_devices/active_esp_id、多 ESP 页面和 /api/esp/read-device、/api/esp/activate;回退 src/main.cpp 的 device_id/mac/chip_id 状态字段和串口 status 命令
firmware/backend-v0.4.21-esp-serial-wifi-scan 2026-06-04 固件串口支持 {"cmd":"wifi_scan"},后端 WiFi 扫描顺序改为 ESP HTTP、ESP USB 串口、电脑扫描、手动输入兜底;修复 PowerShell 参数传递导致串口扫描 JSON 引号丢失的问题 影响第 2 步 WiFi 扫描体验;不改屏幕布局、不改 Bambu 云登录、不改云 MQTT 显示字段 回退 src/main.cpp 的 handleSerialJson() 扫描命令,回退 server.js 的 listSerialWifiNetworks() 和 PowerShell Base64 参数传递
firmware/backend-v0.4.20-esp-wifi-scan 2026-06-04 固件新增 /api/wifi/scan,后端第 2 步 WiFi 列表优先通过 ESP 扫描附近 2.4G WiFi;ESP 不在线时保留电脑扫描和手动输入兜底;server-state.json 被占用时不再导致配置工具启动失败;文档补充连接 PrintSphereLite-xxxx 热点后扫描的流程 影响首次配置 WiFi 选择体验和后端启动稳定性;不改屏幕布局、不改 Bambu 云登录、不改云 MQTT 显示字段 回退 src/main.cpp 的 wifiScanJson() 和 /api/wifi/scan 路由,回退 server.js 的 listEspWifiNetworks()、writeServerState() 保护和 WiFi 扫描页面文案
backend-v0.4.19-wifi-scan 2026-06-04 后端第 2 步增加附近 WiFi 自动扫描和下拉选择;保留手动输入 WiFi 名称,兼容隐藏网络或电脑无法扫描 WiFi 的情况 只影响后端 WiFi 表单,不改 ESP 固件显示逻辑 回退 server.js 的 /api/wifi/networks 和页面 wifiList 相关代码
firmware/backend-v0.4.18-model-fields 2026-06-04 参考完整 PrintSphere 工程扩展 Bambu 云 MQTT 字段兼容:状态、进度、剩余时间、层数字段增加驼峰/任务/下载进度别名;增加秒级剩余时间转分钟;增加 P2S/H2D 类 nested 温度字段兜底;后端打印机列表规范化显示 A1/A1 mini/P1P/P1S/P2S/H2/X1 系列型号 影响 ESP MQTT 数据解析和后端列表型号显示,不改屏幕布局、不改登录流程 回退 src/main.cpp 的字段候选/温度兜底和 server.js 的 normalizeModelName
release-v0.4.17-cn-flasher 2026-06-04 刷固件工具的用户可见提示改为中文;.bat 仍保持 ASCII + CRLF 并切换 UTF-8 代码页;PowerShell 脚本保存为 UTF-8 BOM,避免 Windows PowerShell 读取中文乱码 只影响刷固件工具显示文案,不改固件、不改后端功能 回退到 release-v0.4.16-flasher
release-v0.4.16-flasher 2026-06-04 新增 刷固件工具,包含中文一键刷入脚本、固件选择、串口选择、擦除并写入 ESP8266、CH340/CH341 驱动安装入口和独立 esptool.exe;交付包同步包含刷机工具 只影响交付工具和文档,不改 ESP 固件显示逻辑、不改后端云 MQTT 配置逻辑 删除 刷固件工具 并恢复上一版 生成交付包.bat
backend-v0.4.15-release 2026-06-04 清理客户交付无关脚本和调试文档;客户启动入口改为中文文件名 打开配置工具.bat;优化根目录和后端中文说明文档;新增 生成交付包.bat,交付包只包含固件、后端配置工具和说明 只影响交付结构、文档和启动入口,不改 ESP 屏幕显示和云 MQTT 解析 回退到 backend-v0.4.14-launcher,恢复旧脚本文件
backend-v0.4.14-launcher 2026-06-04 后端默认从 8795 开始自动寻找可用端口;启动成功后写出 companion/data/server-state.json;打开配置工具.bat 会读取实际端口并自动打开浏览器 只改电脑后端启动体验,不改 ESP 屏幕显示和云 MQTT 解析 回退到 backend-v0.4.13-flow 的 server.js 和旧启动脚本
backend-v0.4.13-flow 2026-06-04 后端页面改成登录、配置 WiFi、选择打印机的步骤流程;未保存 WiFi 前禁止选择打印机;保存 WiFi 后自动写入 ESP 并检测 ESP WiFi 状态;检测到 ESP 局域网地址后自动保存 只改电脑后端流程和状态提示,不改 ESP 屏幕显示和云 MQTT 解析 回退到 backend-v0.4.12-clean 的 server.js
backend-v0.4.12-clean 2026-06-03 清理后端乱码文案和调试遗留逻辑;修复串口设备路径转义错误;恢复串口写入前 BAUD=115200;保留 HTTP 优先、串口兜底、Bambu 云登录和打印机列表功能 只改电脑后端,不改 ESP 屏幕显示和云 MQTT 解析 回退时恢复 backend-v0.4.11 的 server.js,但需保留串口路径和波特率修复
backend-v0.4.11 / firmware-v0.4.11 2026-06-03 固件移除 ESP8266WebServer,改用轻量 WiFiServer 手写 GET 接口;只保留 /api/ping、/api/status、/api/config-url、/api/refresh;后端继续使用 /api/config-url 写入 ESP 配置 只影响 ESP HTTP 配置接口实现,不改屏幕显示字段和云端数据解析 回退时恢复 ESP8266WebServer handler 版本
backend-v0.4.10 / firmware-v0.4.10 2026-06-03 固件检测到配置热点有客户端接入时,立即停止云 MQTT,并重启 ESP HTTP server 重新绑定当前 AP 接口 只影响连接 ESP 配置热点时的 HTTP 稳定性,不改屏幕显示字段和云端数据解析 回退时删除 lastConfigMode 和 restartEspServer() 逻辑
backend-v0.4.9 / firmware-v0.4.9 2026-06-03 ESP HTTP 配置接口改成先返回 queued,再由主循环应用配置,避免 LittleFS 保存或状态重置阻塞 HTTP 响应 只影响 ESP HTTP 配置写入时机,不改屏幕显示字段和云端数据解析 回退时恢复 handler 内同步调用 applyConfigBody() 的逻辑
backend-v0.4.8 / firmware-v0.4.8 2026-06-03 配置热点有客户端接入时暂停云 MQTT,断开后自动恢复 只影响配置热点接入时的临时网络调度 回退时删除 configClientConnected() 及 loop 中配置热点优先逻辑
backend-v0.4.7 / firmware-v0.4.7 2026-06-03 后端写入 ESP 时改走轻量 GET 配置接口 /api/config-url,保留串口兜底 只影响 ESP 配置写入方式 回退时让后端重新使用旧配置接口
backend-v0.4.6 / firmware-v0.4.6 2026-06-03 ESP HTTP 配置端口改为 8081 只影响 ESP HTTP 配置端口 回退时恢复旧端口配置
backend-v0.4.5 / firmware-v0.4.5 2026-06-03 HTTP 响应显式关闭连接;后端在 EACCES 时使用 PowerShell HTTP 兜底 只影响 ESP HTTP 配置写入稳定性 回退时删除 PowerShell 兜底
backend-v0.4.4 / firmware-v0.4.4 2026-06-03 固件新增 APSTA 配置热点兜底 PrintSphereLite-xxxx 增加 ESP HTTP 配置入口备用网络路径 回退时删除配置热点逻辑
backend-v0.4.3 / firmware-v0.4.3 2026-06-03 后端选择打印机时优先 HTTP 写入 ESP,失败才串口兜底;新增 8795 后端启动脚本 只影响后端写入 ESP 配置 回退时恢复更早串口优先逻辑
backend-v0.4.2 2026-06-03 缩短串口写入等待;新增本地版本文档和局域网防火墙脚本 只影响后端配置写入等待和局域网访问 回退到 backend-v0.4.1
backend-v0.4.1 2026-06-03 验证码请求补 type=codeLogin;补 Bambu 云请求头;增加 RFC1918 局域网地址展示;新增 /api/version 只影响后端登录、页面展示和版本接口 移除对应登录请求头和版本接口

当前约束

  • 不改已经正常的 ESP 屏幕显示。
  • 不改云 MQTT 打印进度、温度、层数、剩余时间解析逻辑。
  • 后端改动必须记录版本号和变更内容。
  • 发布包不得包含本机 WiFi、手机号、token、打印机序列号等运行时私密数据。

10 月 28 日:一座宫城、一尊雕像,与一场股灾 2026-10-28

评论区