Appearance
AP配网
第二版(新)
协议规范:设备通过 softAP 方式创建一个 Wi-Fi 热点,手机连接该热点,再通过 UDP 通讯,将目标 Wi-Fi 路由器的 SSID/PSW 传递该设备,设备获取后,即可连接 Wi-Fi 路由器从而连接互联网。
手机连接设备 softAP 热点成功后,手机作为 UDP 客户端会连接 esp8266设备上面的 UDP 服务(默认 IP 为192.168.4.1,端口为8266)
第一步
手机向设备的 UDP 服务,发送 路由器的 Wi-Fi 和WIFI密码,以及用户私钥Token,JSON 格式为:
{"cmdType":1,"ssid":"Home-WiFi","password":"abcd1234","token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","topic":"light001"}
cmdType: 手机数据指令,默认为1。
ssid: 路由器wifi名称。
password:路由器wifi密码。
token: 巴法云用户私钥,如果使用过巴法云扫码登录,该私钥和微信扫码登录后的私钥一致,如果未使用过巴法云微信等相关功能,手机则会自动创建账号并生成私钥,之后使用微信扫码登录可查看此私钥信息。
topic: 可选参数,发送到设备的附加信息。
第二步
发送完成后,等待设备 UDP 回复信息:
{"cmdType":2,"productId":"Hjgwhge002","deviceName":"dev_01","protoVersion":"3.1"}
cmdType: 设备回复指令,默认为2。
productId: 可选参数,设备主题值,即设备id,如果携带此参数返回到手机,手机会自动创建主题值为 productId 值的主题,主题类型为 protoVersion 类型。
deviceName: 可选参数,设备主题昵称,灯、插座、风扇暂不支持deviceName。
protoVersion: 可选参数,协议类型,1.1是MQTT设备云,3.1是tcp设备云。
第三步
手机向设备发送确认状态
{"cmdType":3}
第四步
设备创建主题
POST接口
JSON格式 数据类型 "Content-Type": "application/json; charset=utf-8"
API: http://pro.bemfa.com/vs/web/v1/deviceAddTopic
参数 | 是否必须 | 类型 | 说明 |
---|---|---|---|
uid | 是 | 字符串类型 | 用户私钥 |
topic | 是 | 字符串类型 | 需要创建的主题,字母数字组合 |
type | 是 | 整形 | 1=MQTT,3=TCP协议 |
wifiConfig | 是 | 整形 | 1=ap配网,2=蓝牙配网 |
name | 否 | 字符串类型 | 设备名称、昵称 |
room | 否 | 字符串类型 | 房间名字,字符长度小于8 |
unCreate | 否 | 整形 | 是否创建主题,0=创建,1=不创建,默认0 |
adminID | 否 | 整形 | 管理员ID |
请求体示例:
{
"uid":"4d9ec352e0376f2110a0c601a2857225",
"topic":"led002",
"type":3,
"wifiConfig":1
}
正确返回:
{
"code": 0,
"msg": "success",
"data": {
"code": 0 //0或40006表示配网成功
}
}
参数 | 类型 | 说明 |
---|---|---|
code | 整形 | 0或40006表示配网成功 |
使用示例:
第一步:下载程序到开发板
简单程序:点击下载
ap配网+TCP协议控制程序:点击下载
第一版(旧)
协议规范:设备通过 softAP 方式创建一个 Wi-Fi 热点,手机连接该热点,再通过 UDP 通讯,将目标 Wi-Fi 路由器的 SSID/PSW 传递该设备,设备获取后,即可连接 Wi-Fi 路由器从而连接互联网。
手机连接设备 softAP 热点成功后,手机作为 UDP 客户端会连接 esp8266设备上面的 UDP 服务(默认 IP 为192.168.4.1,端口为8266)
第一步
手机向设备的 UDP 服务,发送 路由器的 Wi-Fi 和WIFI密码,以及用户私钥Token,JSON 格式为:
{"cmdType":1,"ssid":"Home-WiFi","password":"abcd1234","token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","topic":"light001"}
cmdType: 手机数据指令,默认为1。
ssid: 路由器wifi名称。
password:路由器wifi密码。
token: 巴法云用户私钥,如果使用过巴法云扫码登录,该私钥和微信扫码登录后的私钥一致,如果未使用过巴法云微信等相关功能,手机则会自动创建账号并生成私钥,之后使用微信扫码登录可查看此私钥信息。
topic: 可选参数,发送到设备的附加信息。
第二步
发送完成后,等待设备 UDP 回复信息:
{"cmdType":2,"productId":"Hjgwhge002","deviceName":"dev_01","protoVersion":"3.0"}
cmdType: 设备回复指令,默认为2。
productId: 可选参数,设备主题值,即设备id,如果携带此参数返回到手机,手机会自动创建主题值为 productId 值的主题,主题类型为 protoVersion 类型,需要手机自动创建主题时需返回该值。
deviceName: 可选参数,设备主题昵称,灯、插座、风扇暂不支持deviceName。
protoVersion: 可选参数,协议类型,1.0是MQTT设备云,3.0是tcp设备云,需要手机自动创建主题时需返回该值。
第三步
手机向设备发送确认状态
{"cmdType":3}
区别 | 第一版 | 第二版 |
---|---|---|
protoVersion字段 | 3.0或1.0 | 3.1或1.1 |
创建主题 | app端创建 | 设备端创建 |
巴法app和一键配网小程序同时兼容第一版、第二版协议
使用示例:
第一步:下载程序到开发板
esp8266 示例程序:点击下载
esp32 示例程序:点击下载