Skip to content

AP配网

区别第一版第二版
protoVersion字段3.0或1.03.1或1.1
创建主题app端创建设备端创建

app同时兼容第一版、第二版协议,微信手机第二版协议适配中。

第二版(新)

协议规范:设备通过 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字符串类型房间名字x<=8
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}

使用示例:

第一步:下载程序到开发板

esp8266 示例程序:点击下载

esp32 示例程序:点击下载

巴法开放联盟