0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ESP RainMaker 開發(fā)介紹

啟明云端 ? 2022-12-05 10:06 ? 次閱讀

如果你一直關(guān)注樂鑫,應(yīng)該對 ESP RainMaker 及其豐富的功能有所了解。ESP RainMaker 重要特性之一是輕量化,它能充當(dāng)ESP 節(jié)點(diǎn)和移動(dòng)端App、Alexa、GVA等客戶端之間的“隧道”,具備極大的靈活性和可擴(kuò)展性。

ESP RainMaker 支持創(chuàng)建任何設(shè)備,開發(fā)多種設(shè)備功能,最終還能通過移動(dòng)端App實(shí)現(xiàn)設(shè)備控制。


ESP-RainMaker項(xiàng)目用于實(shí)現(xiàn)“節(jié)點(diǎn)”,用戶登錄后可以使用客戶端(如手機(jī)應(yīng)用程序)進(jìn)行對節(jié)點(diǎn)進(jìn)行配置,然后通過ESPRainMakerCloud 進(jìn)行控制。

節(jié)點(diǎn)

節(jié)點(diǎn)是基于 ESP32 的單個(gè)產(chǎn)品。它具有關(guān)聯(lián)的標(biāo)識(shí)符(node_id) 和聲明服務(wù)提供的一組憑據(jù),用于對節(jié)點(diǎn)進(jìn)行合法驗(yàn)證。用戶可以為節(jié)點(diǎn)指定好名稱。單個(gè)節(jié)點(diǎn)可以公開多個(gè)設(shè)備。

設(shè)備

設(shè)備是用戶可控制的邏輯實(shí)體,如開關(guān)、燈泡、恒溫器、溫度傳感器等。一個(gè)簡單的節(jié)點(diǎn)通常只有一個(gè)設(shè)備。但是,ESP32 也可以有多個(gè)設(shè)備,例如在一塊板上安裝兩個(gè)開關(guān),或者它可以充當(dāng)其他設(shè)備(例如BLE 傳感器)的橋接器。每個(gè)設(shè)備在節(jié)點(diǎn)中必須具有唯一的名稱,并且可以選擇具體的類型。


參數(shù)

這些是設(shè)備的控制和監(jiān)視參數(shù),用于用戶在APP或者服務(wù)器上進(jìn)行控制或者監(jiān)視。例如:開/關(guān)電源狀態(tài)、亮度、電流/目標(biāo)溫度等所有這些參數(shù)在設(shè)備中都必須具有唯一的名稱。這些參數(shù)還可以具有其他字段,如值、類型、邊界、UI 信息等。參數(shù)值可以是布爾值、整數(shù)、浮點(diǎn)數(shù)或字符串。

獲取ESP RainMaker項(xiàng)目

使用以下方法下載RainMaker:

1、git clone https://github.com/espressi?f/esp-rainmaker.git

2、git clone https://github.com/espressif/esp-iot-bridge.git

第一個(gè)倉庫為Rainmaker倉庫,配合ESP Rainmaker APP使用 。

第二個(gè)倉庫集成了Rainmaker和lite mesh,本文示例使用該倉庫,使用樂鑫nova home app關(guān)于lite mesh的內(nèi)容請關(guān)注后續(xù)文章。


執(zhí)行以下命令以拉入子模塊:

git submodule update--init --recursive --progress

構(gòu)建和刷新固件


Rainmaker工程位于esp-iot-bridge倉庫的examples/rainmaker目錄下,編譯以及燒錄基于ESP-IDF,本文基于IDF5.0。


如果您是第一次使用,建議先擦除閃存,然后再刷新固件。以下是步驟:

cd ~/esp-iot-bridge/examples/rainmaker/led_light/(進(jìn)入例程目錄)

idf.py set-target esp32/esp32s2/esp32c3/esp32s3(選擇芯片類型)

[注意:ESP RainMaker 可與 ESP32系列所有芯片配合使用,如 ESP32、ESP32-S2、ESP32-C3 和 ESP32-S3。]

idf.py build(編譯)

idf.py erase_flash(擦除)

idf.py flash monitor(燒錄并運(yùn)行)

代碼運(yùn)行成功后

Part.1

找到設(shè)備名稱

adb4d092-72ba-11ed-b116-dac502259ad0.jpg

Part.2

打開App添加你的第一個(gè)設(shè)備

add623e6-72ba-11ed-b116-dac502259ad0.jpg

Part.3

找到設(shè)備同意藍(lán)牙連接

adf0d84e-72ba-11ed-b116-dac502259ad0.png

Part.4

輸入WiFi賬號(hào)密碼進(jìn)行配網(wǎng)

ae284cca-72ba-11ed-b116-dac502259ad0.jpgae3ad8fe-72ba-11ed-b116-dac502259ad0.jpgae56f8d6-72ba-11ed-b116-dac502259ad0.jpgae6b9c3c-72ba-11ed-b116-dac502259ad0.jpgae7e9b2a-72ba-11ed-b116-dac502259ad0.jpg

左右滑動(dòng)查看圖集

Part.5

進(jìn)入在線調(diào)節(jié)參數(shù)頁面

ae96e7ca-72ba-11ed-b116-dac502259ad0.jpg

基于ESP RainMaker的應(yīng)用程序的典型代碼如下

aeb1743c-72ba-11ed-b116-dac502259ad0.jpg

例程中Rainmaker節(jié)點(diǎn)、設(shè)備、屬性的初始化在app_rainmaker_start()函數(shù)中實(shí)現(xiàn),具體可以參考app_rainmaker.c文件,具體流程為

初始化ESP RainMaker節(jié)點(diǎn)esp_rmaker_node_init(),方法是向其傳遞配置 esp_rmaker_config_t()節(jié)點(diǎn)名稱和類型。

創(chuàng)建設(shè)備esp_rmaker_device_create()。RainMaker節(jié)點(diǎn)本身沒有特定的值,除非它下面有設(shè)備。

添加參數(shù)和其他元數(shù)據(jù)。

將設(shè)備添加到節(jié)點(diǎn)。

啟動(dòng)RainMaker代理esp_rmaker_start()。這將啟動(dòng)RainMaker核心任務(wù),該任務(wù)將等待Wifi,如果需要,通過MQTT連接到RainMaker Cloud,報(bào)告節(jié)點(diǎn)配置,報(bào)告參數(shù)值,然后等待命令。

啟動(dòng)無線網(wǎng)絡(luò) app_wifi_start()

以上是 ESP RainMaker 項(xiàng)目開發(fā)的基本介紹。您無需在云后臺(tái)進(jìn)行任何配置或更改,就可以輕松添加自定義功能,擁有極大的靈活性與可擴(kuò)展性。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • ESP
    ESP
    +關(guān)注

    關(guān)注

    0

    文章

    183

    瀏覽量

    33954
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    簡述三種esp32的開發(fā)方式是什么

    ESP32是一款由樂鑫(Espressif)推出的低功耗、高性能的Wi-Fi和藍(lán)牙雙模無線通信芯片,廣泛應(yīng)用于物聯(lián)網(wǎng)、智能家居、智能硬件等領(lǐng)域。本文將詳細(xì)介紹三種ESP32的開發(fā)方式:
    的頭像 發(fā)表于 08-20 09:11 ?3060次閱讀

    esp32和esp8266代碼共用嗎

    本文將介紹ESP32和ESP8266兩款流行的微控制器在代碼共用性方面的可能性與差異性。 一、引言 隨著物聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,越來越多的智能設(shè)備開始進(jìn)入我們的生活。其中,ESP32和
    的頭像 發(fā)表于 08-19 18:23 ?1153次閱讀

    esp32用什么軟件編程

    。 概述 ESP32具有豐富的外設(shè)接口和靈活的編程方式,支持多種編程語言和開發(fā)環(huán)境。本文將詳細(xì)介紹ESP32的編程軟件,包括開發(fā)環(huán)境、編程語
    的頭像 發(fā)表于 08-19 17:24 ?3529次閱讀

    在哪里可以看一下RainMaker Cloud的后端系統(tǒng)?

    請問下,在哪里可以看一下RainMaker Cloud的后端系統(tǒng)? 另外,RainMaker cloud是否提供服務(wù)器端的OPEN API,我們希望RainMaker cloud能夠跟我們現(xiàn)有的系統(tǒng)進(jìn)行對接。
    發(fā)表于 07-19 08:20

    ESP32-C3-DecKitM-1板子運(yùn)行esp-rainmaker的switch例程,cli provision失敗的原因?

    ESP32-C3-DecKitM-1板子運(yùn)行esp-rainmaker的switch例程,cli provision 失敗,顯示如下: C:Espressifesp-rainmakercli&
    發(fā)表于 06-26 08:11

    想在RainMaker的例程加上BLE本地控制,如何在沒有wifi的情況下也能控制設(shè)備?

    在沒有網(wǎng)絡(luò)時(shí),ESP RainMaker 可以通過wifi進(jìn)行本地控制. 現(xiàn)在我想在RainMaker 的例程加上BLE本地控制,在沒有wifi的情況下也能控制設(shè)備。 請指教一下該如何做?
    發(fā)表于 06-26 08:05

    ESP32-S3-DevKitC-1運(yùn)行esp-rainmaker\\examples\\led_light出錯(cuò)的原因?

    Insights.I (23759) esp_rmaker_core: Starting RainMaker Work Queue taskI (23769
    發(fā)表于 06-18 06:54

    求助,關(guān)于esp-idf v5.1.1編譯下載esp-rainmaker的example的問題求解

    在升級(jí)esp-idf到v5.1.1之前,用的是v5.0版本對rainmaker進(jìn)行編譯,能正常運(yùn)行起來,也能在App上正常添加。 但是升級(jí)到v5.1.1之后,再進(jìn)行編譯下載運(yùn)行之后,出現(xiàn)了以下報(bào)錯(cuò)
    發(fā)表于 06-07 07:54

    求助,關(guān)于ESP32s3 rainmaker的flash問題求解

    開發(fā)環(huán)境是arduino,ESP_Friend博主的代碼,要用到esp rainmaker功能 代碼參考https://gitee.com/esp
    發(fā)表于 06-07 06:39

    燒錄ESP RainMaker中的例程時(shí),遇到這種版本問題如何解決?

    我在燒錄ESP RainMaker中的例程時(shí),遇到這種版本問題,應(yīng)該如何解決呀。 ESP-IDF是5.2.1 ,下載esp-rainmaker時(shí)使用的是$ git clone --re
    發(fā)表于 06-05 06:44

    GitHub Copilot+ESP開發(fā)實(shí)戰(zhàn)-I2C

    準(zhǔn)備工作1.ESP32-S3-DevKitC-1開發(fā)板一塊;2.LM75A溫度感應(yīng)器;3.杜邦線4根、USB線;一、向Copilot提問1.ESP32-S3用C語言實(shí)現(xiàn)I2C初始化;2.SDA為18
    的頭像 發(fā)表于 03-29 08:03 ?512次閱讀
    GitHub Copilot+<b class='flag-5'>ESP</b><b class='flag-5'>開發(fā)</b>實(shí)戰(zhàn)-I2C

    拿來就能用 | ESP AI音箱方案介紹

    本案例使用ESP-BOX和OpenAIAPI開發(fā)一款語音控制的聊天機(jī)器人(chatbot)。ESP-BOXAI音箱方案介紹本案例將介紹如何使
    的頭像 發(fā)表于 03-21 08:03 ?646次閱讀
    拿來就能用 | <b class='flag-5'>ESP</b> AI音箱方案<b class='flag-5'>介紹</b>

    GitHub Copilot+ESP開發(fā)實(shí)戰(zhàn)-串口

    上篇文章講了GitHubCopilot在應(yīng)用中可能遇到的問題,接下來小啟就簡單介紹下GitHubCopilot在ESP32開發(fā)中C語言實(shí)現(xiàn)串口功能,感興趣的可以看看。一、向Copilot提問
    的頭像 發(fā)表于 03-16 08:03 ?487次閱讀
    GitHub Copilot+<b class='flag-5'>ESP</b><b class='flag-5'>開發(fā)</b>實(shí)戰(zhàn)-串口

    GitHub Copilot+ESP開發(fā)使用問題集錦(一)

    簡潔明確:2、可以提一些開發(fā)中遇到的問題,GitHubCopilot會(huì)給一個(gè)大概得方向供參考。3、可以在GitHubCopilot上查詢ESP的一些的技術(shù)名詞介紹4
    的頭像 發(fā)表于 03-09 08:03 ?414次閱讀
    GitHub Copilot+<b class='flag-5'>ESP</b><b class='flag-5'>開發(fā)</b>使用問題集錦(一)

    ESP32-P4首秀|啟明云端帶你解讀樂鑫P4多媒體開發(fā)

    此前,樂鑫發(fā)布了新一代MCU芯片ESP32-P4的消息,今天ESP32-P4開發(fā)板終于登場亮相了,快來一睹真容吧。一、ESP32-P4開發(fā)
    的頭像 發(fā)表于 02-19 12:30 ?3933次閱讀
    <b class='flag-5'>ESP</b>32-P4首秀|啟明云端帶你解讀樂鑫P4多媒體<b class='flag-5'>開發(fā)</b>板