SnapLog 串口日志云桥 · 规格书

固件 V3.26.0-CLOUD · 后台 iot.snapwhere.app · 2026-10-23

一、基本规格

型号SnapLog 串口日志云桥(基于 ESP32-C3 SuperMini)
主控ESP32-C3FH4 / FN4,32 位 RISC-V 单核,160 MHz
SRAM400 KB(实测可用 heap 约 290 KB)
Flash4 MB(芯片内封),双 OTA 分区,无 PSRAM
供电USB 5 V;可用充电头、电脑 USB 口、充电宝
存储扩展TF(microSD)卡槽 1 个,仅支持 FAT32,建议 32 GB 以内
固件升级支持 OTA(远程 / 本地网页)
掉电记忆Wi-Fi、波特率、过滤规则、开关状态、TF 落档模式、编号水位全部存 NVS

二、串口规格

抓取通道1 路 UART:GPIO20 = 收(RX),GPIO21 = 发(TX)
电平3.3 V
波特率300 ~ 3,000,000 bps,默认 115200
格式数据位 5–8,校验 N / E / O,停止位 1 / 2,默认 8N1
接线方式旁路嗅探,不占用目标设备串口;收发交叉接,GND 必须共地
USB 桥接原生 USB CDC,免驱,波特率自适应,可与抓取同时进行
远程串口TCP 端口 3333
接收缓冲硬件 UART 接收 FIFO 8 KB

三、无线与配网

无线标准Wi-Fi 4,802.11 b/g/n,仅 2.4 GHz(不支持 5 GHz)
工作模式AP + STA 同时在线:一边连路由器上云,一边保留本地热点
配网方式连热点自动弹配置页(强制门户),无需 App
默认热点名称 SnapLog-XXXX(XXXX = 设备号后 4 位),密码 12345678
配置页地址http://192.168.4.1
本地网页账号默认 admin / admin123(建议首次使用后修改)
蓝牙硬件支持 BLE 5.0,当前固件未启用

四、云端通信

协议MQTT over WebSocket Secure(WSS),带 TLS 加密
接入地址wss://iot.snapwhere.app/mqtt
投递等级QoS 1(至少一次),等待 PUBACK,8 秒超时用同一批重发
离线感知MQTT 遗嘱消息(LWT),断线即刻标记离线
心跳30 秒一次,携带在线状态、信号强度、缓冲水位、过滤配置等
批次上限每批 ≤ 40 行或 ≤ 2200 字节,同一时刻仅一批在途
行编号逐行 uint32 序号,服务端按(设备号, 序号)去重,可重复发

五、缓冲与可靠性

内存缓冲ring,开机按可用堆动态分配 8–32 KB;实测本机 8192 B ≈ 100 行
flash 缓冲spill,上限 64 KB(16 × 4 KB)≈ 790 行,默认关闭,掉电保持
溢出策略内存满则丢最旧保最新;云端离线时才转写 flash,连上后自动回灌补传
回灌节奏每轮最多搬 8 行,且要求内存缓冲留有余量,实时数据始终优先
完整性判据seq 跳号检测,后台可列出缺行区间、行数与时间
降载手段设备侧过滤(级别 / 关键字 / 采样)、一键暂停上行
缓冲按行数计算,能撑多久完全取决于日志速率:满速 boot log(数千行/秒)不足 1 秒,10 行/秒约 90 秒,1 行/秒约 15 分钟。它的定位是覆盖一次断线重连 —— 需要长时间离线留档,请用第六节的 TF 卡。

六、TF 卡离线记录

记录模式三档可选:关 / 仅断网时 / 始终写;后台「更多 → TF 卡离线日志」或串口 #SD 0|1|2 切换,掉电保持
写入内容经过设备侧过滤之前的完整原始行(云端只为通过过滤的行付流量,卡上留全档),带行首时间戳与级别字符
落盘节奏2 KB 缓冲,写满或静默 1.5 秒即刷盘,避免频繁小写缩短卡寿命
文件组织/snaplog/0001.log 顺序编号;单文件满 4 MB 自动切下一个,最多 48 个(约 190 MB)
内容导出后台「历史查询 → TF 文件导出」:像打开文件夹一样列出卡上文件、勾选下载(单文件纯文本 / 多文件 zip)。写卡开关关闭也能浏览和导出 —— 关的是「写」,不是「读」;导出结束后卡自动卸回未挂载状态
导出限制一次 ≤ 8 个文件、合计 ≤ 16 MB;文件名须 NNNN.log / NNNN.done;同一台设备同时仅一个导出任务;设备必须在线
导出速率实测约 2.5~3 KB/s(24 KB ≈ 9 秒、67 KB ≈ 24 秒);单次取文件超时 90 秒,建议单文件 ≤ 200 KB。更大的档请拔卡读或用串口 #SDGET
补传已取消。卡上的档不进日志库、不占额度,只在「TF 文件导出」里直接下载 —— 灌回云端要占上行流量与配额,还会挤掉实时日志
卡拔出 / 未插不影响抓取与上云;后台与串口报 sd_ok:false 与原因,可热插拔后重试挂载
卡与屏的关系TF 与 LCD 共用 SPI2 总线,本版固件默认不初始化屏幕,把总线与 60 KB 帧缓冲全部让给写卡
卡必须格式化为 FAT32。exFAT / NTFS 的卡会挂载失败(@SD|MOUNT_FAIL)—— 32 GB 以内的卡在 Windows 下默认格式即 FAT32,64 GB 及以上需用工具转成 FAT32。

七、后台服务规格(默认值,均可调整)

每日上行流量100 MB / 账户(名下所有设备合计),单设备上限同为 100 MB
每月上行流量20 GB / 账户
日志保留40 MB 或 7 天,先到者为准(滚动覆盖最旧的)
存储配额300 MB / 账户
显示主题实时页两种看法:日志流(解析展示,按级别着色)/ 嵌入式调试模式(xterm 终端,忠实透传字节);两者底色一致
在线判定30 秒心跳 + MQTT 遗嘱消息(LWT);拔电 / 断网通常 1~2 秒内标记离线,页面收到状态推送后即时刷新
设备数上限20 台 / 账户
绑定方式4 位认领码(已剔除 O/0、I/1 等易混字符)
分享免登录只读链接,可随时收回

八、物理与环境

模块尺寸22.52 × 18 mm
芯片工作温度−40 ~ +85 °C
整机尺寸 / 重量待补(按最终外壳填写)
整机工作温度待补(按整机实测填写)
防护等级待补
认证待补(CE / FCC / RoHS 等,视出货地区)

九、接口与命令

本地网页实时日志、发命令、改波特率、Wi-Fi 配置、串口抓包、TF 卡设置、OTA
串口控制台#HELP 查看全部;常用:#STATUS 状态、#UART 波特率、#WIFI 配网、#LOG 上行开关、#FILTER 过滤、#SPILL 落盘、#SD TF 落档、#SDLIST 列卡上文件、#SDGET <nnnn.log> 串口导出、#SDCLEAR YES 清空卡、#LCD 屏幕开关、#REBOOT 重启
云端下发波特率、过滤规则、上行开关、落盘开关、TF 落档模式、TF 文件列表 / 取文件、重启;全部经 MQTT 下行

SnapLog · 产品规格书 · 标注「待补」的项需按最终整机实测填写