[ESP] 使用Ayla API Reference配網和連Ayla雲

2023-07-11 18:00:40

範例用的檔案及連結

  1. US Dev Dashboard(檢視oem-id和oem-key)

https://dashboard-dev.aylanetworks.com/

  1. Ayla API Reference(繫結使用者,裝置和Ayla雲)

https://docs.aylanetworks.com/reference

  1. Ayla_demo的官方檔案(構建,執行步驟)

https://docs.aylanetworks.com/docs/integrated-agent-v30

  1. Ayla Developer Center(建立template)

https://developer.aylanetworks.com/

Postman用到的url

10.231.227.81是裝置AP模式的IP地址。

POST

PUT

GET

請求存取裝置的型別

  • LOC_REQ is used for open HTTP requests (just setting up LAN mode).
  • APP_REQ is for LAN mode.
  • ADS_REQ are requests from the cloud, currently via reverse-ReST.
  • SEC_WIFI_REQ is for LAN mode from the AP interface (secure Wi-Fi setup).
  • REQ_SOFT_AP is for open HTTP requests (currently only for property tests),

範例使用SoftAP配網,並且用的是postman作為使用者端,所以需要修改一部分程式碼,執行REQ_SOFT_AP型別支援配網功能(原SDK內部設定的不允許REQ_SOFT_AP進行配網)。

Ayla API Reference登入

  1. 開啟連結https://docs.aylanetworks.com/reference/sign-in檢視詳細步驟
  2. 在」BODY PARAMS」輸入賬號密碼等資訊
  3. 點選右邊的」Try it!」進行登入,併成功返回狀態碼200token
  4. 之後將按照格式」auth_token (access_token」後跟著的字串)」貼上到」AUTHENTICATION

Ayla_demo構建

  1. idf.py set-target esp32c3
  2. idf.py build
  3. idf.py -p /dev/ttyUSB1 erase_flash flash monitor

Ayla_demo設定

ayla_demo執行起來後通過cli命令進行設定,如oem-id,oem-model等,以下每個指令的說明可以在終端執行help檢視。

  • 在不了各種設定的情況下需要嚴格按照以下步驟執行,防止出錯。
  • conf set id/dev_id xxxxxx
  • conf set id/key xxxxx
  • save
  • reset
  • oem xxxxx
  • oem model xxxx
  • oem key xxxx xxx
  • wifi profile ap ssid Ayla-pipisha
  • log -mod client debug
  • setup_mode disable
  • save
  • reset

Ayla_demo配網步驟

在Dashboard檢視裝置並沒有被繫結:

  1. PC通過WIFI連線裝置,通過Ayla_demo設定可以知道裝置的AP為」Ayla-pipisha」。
  2. Postman通過POST方式傳送wifi掃描指令
  3. Postman通過GET方式傳送wifi掃描結果
  4. Postman通過POST方式傳送連線的wifi名和密碼
  5. Postman通過GET方式獲取設定的wifi名是否和傳送的一致
  6. 在終端執行指令wifi enable啟動配網
  7. Postman通過GET方式獲取配網結果
  8. 在」Ayla API Reference」的」Register device to user」頁面填寫裝置的DSN和使用者的uuid,然後點選右邊的」Try it!」,返回204表示成功。
  9. Dashboard確定繫結裝置成功