CATALOG

大家好,今天我们来聊一个有意思的话题:怎么对芯步的1路独立控制墙壁开关进行二次开发,实现远程参数配置管理

可能有人会问:“墙壁开关有什么好配置的?不就是开和关吗?” 其实不然。在实际场景中,你可能需要:

  • 让走廊灯点亮2分钟后自动熄灭,避免长亮浪费电

  • 设置“防误触”模式:熊孩子关了鱼缸灯?3秒后自动又打开

  • 远程调整默认开关状态,或者做一些定时联动

芯步这款开关的优势在于,它开放了完整的 HTTP API 接口,无论你是用 Python、Java、JavaScript,还是写 Shell 脚本,都能轻松搞定。下面我们直接上干货。

一、准备工作:先拿到三样东西

在写代码之前,需要先准备好三样东西:

  1. AppID 和 AppSecret:登录芯步控制台,在“开发设置”里就能看到。这俩相当于你的“账号密码”,调用接口时要用。

  2. 设备 ID:把开关配网成功后,在控制台设备列表里能看到一串数字,比如 820720

  3. 设备连上网:确保开关已经连上 2.4G WiFi,指示灯常亮说明在线。

配网过程也不复杂,官方提供了电脑控制台和手机小程序两种方式,跟着指引把 WiFi 名密码填进去就行

二、核心玩法:HTTP 接口怎么调?

芯步的接口设计得很直白,本质上就是往指定 URL 发一个 POST 请求,带上 JSON 格式的命令。

请求地址格式:

请求体样例(控制第1路打开):

这里面有个小坑要注意:签名(sign)的生成规则。官方用的是“双重 MD5”加密

简单说,就是把你的 AppSecret 先 MD5 一次,然后拼接上当前的时间戳(秒级),再把拼接后的字符串整个 MD5 一次。虽然听起来有点绕,但封装成一个函数就很简单了。

三、进阶功能:远程参数配置到底配什么?

这是今天的重点。除了基本的开关,这款开关支持好几种“远程参数配置”模式:

1. 状态保持模式(远程锁定)

想象一个场景:你管理着一栋楼的公共照明,不希望租户随手把灯关掉。这时候可以用 “保持开” 模式。

命令示例:

含义:强制第1路保持开启,即使用户手动按了开关关掉它,10秒后它也会自动再打开

反过来,如果是“保持关”(比如下班后锁定设备防止误开):

这个功能的本质就是 “远程参数配置”——你不需要去现场撬开开关,而是通过网络远程下发一个参数,告诉设备“以后按这个策略运行”。

2. 先通后断 / 先断后通(脉冲模式)

有些场景需要“点动”效果,比如控制门禁、或者给一个信号触发。可以用 point1(先通后断)或 reset1(先断后通)。

命令示例(先通后断,2秒后自动断开):

开关会立即闭合,2秒后自动断开,像按门铃一样

命令示例(先断后通,3秒后恢复):

这两个参数在很多工业控制场景里非常实用,你可以远程配置脉冲宽度,精确到毫秒级。

3. 直接控制(基础开关)

这个最简单,直接开/关:

四、实际操作:Python 代码示例

光说不练假把式,下面用 Python 写一个完整的示例,涵盖签名生成命令下发

这段代码你可以直接集成到自己的云平台、小程序后台,甚至跑在一台树莓派上做定时任务。

五、局域网方案:更极致的速度和隐私

如果你对响应速度要求很高,或者不希望数据经过公网(比如工厂内网),芯步还支持局域网私有化控制

只要你的电脑和开关连在同一个路由器下,就可以直接请求开关的 IP 地址: