[WeChat アプレット制御ハードウェア 16] Anxinke ESP32-S 開発ボードは、Tencent IoT 開発プラットフォーム Bluetooth llsync プロトコルの移植を実装し、ワンキー Bluetooth 高速配信ネットワーク + 遠隔制御を実現します。(ソースコード付き)

WeChat IoT エコロジーは、主にWeChat ハードウェア開発プラットフォームTencent IoT 開発プラットフォーム      に分けられます.前者はメンテナンスを停止しましたが、依然として大きな学習価値があり、後者はメイン プラットフォームとして、多くの機能を統合しています。 WeChat アプレット 制御するネットワーク。

      より多くの友人と私自身の研究ノートの世話をするために、私はこの特別なメモを更新し続けます. CSDN半分の心に注意を払い、フロンティア分野にあなたを連れて行き、フロンティア技術を学びましょう!

自作の WeChat サーバー && WeChat ハードウェア開発プラットフォーム

[ WeChat アプレット制御ハードウェアパート 1 ] ネットワーク全体での最初のリリースで、emq メッセージ サーバーの助けを借りて、WeChat アプレット用の mqtt サーバーを構築し、スマート ハードウェアを簡単に制御する方法を示します。
WeChatアプレット制御ハードウェアその2 】WeChatアプレットの旅を始め、アプレットMqttクライアントのソースコードをインポートし、簡単な検証とサーバーとの通信を実現!
WeChatアプレット制御ハードウェアその3 】WeChatアプレット制御esp8266プロジェクトをソフトウェアからハードウェアまで構築し、通信プロトコルをカスタマイズし、面接ポジションやコンペのポイントを追加!
[ WeChat ミニ プログラム制御ハードウェアパート 4 ] WeChat パブリック アカウント配信ネットワーク Airkiss の原理とプロセスの詳細な分析、esp8266 が WeChat へのコールバック パラメータをカスタマイズする方法、およびバインド デバイスの最初のステップを実現する方法!
WeChatアプレット制御ハードウェアその5 】次に踏むべきアーキテクチャの考え方を明確にし、JavaScriptのオブザーバーモードを学び、WeChatアプレットの複数ページでデバイスプッシュイベントを同時に受信!
[ WeChat Mini プログラム制御ハードウェアパート 6 ] サーバーはどのように Qiniu クラウド ストレージ SDK を統合し、ユーザー定義のデバイス画像をサードパーティ サーバーに保存しますか!
WeChatアプレット制御ハードウェアその7 】WeChatアプレットMqttプロトコル制御のインテリジェントハードウェアフレームワークを作って、フルスタックエンジニアの夢を胸に秘めよう!!
[ WeChat Mini プログラム制御ハードウェア第 8 章 】WeChat アプレットは websockets を使用して、Alibaba Cloud IOT プラットフォームの mqtt サーバーに接続します。これは、パッケージ化と使用が非常に簡単です!
WeChatアプレット制御ハードウェアその9】アリババクラウドIoTプラットフォームの無料接続を巧みに利用することで、WeChatアプレットからの色収集・制御esp8266でカラフルな光を出力できます 中秋節の生放送はいかがですか?!
WeChat パブリックアカウント制御ハードウェアその10 】 WeChat パブリックアカウントのWebページでmqttサーバーへの接続方法チュートリアル!!
WeChatアプレット制御ハードウェアその11 】 全ネットワーク初のリリースとなるWeChatアプレットble bluetooth制御esp32は、ネットワークレスで明るさスイッチの制御が可能。
[ WeChat アプレット制御ハードウェアPart 12 ] WeChat アプレット Bluetooth 制御ハードウェアの開発方法は? WeChat アプレット Bluetooth API の使用を包括的に分析します。
[ WeChat アプレット制御ハードウェアその13 ] [AT 章] ハードウェア プラットフォームとは関係ありません。WeChat アプレット AP 配布ネットワーク Anxinke Wi-Fi モジュール ネットワーク アクセスの例です。

Tencent IoT 開発プラットフォーム

Tencent Lianlian - Tencent IoT Development Platform Part 1】Tencentの公式Jingjijiがリリースした「Tencent Lianlian」がついに登場! 公式チュートリアルに従って、ネットワークの構成方法とWeChatアプレットでESP8266を制御する方法を学びましょう!
[ Tencent Lianlian-Tencent IoT 開発プラットフォーム パート 2 ] WeChat アプレット smartconfig 配信ネットワーク原理の詳細な分析により、Anxin は Tencent IoT 開発プラットフォームを ESP-12S に直接接続できます! !
Tencent Lianlian-Tencent IoT Development Platform Part 3】Anxinke IoT WeChatアプレットは完全オープンソースで、アプレットはワンクリックでネットワーク設定+制御+バインディングを実現!
[ Tencent Lianlian-Tencent IoT Development Platform Part 4 ] Tencent IoT Development Platform に接続された ESP8266 RTOS C SDK の 2 次開発に関するノート共有!
Tencent Lianlian - Tencent IoT Development Platform Part 5】ワイヤレス IoT の配信ネットワーク プロトコルを再理解して、Tencent IoT の Bluetooth プロトコル LLSync SDK を理解し、Tencent Lianlian アプレットを Bluetooth 配信にも使用できます。
[ Tencent Lianlian-Tencent IoT 開発プラットフォーム パート 6 ] Anxinke ESP32-S 開発ボードは、Tencent IoT 開発プラットフォーム Bluetooth llsync プロトコルの移植を実現し、ワンキー Bluetooth 高速ネットワーク配信 + リモート コントロールを実現します。

ここに画像の説明を挿入

I.はじめに

    前回の記事で、Tencent IoT 開発プラットフォームのプロトコルとはどのようなものかについて説明しましたが、LLSyncそれを実践してみましょう。

     リンク: ワイヤレス IoT のネットワーク配信プロトコルを再認識し、Tencent IoT Bluetooth プロトコルの LLSync SDK を理解し、Tencent Lianlian アプレットを Bluetooth ネットワーク配信にも使用できます。

    このプロジェクトのブログ投稿は、Anxinke Technology NodeMCU-ESP32Development Board & Tencent IoT Development Platform Distribution Network + Communication のサンプル プロジェクトとして使用されており、Anxinke Technology Development Board に基づいてNodeMCU-ESP32、端末デバイスがパススルーしてネットワーク配信LLSync SDKExplorer SDK実行し、クラウドと通信することを示しています。

2. ソースコードディレクトリの説明

├─qcloud-esp32-llsync-mqtt         应用目录
│           
│  ├─components         模块目录
│  │  ├─aithinker_board    安信可NodeMCU ESP32开发板LED驱动
│  │  ├─button    按键驱动
│  │  ├─qcloud_iot_c_sdk  腾讯物联开发平台的 Explorer SDK 
│  │  ├─qcloud_llsync     腾讯物联开发平台的 LLSync SDK 
│  │  │  │ 
│  │  ├─main              应用程序入口
│  │  │  ├─app_main.c     设备程序入口文件
│  │  │  │ 
│  │  │  ├─wifi_config_sample.c  设备控制业务代码
│  │  │  │ 

3. 編纂ガイド

  1. インストールESP-IDFについては、公式
mkdir -p ~/esp
cd ~/esp
git clone --recursive https://github.com/espressif/esp-idf.git

この例で使用されるSDKブランチrelease/v4.2commit2532ddd9f447f6fab02bc2d1654534a7621e033a

または、圧縮パッケージの完全版を直接ダウンロードします: https://axk.coding.net/s/c3ce514c-808f-42fe-bc04-1c15ba823e45

  1. qcloud-esp32-llsync-mqttフォルダをディレクトリにコピーしますESP-IDF
cp -r qcloud-esp32-llsync-mqtt $IDF_PATH
cd $IDF_PATH/qcloud-esp32-llsync-mqtt
  1. IoT 開発プラットフォーム にログインし、デバイスを作成し、トリプレット情報を取得します。

新しいデバイスの 3 値情報を使用して、マクロで定義されたデバイス情報を置き換えqcloud-esp32-llsync-mqtt/components/qcloud_iot_c_sdk/platform/HAL_Device_freertos.c、コンパイルして開発ボードに焼き付けます。

/* product Id  */
static char sg_product_id[MAX_SIZE_OF_PRODUCT_ID + 1] = "I8YSNLJF5T";
/* device name */
static char sg_device_name[MAX_SIZE_OF_DEVICE_NAME + 1] = "ESP32_D1";
/* device secret of PSK device */
static char sg_device_secret[MAX_SIZE_OF_DEVICE_SECRET + 1] = "4mFTgmh8VFoqEYLdYLOOBA==";
  1. IoT 開発プラットフォームのデバイス分散ネットワーク モードを標準の BLE 補助分散ネットワークに変更します。

  2. WeChat で Tencent Lianlian アプレットを検索して、ネットワーク配信操作を実行します。

  3. ネットワークの設定が成功すると、デバイス側のログは次のようになります。

    I (962) llsync config net: wifi_init_sta finished.
    I (962) llsync config net: esp_wifi_get_config ok , but null config 
    I (962) gpio: GPIO[0]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:3 
    ERR|1970-01-01 00:15:53|qcloud_wifi_config_log_handle.c|init_dev_log_queue(55): init dev log queue
    
    INF|1970-01-01 00:15:53|HAL_Wifi_api.c|HAL_Wifi_read_err_log(42): HAL_Wifi_read_err_log
    
    INF|1970-01-01 00:15:53|qcloud_wifi_config_error_handle.c|check_err_log(91): invalid magic code: 0x3ffc8be0
    
    I (1002) BTDM_INIT: BT controller compile version [a6525b7]
    I (1352) LLSYNC: create attribute table successfully, the number handle = 6
    
    I (1352) LLSYNC: ESP_GAP_BLE_ADV_DATA_RAW_SET_COMPLETE_EVT
    I (1352) broadcast: 02 e8 db 84 3b 3e c2 49 38 59 53 4e 4c 4a 46 35 
    I (1362) broadcast: 54 
    I (1362) adv: 02 01 06 03 03 f0 ff 14 ff e7 fe 02 e8 db 84 3b 
    I (1372) adv: 3e c2 49 38 59 53 4e 4c 4a 46 35 54 02 09 6c 
    I (1372) LLSYNC: start advertising
    qiot info: start wait advertising
    
    I (1382) LLSYNC: SERVICE_START_EVT, status 0, service_handle 40
    I (1382) LLSYNC: Stop adv successfully
    
    I (1392) LLSYNC: ESP_GAP_BLE_ADV_DATA_RAW_SET_COMPLETE_EVT
    I (1392) LLSYNC: advertising start successfully
    I (21232) LLSYNC: 52 b6 c9 9e e8 0a 
    I (21352) LLSYNC: ESP_GATTS_MTU_EVT, MTU 517
    qiot err(../components/qcloud_llsync/src/core/ble_qiot_llsync_event.c|77): upload msg negate, device not connected
    
    I (21702) LLSYNC: update connection params status = 0, min_int = 16, max_int = 32,conn_int = 24,latency = 0, timeout = 400
    I (22252) post data: 08 00 0c 02 80 80 08 45 53 50 33 32 5f 44 31 
    qiot info: mtu setting result: 00
    
    I (25972) post data: e0 00 01 00 
    I (26362) llsync config net: wifi info : XuHongIoT , xuhong12345678
    I (26382) post data: e1 00 01 00 
    I (26782) llsync config net: wifi connect
    I (27022) wifi:new:<1,0>, old:<1,0>, ap:<255,255>, sta:<1,0>, prof:1
    I (27832) wifi:state: init -> auth (b0)
    I (27852) wifi:state: auth -> assoc (0)
    I (27912) wifi:state: assoc -> run (10)
    I (27932) wifi:connected with XuHongIoT, aid = 2, channel 1, BW20, bssid = 9c:9d:7e:40:e8:10
    I (27932) wifi:security: WPA2-PSK, phy: bgn, rssi: -27
    I (27942) wifi:pm start, type: 1
    
    I (28032) wifi:AP's beacon interval = 102400 us, DTIM period = 1
    I (29262) esp_netif_handlers: sta ip: 192.168.31.89, mask: 255.255.255.0, gw: 192.168.31.1
    I (29262) llsync config net: got ip:192.168.31.89
    I (29342) post data: e2 00 0d 01 00 00 09 58 75 48 6f 6e 67 49 6f 54 
    INF|1970-01-01 00:16:21|HAL_TCP_lwip.c|HAL_TCP_Connect(93): connected with TCP server: I8YSNLJF5T.iotcloud.tencentdevices.com:1883
    
    INF|1970-01-01 00:16:21|mqtt_client.c|IOT_MQTT_Construct(125): mqtt connect with id: nj3bE success
    INF|1970-01-01 00:16:21|qcloud_wifi_config_device_bind.c|_setup_mqtt_connect(332): Cloud Device Construct Success
    INF|1970-01-01 00:16:23|qcloud_wifi_config_device_bind.c|_send_token_wait_reply(221): wait for token data...
    INF|1970-01-01 00:16:23|qcloud_wifi_config_device_bind.c|_mqtt_event_handler(68): publish success, packet-id=26846
    INF|1970-01-01 00:16:23|qcloud_wifi_config_device_bind.c|_on_message_callback(101): recv msg topic: $thing/down/service/I8YSNLJF5T/ESP32_D1
    INF|1970-01-01 00:16:23|qcloud_wifi_config_device_bind.c|_on_message_callback(112): msg payload: {
          
          "method":"app_bind_token_reply","clientToken":"ESP32_D1-983694","code":0,"status":"success"}
    INF|1970-01-01 00:16:24|qcloud_wifi_config_device_bind.c|_send_token_wait_reply(249): wait for token sending result...
    INF|1970-01-01 00:16:25|mqtt_client_connect.c|qcloud_iot_mqtt_disconnect(468): mqtt disconnect!
    INF|1970-01-01 00:16:25|mqtt_client.c|IOT_MQTT_Destroy(189): mqtt release!
    INF|1970-01-01 00:16:30|qcloud_wifi_config_device_bind.c|qiot_device_bind(398): WIFI_MQTT_CONNECT_SUCCESS
    ERR|1970-01-01 00:16:30|qcloud_wifi_config_log_handle.c|push_dev_log(98): push dev log 990703|qiot_device_bind(399): WIFI_MQTT_CONNECT_SUCCESS
    ...
    
    

4. よくある質問

  1. デバイスをネットワーク構成モードにリセットする方法は?

このプログラムは Anxinke テクノロジNodeMCU-ESP32開発ボードに適合しており、開発ボードのボタン IO0 を 3 秒以上押し続けて、オンボード LED が点滅するまで、つまり Bluetooth 配信ネットワークLLSyncモードに入るまで押し続けます。

関連するコードは app_main.c ファイルにあります。

  1. サーバーによって配信されたビジネス ロジックはどこで処理されますか?

NodeMCU-ESP32このプログラムは、オンボード LED ライトのオン/オフ機能のみを制御できるAnxinke 技術開発ボードに適合しています。

関連するコードは、qcloud-llsync-config-net-esp32\main\wifi_config_sample.c ファイルの property_control_handle() にあります。

  1. サーバーによって報告されたステータスはどこで処理されますか?

このプログラムは、Anxinke テクノロジNodeMCU-ESP32開発ボードに適合されています。次のコードを参照できます。

関連するコードは、qcloud-llsync-config-net-esp32\main\wifi_config_sample.c ファイルの property_report にあります。

5. オープン ソースの WeChat IoT コントロール リスト

オープンソース プロジェクト 住所 オープンソースの時間
WeChat アプレットは mqtt サーバーに接続して esp8266 スマート ハードウェアを制御します https://github.com/xuhongv/WeChatMiniEsp8266 2018.11
esp8266 rtos3.1 での WeChat パブリック アカウント エアキス ネットワーク配信と近接場発見の実装 https://github.com/xuhongv/xLibEsp8266Rtos3.1AirKiss 2019.3
esp32 esp-idf での WeChat パブリック アカウント airkiss ネットワーク配信と近接場発見の実装 https://github.com/xuhongv/xLibEsp32IdfAirKiss 2019.9
WeChat アプレットは esp8266 を制御して、カラフルな効果プロジェクトのソース コードを実現します。 https://github.com/xuhongv/WCMiniColorSetForEsp8266 2019.9
Anxinke Ca-01 に基づく Wechat アプレット位置追跡表示プロジェクト https://github.com/xuhongv/Cat.1TracerWcMini 2019.9
WeChat アプレット bluetooth 配信ネットワーク blufi 実装 esp32 ソース コード https://github.com/xuhongv/BlufiEsp32WeChat 2019.11
WeChat アプレット ブルートゥース ble コントロール esp32 カラフルな光の効果 https://blog.csdn.net/xh870189248/article/details/101849759 2019.10
コマーシャル イベント配信用の WeChat アプレット mqtt 切断再接続フレームワーク https://blog.csdn.net/xh870189248/article/details/88718302 2019.2
WeChat アプレットは websocket を使用して Alibaba Cloud IOT プラットフォームの mqtt サーバーに接続します https://blog.csdn.net/xh870189248/article/details/91490697 2019.6
Wechat パブリック アカウントの Web ページが mqtt サーバーへの接続を実現 https://blog.csdn.net/xh870189248/article/details/100738444 2019.9
WeChat アプレット AP 配布ネットワーク Anxinke Wi-Fi モジュール ネットワーク アクセスの例 https://github.com/Ai-Thinker-Open/Ai-Thinker-Open_WeChatMiniAP2Net 2020.5
Anxinke IoT WeChat アプレットは完全にオープン ソースであり、ワンクリックのネットワーク配信 + コントロール + バインディングをアプレット上で実現 https://blog.csdn.net/xh870189248/article/details/107140464 2020.8
WeChat アプレット Bluetooth + WiFi コントロール Anxinke ESP32-S/C3S モジュール アプリケーション https://github.com/xuhongv/ESP32WiFiBleControlProject 2021.6
Anxinke ESP32-S モジュールは、Tencent IoT 開発プラットフォーム llsync Bluetooth 配信ネットワーク + MQTT リモート コントロールに適合しています。 https://github.com/xuhongv/qcloud-esp32-llsync-mqtt 2021.7

また、私のブログを学習の基準と考えないでください、私のブログは単なるメモであり、怠慢であるとは限りません. もしあれば、それらを指摘してください, メッセージを残すことを歓迎します!

  • esp8266あなたと遊んだり、グループに参加QQしたり、それが気に入らない友達はスプレーしたり追加したりしないでください:434878850
  • 個人の電子メール: [email protected] 24 時間オンライン、すべての電子メールが返信されます!
  • esp8266 ソース コード学習の概要 (継続的に更新、スターへようこそ): https://github.com/xuhongv/StudyInEsp8266
  • esp32 ソース コード学習の概要 (継続的に更新、スターへようこそ): https://github.com/xuhongv/StudyInEsp32
  • 以下のWeChatパブリックアカウントのQRコードに注意してください。乾物がたくさんあります。できるだけ早くプッシュします。

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/xh870189248/article/details/118489026