91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

智能家居之旅(14):安信可IoT Blufi配網(wǎng)工具新功能介紹

AIoT行業(yè)洞察 ? 來源:AIoT行業(yè)洞察 ? 作者:AIoT行業(yè)洞察 ? 2024-08-27 16:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今天給大家介紹一下小程序配網(wǎng)工具-安信可 IoT,近期剛發(fā)布了新的版本,新增了服務器地址配置的功能。這個新功能,給我們帶來了不少便利,特別是 HomeAssistant 固件使用這一塊。

在2024 年 7 月 17 號之前,安信可 IoT 小程序只能提供配網(wǎng)程序,用戶能夠利用藍牙功能給 Wi-Fi 模塊進行無線網(wǎng)絡配置,但是隨著 DIY 作品不斷地更新,為了更加方便地使用固件,涉及 TCP 服務器和 MQTT 服務器地址配置只能通過 AT 指令來實現(xiàn),在某些應用場合根本無法實現(xiàn)。

所以,這次讓前端工程師加了這個功能,在配網(wǎng)的時候,可以選擇配置服務器地址。

01新功能使用說明

wKgaombNjMSAOT8KAACDbKdR5zs37.jpeg

02數(shù)據(jù)格式

小程序下發(fā)的服務器配置數(shù)據(jù)是以 json 格式下發(fā):

{ "server_type": { "addr":"0.0.0.0", "port":"xxxxx" } }

字段名說明示例server_type服務器類型"tcp"addr服務器地址,支持 IPV4 地址和域名"192.168.1.1"port服務器端口號1883

例如:下發(fā)一個TCP 服務器,地址為:192.168.3.1,端口號為:8888,則數(shù)據(jù)為:

{ "tcp": { "addr":"192.168.3.1", "port":"8888" } }

03數(shù)據(jù)接收

數(shù)據(jù)接收就是設備端的了,但是前提是要使用 Blufi 配網(wǎng)功能,在 Ai-WB2 的 SDK(Ai-Thinker-WB2)當中,有 Blufi 的 demo。

wKgZombNjMSAD0z8AAB8QSrb9PU70.jpeg

因為小程序下發(fā)的數(shù)據(jù)是通過 Blufi 的custom data(自定義數(shù)據(jù))接口下發(fā),在 blufo demo 當中

的AXK_BLUFI_EVENT_RECV_CUSTOM_DATA事件,可以看到下發(fā)的服務器地址數(shù)據(jù):

wKgaombNjMSAUQGtAABDWPKwUqw28.jpeg

04數(shù)據(jù)解析

既然是 json 數(shù)據(jù),那只要引用 cJSON.h 頭文件,就能實現(xiàn)對服務器地址和端口號的解析,下面寫了函數(shù),大家做個參考

解析服務器地址

static char data_buff[128] = { 0 }; char* get_ip_addr_from_custom_data(const char* server_type, const char* custom_data) { if (custom_data==NULL) { blog_error("custom_data is NULL"); return NULL; } char* cjson_root = custom_data; cJSON* root = cJSON_Parse(cjson_root); if (root==NULL) { blog_error("%s is't json data", cjson_root); cJSON_Delete(root); return NULL; } cJSON* add_type = cJSON_GetObjectItem(root, server_type); if (add_type==NULL) { blog_error("%s not "%s" project ", cjson_root,server_type); cJSON_Delete(root); return NULL; } cJSON* addr = cJSON_GetObjectItem(add_type, "addr"); if (addr==NULL) { blog_error("%s not "addr" project ", cjson_root); cJSON_Delete(root); return NULL; } memset(data_buff, 0, 128); strcpy(data_buff, addr->valuestring); cJSON_Delete(root); return data_buff; }

wKgZombNjIuAdkBhAAAyJxtdVv0283.png

調(diào)用示例:

char* addr=get_ip_addr_from_custom_data("tcp",custom_data); printf("addr=%srn",addr);

解析端口號

uint16_t get_port_from_custom_data(const char* server_type, const char* custom_data) { if (custom_data==NULL) { blog_error("custom_data is NULL"); return NULL; } char* cjson_root = custom_data; cJSON* root = cJSON_Parse(cjson_root); if (root==NULL) { blog_error("%s is't json data", cjson_root); cJSON_Delete(root); return NULL; } cJSON* add_type = cJSON_GetObjectItem(root, server_type); if (add_type==NULL) { blog_error("%s not "%s" project ", cjson_root,server_type); cJSON_Delete(root); return NULL; } cJSON* port_p = cJSON_GetObjectItem(add_type, "port"); if (port_p==NULL) { blog_error("%s not "port" project ", cjson_root); cJSON_Delete(root); return NULL; } uint16_t port = atoi(port_p->valuestring); cJSON_Delete(root); return port; }

wKgaombNjK6ATA6NAAA2t-NY0JM341.png

調(diào)用示例:

uint16_t port=get_port_from_custom_data("tcp",custom_data); printf("port=%drn",port);

這些程序流程我就不解釋,太簡單了,不懂的話,自己去學一下 cjson 的數(shù)據(jù)解析。

審核編輯 黃宇

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

    關注

    1943

    文章

    10000

    瀏覽量

    197472
  • 配網(wǎng)
    +關注

    關注

    0

    文章

    181

    瀏覽量

    9484
  • IOT
    IOT
    +關注

    關注

    190

    文章

    4398

    瀏覽量

    208693
  • 安信可
    +關注

    關注

    0

    文章

    226

    瀏覽量

    5085
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    小智AI語音模組實測:實現(xiàn)語音控制關燈

    ,完整復現(xiàn)一次智能語音產(chǎn)品的測試流程。 No01、開箱與硬件初探 很幸運收到送測試的Ai-WV01-32S模組,依然采用防靜電包裝,模塊緊湊小巧。 為了快點上電測試,直接在模組上
    的頭像 發(fā)表于 11-19 16:09 ?1099次閱讀
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>小智AI語音模組實測:實現(xiàn)語音控制關燈

    雙頻WiFi模組在智能家居的應用優(yōu)勢

    智能家居為例,小張的家里部署了一個由雙頻WiFi模塊驅動的智能系統(tǒng),包括:客廳的智能電視、空調(diào)、語音助手,書房的電腦,臥室的智能窗簾,廚房的智能
    的頭像 發(fā)表于 11-13 17:30 ?1371次閱讀

    雷達模組如何快速配網(wǎng)和調(diào)參?

    可配網(wǎng)助手app介紹 可配網(wǎng)助手app是由
    的頭像 發(fā)表于 10-31 08:59 ?647次閱讀
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>雷達模組如何快速配<b class='flag-5'>網(wǎng)</b>和調(diào)參?

    Matter 1.4.2版本解析,我們的智能家居仍在持續(xù)進步

    Matter 1.4.2增強安全性與兼容性,支持Wi-Fi網(wǎng),降低設備成本,提升智能家居互操作性。
    的頭像 發(fā)表于 08-22 15:25 ?2294次閱讀
    Matter 1.4.2版本解析,我們的<b class='flag-5'>智能家居</b>仍在持續(xù)進步

    輕松配置小智AI語音開發(fā)板,IOT小程序功能更新

    版使用教程: AI語音開發(fā)板全面升級商用版?。ǜ浇坛蹋?為了讓開發(fā)體驗更加流暢,
    的頭像 發(fā)表于 08-19 17:46 ?1326次閱讀
    輕松配置小智AI語音開發(fā)板,<b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>IOT</b>小程序<b class='flag-5'>功能</b>更新

    上手體驗小安派AI開發(fā)板,如何接入Home Assistant?

    開發(fā)板】開箱、網(wǎng)、對話 【AiPi-PalChatV1語音開發(fā)板】小智 MCP 接入 Home Assistant 目錄 一、開箱 1.1包裝 1.2開發(fā)板 二、開發(fā)板介紹 2.1功能
    的頭像 發(fā)表于 07-08 10:34 ?4738次閱讀
    上手體驗<b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>小安派AI開發(fā)板,如何接入Home Assistant?

    舵機在智能家居里的應用

    舵機在智能家居領域應用廣泛,主要體現(xiàn)為:1)控制智能門鎖、窗簾等家居設備;2)提升掃地機器人越障能力和洗地機自清潔功能;3)驅動家居機器人完
    的頭像 發(fā)表于 06-25 15:38 ?1169次閱讀
    舵機在<b class='flag-5'>智能家居</b>里的應用

    手機APP遠程控制,智能家居監(jiān)測、智能控制系統(tǒng)(STM32L4、服務器、卓源碼)實例項目打包下載

    手機APP遠程控制,智能家居監(jiān)測、智能控制系統(tǒng)(STM32L4、服務器、卓源碼)實例項目打包,推薦下載!
    發(fā)表于 05-29 21:47

    BLE + Mesh ,藍牙模組從可穿戴到智慧照明全覆蓋場景

    消費電子、智能家居、健康穿戴等領域的高性能產(chǎn)品。 藍牙模塊主要分為PB系列、TB系列、TG系列。
    的頭像 發(fā)表于 05-28 11:16 ?1278次閱讀

    ESP8266燒錄與機智云一鍵網(wǎng)教程

    ESP8266模塊因其低成本和高性能,廣泛應用于智能家居和工業(yè)自動化等領域。機智云平臺提供了一鍵網(wǎng)功能,簡化了設備的聯(lián)網(wǎng)過程。本教程將詳細介紹
    的頭像 發(fā)表于 05-24 11:04 ?2043次閱讀
    ESP8266燒錄與機智云一鍵<b class='flag-5'>配</b><b class='flag-5'>網(wǎng)</b>教程

    Matter 智能家居的通用語言

    Matter由連接標準聯(lián)盟(CSA)創(chuàng)建,旨在解決智能家居的互操作性問題。Matter 基于簡單性、互操作性、可靠性和安全性四大核心原則 。 是采用基于 IP 應用層的開源協(xié)議,本質(zhì)上是一種“通用
    發(fā)表于 05-19 15:35

    明遠智睿SSD2351開發(fā)板:智能家居智能核心

    ,實現(xiàn)設備之間的協(xié)同工作,為用戶提供更加智能化的生活體驗。 豐富的接口使得開發(fā)板能夠輕松連接各種智能家居設備。通過USB接口可以連接智能攝像頭、智能音箱等設備,實現(xiàn)視頻監(jiān)控和語音交互
    發(fā)表于 05-07 18:59

    智能家居Mesh組網(wǎng)方案:實現(xiàn)智能化生活的無縫連接NRF52832

    自組織的 Mesh 網(wǎng)絡,將各個智能設備連接在一起,實現(xiàn)了全屋智能家居的無縫連接。與傳統(tǒng)的單點連接方式相比,Mesh 網(wǎng)絡具有更強的穩(wěn)定性和可靠性,同時能夠穿越墻壁等障礙物,擴大了信號覆蓋范圍。 功能
    發(fā)表于 04-15 14:07

    拯救急性子!涂鴉推出快連Plus網(wǎng)方案,批量網(wǎng)速度猛增5倍

    一、什么是Wi-Fi網(wǎng)設備網(wǎng)智能家居系統(tǒng)關鍵的一環(huán),它連通智能設備與家庭無線網(wǎng)絡,使其能夠
    的頭像 發(fā)表于 04-03 18:07 ?1902次閱讀
    拯救急性子!涂鴉推出快連Plus<b class='flag-5'>配</b><b class='flag-5'>網(wǎng)</b>方案,批量<b class='flag-5'>配</b>網(wǎng)速度猛增5倍

    智能家居項目設計

    智能家居,內(nèi)涵多個模塊,板子電路和PCB設計
    發(fā)表于 03-14 17:54 ?6次下載