Photonicat 2 固件更新日志
English version: Photonicat 2 固件 Changelog.
2025-08-22
- 首个正式版本。
2025-09-19 r7612
- 简化多 WAN 路由,停用
mwan3。 - 默认内置 Docker 相关软件包。
- 内核升级至 6.12.45。
- 合入上游 PCIe 补丁。
- 增加 USB Hub 复位时序与看门狗。
- 状态指示灯与蜂鸣器可由用户关闭。
- 提升小屏幕显示性能。
- 增加 LED、蜂鸣器与风扇控制,并加入过温保护算法。
- 简化网络 WAN 接口选择:
auto、eth_only、cell_only、all_off。 - 新增 /update 管理界面。
- MCU:优化库仑计算法。
- MCU:修复充电指示灯偶尔不亮的问题。
2025-12-12 r7618
- 去掉不必要的网络复位,加快开机速度。
- 更新 OpenWrt
netifd,改善 NFA765 无线模块兼容性。 - 改进风扇控制策略与整体散热表现。
- 优化智能调速逻辑:
smart_quiet、smart_cool、manual。 - 修复网络模式设为 仅蜂窝网络 时界面崩溃的问题。
- 修复界面不显示 4G/5G 频段信息的问题。
- 修复部分 5G 模块信息页面内容缺失的问题。
- 修复 5G 信号不显示的问题。
- 修复重启后 记住我 登录选项失效的问题。
2026-03-06 r7660
- 内核与系统更新 —— 内核升级至 6.12.74,mac80211 升级至 6.12.61,python3 升级至 3.13.9 并同步更新相关软件包(改用基于 PAM 的认证,替代已废弃的
spwd),系统版本升级至 26.04,修复多个 CVE。 - 支持广和通 FM350-GL 5G 模块 —— 完整支持信号强度、温度监控、IMEI、运营商显示、服务小区信息、漫游偏好、4G/5G 网络模式与频段选择、通过 rfkill 关闭 WWAN 供电、流量统计,以及十六进制编码运营商名称的解码。
- 短信可靠性 —— 所有模块统一改用 PDU 模式,修复 FM350-GL 的串口处理、提示符检测与响应超时问题。
- 网页终端 —— 新增网页终端(
/terminal),支持持久 PTY 会话、全屏切换、断开/重连、JetBrains Mono 字体与移动端视口优化。 - 直流供电模式与 TCP BBR v3 —— 新增开机模式选项,适用于无电池及需要快速响应的场景(接入适配器即自动开机,无需电池)。新增 TCP BBR v3 支持,可在常规设置中配置拥塞控制算法。
- 电池历史与电源事件记录 —— 新增基于 SQLite 存储的电池历史曲线,固定电压刻度、区域填充、功率显示,以及开关机事件时间轴。持久记录电源事件,包含电压、电流、电量数据与 DC 插拔跟踪。
- 空闲与低电量关机 —— 空闲关机倒计时实时显示、低电量自动关机、WiFi 客户端空闲监测(OR 模式)、仅电池供电时自动关机选项,以及电量估算跳变 2% 的容差处理。
- 常规设置与定时页面重做 —— 新增常规设置页面,可设置语言、时区、主机名并与 LuCI 同步。定时页面改为现代化的左右分栏布局,面板更紧凑并占满宽度,车载/UPS 模式说明更清晰。
- 仪表盘与顶栏改进 —— 优先显示当前活动 WAN、公网 IPv6 检测、模块温度显示、网络图标行中的 5G/4G 标识、按状态渲染、网关下划线,以及移动端顶栏布局优化。
- 性能与界面细节打磨 —— 原生 Python ubus/uci 封装、非阻塞 IO 缓存、CPU 省电模式下关闭大核(A72)、静态资源缓存 3 个月、温度与功率曲线图、刷新后保留标签页状态、通知只用单一语言、图标改进、页脚新增 Wiki 与社区按钮、智能手机号格式化,以及更详细的固件升级进度显示。
2026-06-15 r7714
- 内核与系统更新 —— 内核升级至 6.12.91,修复近期若干严重安全问题。mac80211 升级至 6.18.26,修复多个 CVE。
- OpenWRT 基础系统 —— 基础系统与 LuCI 升级至 25.12。新增 IEEE 802.11be 支持(可在 QCNCM865 与 MT7925 上启用 6GHz 信道)。
- Smart WAN(WiFi 当作 WAN) —— 新增 Smart WAN 模式,把板载无线变成上级 WiFi 客户端,并在以太网 → WiFi → 蜂窝之间自动故障切换。像手机一样自动重连已知的上级 WiFi,扫描设备解析更稳健,切换前会有确认对话框。被停用的 STA 射频现在会正确显示为独立的 "WAN (WiFi)" 状态。
- WiFi 7(802.11be)与 WPA3 —— PCIe 网卡新增 WiFi 7(BE)与 WPA3-SAE 支持,正确处理 5GHz BE 与 6GHz BE 的 htmode/信道,支持 PCIe 卡型号识别,并统一了界面中的加密方式取值。
- 仪表盘与顶栏改进 —— 当前出口实时高亮(只有正在使用的 WAN 行会亮起);显示 WiFi 信号、当前出口与网络模式;网络图标随状态变化,带网关下划线、准确的 WAN 下划线、被禁用链路的红叉与提示文字。新增公网 IPv6 / 公网 IP 别名。
- 电池与充电控制 —— 在设备控制页面新增电池充电限制滑块(80–100%),以充电限制作为唯一数据源,修正电池图标显示真实电量百分比,并在从未设置过时稳妥地默认为 100%。
- 硬件要求:充电限制功能仅 A3 版本 PCB 的机器支持,更早的 PCB 版本不支持该功能。
- 小屏幕可视化编辑器 —— 新增 Figma 风格的屏幕布局可视化编辑器,与 JSON 视图合并为同一个"编辑器"标签页。支持增删页面、单个元素位置重置、居中与吸附工具、恢复默认布局、JSON 实时差异对比、标签/数据键画布切换,并修正了编辑器坐标到设备显示区域的映射。修复设备端 graph 元素类型的渲染问题。
- 小屏幕自定义数据源 —— 编辑器中新增自定义指标(command / uci / env / json_file / HTTPS),附带设备端示例、一键保存并重启、刷新时实时预览取值、重复键名警告、更清晰的 data_key 说明、通过官方 Photonicat 行情 API 提供的黄金/AAPL 示例,以及无闪烁的实时预览。
- 设备控制与网络模式 —— 重新排列网络模式并使用组合式 WAN 图标;把充电限制设置统一收纳到设备控制页面。
- FM350-GL 漫游 —— 通过
AT+COPS=0启用自动漫游,并隐藏了实际无法生效的"禁止漫游"选项;修复轮询刷新会覆盖频段选择的问题;移除会导致 LAN/WAN 失效的 USB 3.12 10Gbps 选项。 - 安全加固 —— 为 WebSocket 端点增加
socketio_auth_required装饰器,为/switch_locale与低电量关机相关路由增加鉴权,并移除未使用或权限过高的 API 端点。 - 性能 —— 降低空闲 CPU 占用(默认只写文件日志、减少 select 唤醒与 uci 进程调用),缓存
data_stats.json并让仪表盘缓存与屏幕轮询对齐,去掉一个空转的屏幕线程,改为直接从 sysfs 读取 WWAN rfkill 状态。 - 小屏幕性能 —— 显示循环 CPU 占用大幅下降(静态页面约 3.2% → 约 1.4%,降低约 55%):通过数据版本门控跳过画面无变化时的重绘与 SPI 传输,传输前先做字节比较,并把各类轮询频率减半。字体(包括约 37MB 的中日韩字体集)改为只解析一次并缓存预加载,网络信息查询(无线 SSID、iwinfo 客户端枚举、公网 IP)也做了缓存,进程调用从约 3.8 次/秒降到约 1.7 次/秒。
2026-06-16 r7715
- 小屏幕 SPI 时钟可靠性 —— 将屏幕 SPI 时钟从 120 MHz 降到 50 MHz,消除高频率下的画面异常或显示问题;保守的时序只带来可忽略的刷新延迟,换来稳定无杂点的画面。
- 序列号校验修复 —— 有效的设备序列号在设备上被错误显示为
(invalid),原因是签名校验依赖cryptography模块,而目标 OpenWrt 固件中并未安装该模块。
2026-06-23 r7720
- OpenWRT 基础系统 —— 路由与电话相关软件包更新至 OpenWRT 25.12 分支。默认防火墙切换为 fw4。
2026-07-31 r7854
- 开机时间缩短 59% —— 17.4 秒 → 7.2 秒 —— 完整重启一次现在只需 16.6 秒,之前是 28.0 秒。最大的单一原因是一条多余的
fstab条目,导致每次开机所有服务都要等待一块根本没有装的硬盘。此外:根文件系统压缩从xz改为zstd,squashfs 重新调整为 256 KiB 块并启用直接读取,U-Boot 不再扫描 USB 与网络寻找启动介质,开机 Logo 改为一次 SPI 传输完成(此前是 110,080 次单字节传输),failsafe 等待窗口从 1 秒缩短到 300 毫秒。 - 可选服务出厂不再自启 —— Docker、Samba、collectd、aria2、nlbwmon、watchcat、frp、filebrowser、rclone、adbyby、OpenAppFilter、Tailscale 与 ZeroTier 仍然预装,但不再开机自启(运行中的服务从 73 个降到 59 个);需要时在 系统 → 启动项 中一键启用即可。
vnstat与网页终端有意保持运行。 - WAN 优先级表取代 Smart WAN 模式 —— r7714 的 Smart WAN 开关改为基于路由 metric 的优先级表,按固定槽位顺序列出所有已启用的上行链路 —— 以太网、上级 WiFi、PPPoE 与蜂窝 —— 并逐级向下切换。它完全取代了
mwan3。有线 WAN 现在在链路断开时立即切换,而不用等探测超时;PPPoE 也能被正确识别为当前出口。 - 上级 WiFi(WiFi 当作 WAN) —— 同一 SSID 同时广播 2.4G 与 5G 时自动接入信号更强的频段;已连接状态下也会漫游到重新进入范围的已保存网络;漫游离开后能更快重新接入已知网络;实时显示关联与待机状态并带有各射频的图标;附近没有已保存网络时降低扫描频率。
- 全新 /dev 诊断页面 —— 由内置 G-sensor 驱动的实时 3D 设备模型,并提供引导式姿态校准;显示各段电压的 2S2P 18650 电池组示意图;MCU 电量计日志;以及模块拨号日志查看器。还有内置蜂鸣器的音调测试与 MIDI 播放。
- 广和通 FM350-GL 5G 模块 —— 拨号程序由 Python 重写为原生 C 实现,可靠性更高。现在会遵循网页界面中设置的网络模式偏好,需要时锁定 4G 并在 5G 可用时自动回到 5G,5G 拨号失败会回退到 LTE,并监控数据面以发现"连接已建立但不通流量"的情况。修复了仅支持 4G 的 SIM 卡导致模块无限重启上电的问题,以及自动模式被误报为 5G 的问题。现在会显示模块固件版本,并提供固件更新对话框。
- 模块拨号日志 —— 最近 16 MB 的拨号活动会保存在内存中并可在网页界面查看,便于事后排查间歇性的连接问题。
- 电池充电限制 —— 1% 精度的滑块,带防抖保存并同步给 MCU,同时实时回读,界面始终反映硬件实际执行的限制值。该限制现在在 MCU 重启后依然保留。
- 硬件要求:充电限制功能仅 A3 版本 PCB 的机器支持,更早的 PCB 版本不支持该功能。
- 固件与 MCU 更新流程 —— 版本下拉框中可查看各版本更新说明并支持降级;MCU 与固件更新不能再同时进行;当已安装的 MCU 版本比服务器上的更新时不再提示更新;OTA 默认使用
sysupgrade -c -p,各个参数以勾选框形式开放。 - PhotonDNS —— 全新的高性能 DNS 转发器,使用 Rust 编写:分片 LRU 缓存、过期仍可用(serve-stale)、预取、缓存持久化,支持 UDP/TCP/DoT/DoH 上游与并发竞速故障切换,并对每个上游做健康跟踪,另附国内域名列表与广告列表辅助功能。自带 LuCI 页面,但默认关闭。
- 安全加固 —— 强制启用 CSRF 校验,LuCI 密码不再泄露到页面中,所有 API 路由都需要鉴权,状态变更只允许 POST,开发者端点受到限制,修复了一处开放重定向,记住我 改用基于 SQLite 的正规令牌实现。
- 访客门户(Captive Portal) —— 一键接受、无需 DNS 也能打开的门户地址、带品牌样式的错误页、启用/停用操作串行化(快速反复切换不会留下半配置状态),失败会明确提示而不是静默忽略。
- 更低空闲 CPU 与更少闪存写入 —— 只有打开模块页面时才执行较重的 AT 查询,使用统计批量写入闪存并带保留期与索引,PMU 设置改为每 60 秒轮询一次而非持续轮询,公网 IP 探测采用退避策略,浏览器标签页隐藏时完全停止轮询。
- 小屏幕 —— 全新的猫咪苏醒开机动画。改为按页面设置刷新率(时钟与 CPU 页面 2 Hz,ping 时 1 Hz),不再是统一固定刷新率。新增每核心 CPU 条、数值内嵌的内存条、各磁盘占用条与滚动的 SSID 跑马灯。iStat 风格的进度条采用超采样抗锯齿,文字更柔和。新增电池剩余时间栏位、WAN 模式行、可配置的公网 IP 查询、亮度为 0 时真正的物理全黑背光,以及上级链路未关联时进入待机。
- WiFi 修复 —— 修复开机后 AP 已启动却不广播 SSID 的间歇性问题,以及新版 OpenWrt 下的 WLAN 启用状态判断(射频需要接口与设备同时启用才会工作)。新增 恢复 WiFi 默认设置 按钮,便于从错误配置中恢复。
- eMMC 兼容性 —— 内部存储在 bootloader 与内核中都固定为 HS200 @ 52 MHz,消除了一类间歇性存储错误。
- 其他修复 —— CPU 省电设置重启后保持生效;手动风扇转速在页面刷新后保留;通过 USB Type-C 为外部设备供电时电池能正确显示为放电状态;PPPoE keepalive 放宽为
5 5,避免误断线;移除irqbalance,改为静态绑定以太网中断(此前发现它会把两个网口中断都放到同一个核心上);补齐缺失的英文字符串;Alpine.js 升级至 3.15.12。
MCU 更新
- 待机功耗更低 —— 待机电流从约 2.6 mA 降到 1.1 mA,关机状态下充满电的电池组可以保持数周而不是几天。电流监测芯片、加速度计与闪存现在会正确断电,主板关闭时风扇也会真正停转。
- 更准确的电量百分比 —— 电量计从头到尾重做,加入温度补偿、内阻自学习与周期性重新锚定。读数不再跳变(例如固件更新后从 40% 跳到 80%),能在重启与固件更新后保持,并可上报学习到的真实容量与循环次数。整体表现已经非常接近手机。
- 全新指示灯行为 —— MacBook 式指示灯:颜色表示充电状态,动态表示设备状态,充电时为平滑的伽马校正呼吸效果,低电量时持续红色闪烁。修复了开机时以及电池充满时出现的多次误报纯红闪烁。
- 抬起唤醒改进 —— 重写为真正的手势识别,和手机一样。设备竖立静置时不会再自行唤醒,而真正拿起时响应更快。
- 稳定性与开机速度 —— 修复长时间运行后的随机死机,以及较少见的、只能通过取出电池才能恢复的永久性死锁。开机更快:按键按住 200 毫秒后主板即上电,与长按判定窗口重叠进行。修正蜂鸣器时序,包括插入充电器后可能延迟 40–50 秒才响的提示音;复位与更新操作现在会播放一小段确认旋律。
2026-08-11 r7897
GPS
- 新增 GPS 页面 —— 地图定位、精度、速度、航向和各卫星信号。默认关闭,可在"通用设置"中开启。
- 离线地图与轨迹记录 —— 内置世界地图包,可下载区域地图,并可记录和回放行驶轨迹。
- 可在 GPS 之外启用 GLONASS、北斗和伽利略。
蜂窝网络
- 5G 连接中断后可自行恢复,不再出现显示已连接、实际不通、必须重启的情况。
- 修复可能导致蜂窝网络完全不通的启动时序问题,且不再覆盖您的路由优先级。
- 未安装模块的设备不再显示"无服务"。
网络与 WiFi
- 默认设置下故障切换现在真正生效 —— 此前大部分设备从未迁移到当前的路由机制。
- 您的网络名称和密码不再丢失 —— 使用上游 WiFi 中继后不再丢失,关闭后也会恢复原有名称。
- 刷机后外接 PCIe WiFi 网卡即可使用,无需额外重启或手动开启。
- 修复 AIC8800 WiFi 的单客户端流量统计,并可在网页界面查看。
电话功能(开发中)
- 初步支持在网页界面拨打和接听电话,包含通话音频、拨号盘、联系人和语音信箱。默认关闭。仅支持 RM500U 和 RM500Q,EM05 待支持。
电池与 MCU
- 电量百分比与健康度估算改进 —— 读数稳定后才显示,不再在插电后或首次放电后跳变。
- 充电上限在 MCU 重启后保留,休眠期间 LED 与蜂鸣器定时计划继续运行。
- 新增读数 —— 电池内阻、MCU 运行时长和主板版本。
网页界面
- 速度大幅提升,不再每约 25 秒卡顿 18–24 秒。
- 语言与浅色/深色改为设备级设置,不再随浏览器变化,并新增恢复默认按钮。
- 显示屏主题新增取色器,重启页面在设备恢复后自动刷新。
迷你显示屏
- 新增 GPS 页面,仅在支持 GPS 的模块上显示。
- 存储页面重新设计 —— eMMC、NVMe 和 SD 各自独立的进度条,布局更清晰。
- 刷新更智能,新增配色主题与公网 IP 实时跟踪,唤醒后时钟和电量不再是旧值。
NAS 与共享
- 现在可以挂载 SMB 共享,NFS 服务器也能真正导出共享。
- 修复 eMMC 分区失败问题,NTFS 磁盘现在也能正常挂载。