RF发送来源与受检输出边界
2026-10-04已集成开发候选,RF含操作截止的34组本地故障回归通过,完整候选仍待统一验证和构建,未部署。命令成功仅代表本地GPIO操作获得SDK应答,不能证明无线接收器或远端负载执行。
RF TX控制复用普通输出来源占用。HTTP使用认证会话身份;规则、MQTT和屏幕沿用其真实来源。占用冲突需返回明确review后按同一目标确认,程序不会自动重发。旧无来源的通用二进制writeData接口不再用于RF发送。
码值使用uint32字符串,支持十进制、0x十六进制、裸A-F十六进制与0b二进制。禁止符号、空白、下划线、溢出和嵌入NUL。指定bits不足以容纳码值时拒绝,不截去高位。bits范围1~32,pulseWidth为100~2000μs,repeat为1~20;参数0/省略表示使用既有默认值,二进制默认采用文本位数。
规则动作示例:{"action":"send","code":"0x123","bits":12,"pulseWidth":350,"repeat":3}。code与value只能出现一个;bits与bitLength只能出现一个;码值使用字符串,$value仅可作为完整码值字段,不能展开成新JSON字段。参数不得用浮点、布尔或负数。
HTTP使用code、data、value中的一个码值字段,可附bits/pulseWidth/repeat。不要提交自造actor/source/operation或混合别名。HTTP503/来源失效意味着结果未确认,可能已经部分发送,必须先核对现场反馈,不能自动重试。
每帧之间复核来源;来源过期后停止后续帧。发送仍为同步OOK,最大参数下请求的名义延时合计6.42秒,调度、Wi-Fi抢占与SDK耗时还会增加时间;这不是实际时延上限。发送期间共享外设管理锁,其它输出更新、到期停止和设备查询可能推迟或返回忙。真实脉宽、射频接收成功率、并发响应与最差停止时间仍待实物测量,不能只凭命令通过认为组合可用。
规则队列沿用入队时建立的操作截止时间,不为每次RF发送重新起算。候选在每帧前和最终返回前检查该截止;若尚未发送就过期则没有输出尝试,途中到期则返回未确认且保留已部分发送的事实,停止后续帧。正在进行的帧会完成inactive边界;硬件写或清理失败继续保留错误和占用,不自动重发。此增量已通过本地计时/回绕/故障回归,不承诺硬实时。手动占用过期不会自动发送“关闭”码。
activeHigh=false的TX以HIGH为inactive。初始化、失败清理及释放都使用该配置电平;若SDK无法确认清理,则保留占用和错误。切换输入不是电气关断证据,外部上下拉和接线必须保持已确认的安全状态。
本机RF外设ID只标识本地发射引脚,不能识别、独占或证明远端无线负载。实物测试前仍须重新确认稳定候选、配置保全、设备身份、接线与授权范围;未知危险输出维持NOT_RUN。
TX模式不提供GPIO输入/远端负载读回,readRfLevel/readPin会明确拒绝,避免把发送统计当作逻辑电平。RX采样维持独立,不是远端负载确认。

