Bluetooth Low Energy-Demoanwendungen - FreeRTOS

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Bluetooth Low Energy-Demoanwendungen

Wichtig

Diese Demo wird im Amazon-FreeRTOS-Repository gehostet, das veraltet ist. Wir empfehlen, dass Sie hier beginnen, wenn Sie ein neues Projekt erstellen. Wenn Sie bereits ein vorhandenes FreeRTOS-Projekt haben, das auf dem inzwischen veralteten Amazon-FreeRTOS-Repository basiert, finden Sie weitere Informationen unter. Leitfaden zur Migration des Amazon-FreerTOS Github-Repositorys

Übersicht

FreeRTOS Bluetooth Low Energy umfasst drei Demo-Anwendungen:

  • MQTT über Bluetooth Low Energy-Demo

    Diese Anwendung zeigt, wie Sie den MQTT über den Bluetooth Low Energy-Service nutzen können.

  • WLAN-Bereitstellung-Demo

    Diese Anwendung zeigt, wie Sie den Bluetooth Low Energy Wi-Fi Provisioning Service nutzen können.

  • Generic Attributes Server-Demo

    Diese Anwendung demonstriert, wie die FreeRTOS Bluetooth Low Energy-Middleware-APIs verwendet werden, um einen einfachen GATT-Server zu erstellen.

Anmerkung

Folgen Sie den Schritten unter, um die FreeRTOS-Demos einzurichten und auszuführen. Erste Schritte mit FreeRTOS

Voraussetzungen

Um diese Demos auszuführen, benötigen Sie einen Mikrocontroller mit Bluetooth Low Energy-Funktion. Sie brauchen außerdem iOS-SDK für FreeRTOS-Bluetooth-Geräte oder Android-SDK für FreeRTOS-Bluetooth-Geräte.

Einrichtung AWS IoT und Amazon Cognito für FreeRTOS Bluetooth Low Energy

Um Ihre Geräte mit AWS IoT Across MQTT zu verbinden, müssen Sie Amazon Cognito einrichten AWS IoT .

Zum Einrichten AWS IoT
  1. Richten Sie ein AWS Konto auf https://aws.amazon.com/ ein.

  2. Öffnen Sie die AWS IoT -Konsole und wählen Sie im Navigationsbereich Manage (Verwalten) und dann Things (Objekte).

  3. Wählen Sie Create (Erstellen) und dann Create a single thing (Einzelnes Objekt erstellen).

  4. Geben Sie einen Namen für Ihr Gerät ein und wählen Sie dann Next (Weiter).

  5. Wenn Sie Ihren Mikrocontroller über ein mobiles Gerät mit der Cloud verbinden, wählen Sie Create thing without certificate (Erstellen Sie das Objekt ohne Zertifikat). Da die Mobile SDKs Amazon Cognito für die Geräteauthentifizierung verwenden, müssen Sie kein Gerätezertifikat für Demos erstellen, die Bluetooth Low Energy verwenden.

    Wenn Sie Ihren Mikrocontroller direkt über WLAN mit der Cloud verbinden, wählen Sie Create certificate (Zertifikat erstellen), wählen Sie Activate (Aktivieren) und laden Sie dann das Zertifikat, den öffentlichen Schlüssel und den privaten Schlüssel des Objekts herunter.

  6. Wählen Sie das Objekt, das Sie gerade erstellt haben, aus der Liste der registrierten Objekte aus und wählen Sie dann Interact (Interagieren) auf der Seite Ihres Objekts. Notieren Sie sich den AWS IoT REST-API-Endpunkt.

Weitere Informationen zur Einrichtung finden Sie unter Erste Schritte mit AWS IoT.

So erstellen Sie einen Amazon Cognito Cognito-Benutzerpool
  1. Öffnen Sie die Amazon Cognito Cognito-Konsole und wählen Sie Benutzerpools verwalten.

  2. Wählen Sie Create a user pool.

  3. Geben Sie dem Benutzerpool einen Namen und wählen Sie dann Review defaults (Standardwerte prüfen).

  4. Wählen Sie im Navigationsbereich App clients (App-Clients) und wählen Sie dann Add an app client (App-Client hinzufügen).

  5. Geben Sie einen Namen für den App-Client ein und wählen Sie dann Create app client (App-Client erstellen).

  6. Wählen Sie im Navigationsbereich Review (Prüfen) und dann Create pool (Pool erstellen).

    Notieren Sie sich die Pool-ID, die auf der Seite General Settings (Allgemeine Einstellungen) Ihres eigenen Benutzerpools angezeigt wird.

  7. Wählen Sie im Navigationsbereich App clients (App-Clients) und wählen Sie dann Show details (Details anzeigen). Notieren Sie sich die App-Client-ID und den App-Clientschlüssel.

So erstellen Sie einen Amazon Cognito Cognito-Identitätspool
  1. Öffnen Sie die Amazon Cognito Cognito-Konsole und wählen Sie Manage Identity Pools aus.

  2. Geben Sie einen Namen für den Identitäten-Pool ein.

  3. Erweitern Sie Authentication providers (Authentifizierungsanbieter), wählen Sie die Registerkarte Cognito und geben Sie dann Ihre Benutzerpool-ID und App-Client-ID ein.

  4. Wählen Sie Pool erstellen.

  5. Erweitern Sie View Details (Details anzeigen) und notieren Sie sich die beiden IAM-Rollennamen. Wählen Sie Allow, um die IAM-Rollen für authentifizierte und nicht authentifizierte Identitäten für den Zugriff auf Amazon Cognito zu erstellen.

  6. Wählen Sie Edit identity pool (Identitäten-Pool bearbeiten). Notieren Sie sich die Identitätspool-ID. Sie sollte ein Format wie us-west-2:12345678-1234-1234-1234-123456789012 haben.

Weitere Informationen zur Einrichtung von Amazon Cognito finden Sie unter Erste Schritte mit Amazon Cognito.

Um eine IAM-Richtlinie zu erstellen und an die authentifizierte Identität anzuhängen
  1. Öffnen Sie die IAM-Konsole und wählen Sie im Navigationsbereich Rollen aus.

  2. Finden Sie die Rolle Ihrer authentifizierten Identität und wählen Sie sie aus, wählen Sie Attach policies (Richtlinien anfügen) und wählen Sie dann Add inline policy (Eingebundene Richtlinie hinzufügen).

  3. Wählen Sie die Registerkarte JSON und fügen Sie die folgende JSON ein:

    { "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "iot:AttachPolicy", "iot:AttachPrincipalPolicy", "iot:Connect", "iot:Publish", "iot:Subscribe", "iot:Receive", "iot:GetThingShadow", "iot:UpdateThingShadow", "iot:DeleteThingShadow" ], "Resource":[ "*" ] } ] }
  4. Wählen Sie Review policy (Richtlinie prüfen), geben Sie einen Namen für die Richtlinie ein und wählen Sie dann Create policy (Richtlinie erstellen).

Halten Sie Ihre Daten AWS IoT und Amazon Cognito stets griffbereit. Sie benötigen den Endpunkt und die IDs, um Ihre mobile Anwendung in der AWS Cloud zu authentifizieren.

Richten Sie Ihre FreeRTOS-Umgebung für Bluetooth Low Energy ein

Um Ihre Umgebung einzurichten, müssen Sie FreeRTOS mit dem Bluetooth Low Energy-Bibliothek auf Ihrem Mikrocontroller herunterladen und das Mobile SDK für FreeRTOS-Bluetooth-Geräte auf Ihr Mobilgerät herunterladen und konfigurieren.

Um die Umgebung Ihres Mikrocontrollers mit FreeRTOS Bluetooth Low Energy einzurichten
  1. Laden Sie FreeRTOS von herunter oder klonen Sie es. GitHub Anweisungen finden Sie in der Datei README.md.

  2. Richten Sie FreeRTOS auf Ihrem Mikrocontroller ein.

    Informationen zu den ersten Schritten mit FreeRTOS auf einem FreeRTOS-qualifizierten Mikrocontroller finden Sie in der Anleitung für Ihr Board unter Getting Started with FreeRTOS.

    Anmerkung

    Sie können die Demos auf jedem Bluetooth Low Energy-fähigen Mikrocontroller mit FreeRTOS und portierten FreeRTOS Bluetooth Low Energy-Bibliotheken ausführen. Derzeit ist das MQTT über Bluetooth Low Energy FreeRTOS-Demoprojekt vollständig auf die folgenden Bluetooth Low Energy-fähigen Geräte portiert:

Gemeinsame Komponenten

Die FreeRTOS-Demoanwendungen haben zwei gemeinsame Komponenten:

  • Network Manager

  • Bluetooth Low Energy Mobile SDK Demo-Anwendung für mobile Endgeräte

Network Manager

Der Network Manager verwaltet die Netzwerkverbindung Ihres Mikrocontrollers. Es befindet sich in Ihrem FreeRTOS-Verzeichnis unter. demos/network_manager/aws_iot_network_manager.c Wenn der Netzwerkmanager sowohl für Wi-Fi als auch für Bluetooth Low Energy aktiviert ist, beginnen die Demos standardmäßig mit Bluetooth Low Energy. Wenn die Bluetooth Low Energy-Verbindung unterbrochen wird und Ihr Board WLAN-fähig ist, wechselt der Network Manager zu einer verfügbaren WLAN-Verbindung, um zu verhindern, dass Sie vom Netzwerk getrennt werden.

Um einen Netzwerkverbindungstyp für Network Manager zu aktivieren, fügen Sie den Netzwerkverbindungstyp dem Parameter configENABLED_NETWORKS in vendors/vendor/boards/board/aws_demos/config_files/aws_iot_network_config.h hinzu (wobei vendor der Name des Herstellers und board der Name des Boards ist, das Sie zum Ausführen der Demos verwenden).

Wenn Sie beispielsweise sowohl Bluetooth Low Energy als auch Wi-Fi aktiviert haben, lautet die Zeile, die mit #define configENABLED_NETWORKS in aws_iot_network_config.h beginnt, wie folgt:

#define configENABLED_NETWORKS ( AWSIOT_NETWORK_TYPE_BLE | AWSIOT_NETWORK_TYPE_WIFI )

Um eine Liste der aktuell unterstützten Netzwerkverbindungstypen zu erhalten, sehen Sie sich die Zeilen, die mit #define AWSIOT_NETWORK_TYPE beginnen, in aws_iot_network.h an.

FreeRTOS Bluetooth Low Energy Mobile SDK-Demoanwendung

Die FreeRTOS Bluetooth Low Energy Mobile SDK-Demoanwendung befindet sich GitHub unter Android SDK für FreeRTOS Bluetooth-Geräte unter amazon-freertos-ble-android-sdk/app und im iOS SDK für FreeRTOS Bluetooth-Geräte unter. amazon-freertos-ble-ios-sdk/Example/AmazonFreeRTOSDemo In diesem Beispiel verwenden wir Screenshots der iOS-Version der Demoanwendung für mobile Geräte.

Anmerkung

Wenn Sie ein iOS-Gerät verwenden, benötigen Sie Xcode, um die mobile Demo-Anwendung zu erstellen. Wenn Sie ein Android-Gerät verwenden, können Sie Android Studio verwenden, um die mobile Demo-Anwendung zu erstellen.

So konfigurieren Sie die iOS-SDK-Demoanwendung

Wenn Sie Konfigurationsvariablen definieren, verwenden Sie das Format der Platzhalterwerte aus den Konfigurationsdateien.

  1. Vergewissern Sie sich, dass iOS-SDK für FreeRTOS-Bluetooth-Geräte installiert ist.

  2. Führen Sie den folgenden Befehl über die amazon-freertos-ble-ios-sdk/Example/AmazonFreeRTOSDemo/ aus:

    $ pod install
  3. Öffnen Sie das Projekt amazon-freertos-ble-ios-sdk/Example/AmazonFreeRTOSDemo/AmazonFreeRTOSDemo.xcworkspace mit Xcode und wechseln Sie vom Konto des signierenden Entwicklers zu Ihrem Konto.

  4. Erstellen Sie eine AWS IoT Richtlinie in Ihrer Region (falls Sie dies noch nicht getan haben).

    Anmerkung

    Diese Richtlinie unterscheidet sich von der IAM-Richtlinie, die für die authentifizierte Amazon Cognito Cognito-Identität erstellt wurde.

    1. Öffnen Sie die AWS IoT -Konsole.

    2. Wählen Sie im Navigationsbereich erst Sicher, dann Richtlinien und anschließend Erstellen aus. Geben Sie einen Namen zur Identifizierung Ihrer Richtlinie ein. Wählen Sie im Abschnitt Anweisungen hinzufügen die Option Erweiterter Modus aus. Kopieren Sie die folgende JSON und fügen Sie sie in das Fenster des Richtlinien-Editors ein. Ersetzen Sie aws-region und aws-account durch Ihre AWS Region und Konto-ID.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:Connect", "Resource":"arn:aws:iot:region:account-id:*" }, { "Effect": "Allow", "Action": "iot:Publish", "Resource": "arn:aws:iot:region:account-id:*" }, { "Effect": "Allow", "Action": "iot:Subscribe", "Resource": "arn:aws:iot:region:account-id:*" }, { "Effect": "Allow", "Action": "iot:Receive", "Resource": "arn:aws:iot:region:account-id:*" } ] }
    3. Wählen Sie Erstellen.

  5. Öffnen Sie amazon-freertos-ble-ios-sdk/Example/AmazonFreeRTOSDemo/AmazonFreeRTOSDemo/Amazon/AmazonConstants.swift und definieren Sie die folgenden Variablen neu:

    • region: Ihre Region. AWS

    • iotPolicyName: Name Ihrer AWS IoT Richtlinie.

    • mqttCustomTopic: Das MQTT-Thema, zu dem Sie veröffentlichen möchten

  6. Öffnen Sie amazon-freertos-ble-ios-sdk/Example/AmazonFreeRTOSDemo/AmazonFreeRTOSDemo/Support/awsconfiguration.json.

    Definieren Sie die folgenden Variablen unter CognitoIdentity neu:

    • PoolId: Ihre Amazon Cognito Cognito-Identitätspool-ID.

    • Region: Ihre AWS Region.

    Definieren Sie die folgenden Variablen unter CognitoUserPool neu:

    • PoolId: Ihre Amazon Cognito Cognito-Benutzerpool-ID.

    • AppClientId: Ihre App-Client-ID

    • AppClientSecret: Ihren App-Clientschlüssel

    • Region: Ihre AWS Region.

So konfigurieren Sie die Android-SDK-Demoanwendung

Wenn Sie Konfigurationsvariablen definieren, verwenden Sie das Format der Platzhalterwerte aus den Konfigurationsdateien.

  1. Vergewissern Sie sich, dass Android-SDK für FreeRTOS-Bluetooth-Geräte installiert ist.

  2. Erstellen Sie eine AWS IoT Richtlinie in Ihrer Region (falls Sie dies noch nicht getan haben).

    Anmerkung

    Diese Richtlinie unterscheidet sich von der IAM-Richtlinie, die für die authentifizierte Amazon Cognito Cognito-Identität erstellt wurde.

    1. Öffnen Sie die AWS IoT -Konsole.

    2. Wählen Sie im Navigationsbereich erst Sicher, dann Richtlinien und anschließend Erstellen aus. Geben Sie einen Namen zur Identifizierung Ihrer Richtlinie ein. Wählen Sie im Abschnitt Anweisungen hinzufügen die Option Erweiterter Modus aus. Kopieren Sie die folgende JSON und fügen Sie sie in das Fenster des Richtlinien-Editors ein. Ersetzen Sie aws-region und aws-account durch Ihre AWS Region und Konto-ID.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:Connect", "Resource":"arn:aws:iot:region:account-id:*" }, { "Effect": "Allow", "Action": "iot:Publish", "Resource": "arn:aws:iot:region:account-id:*" }, { "Effect": "Allow", "Action": "iot:Subscribe", "Resource": "arn:aws:iot:region:account-id:*" }, { "Effect": "Allow", "Action": "iot:Receive", "Resource": "arn:aws:iot:region:account-id:*" } ] }
    3. Wählen Sie Erstellen.

  3. Öffnen Sie https://github.com/aws/amazon-freertos-ble-android-sdk/blob/master/app/src/main/java/software/amazon/freertos/demo/ DemoConstants .java und definieren Sie die folgenden Variablen neu:

    • AWS_IOT_POLICY_NAME: Ihr AWS IoT Richtlinienname.

    • AWS_IOT_REGION: Ihre AWS Region.

  4. Öffnen Sie https://github.com/aws/amazon-freertos-ble-android-sdk/blob/master/app/src/main/res/raw/awsconfiguration.json.

    Definieren Sie die folgenden Variablen unter CognitoIdentity neu:

    • PoolId: Ihre Amazon Cognito Cognito-Identitätspool-ID.

    • Region: Ihre AWS Region.

    Definieren Sie die folgenden Variablen unter CognitoUserPool neu:

    • PoolId: Ihre Amazon Cognito Cognito-Benutzerpool-ID.

    • AppClientId: Ihre App-Client-ID

    • AppClientSecret: Ihren App-Clientschlüssel

    • Region: Ihre AWS Region.

So erkennen und stellen Sie sichere Verbindungen mit Ihrem Mikrocontroller über Bluetooth Low Energy her
  1. Um Ihren Mikrocontroller und Ihr Mobilgerät sicher zu koppeln (Schritt 6), benötigen Sie einen seriellen Terminal-Emulator mit Eingabe- und Ausgabefunktionen (z. B. TeraTerm). Konfigurieren Sie das Terminal für eine serielle Verbindung zu Ihrem Board gemäß den Anweisungen in Installieren eines Terminal-Emulators.

  2. Starten Sie das Bluetooth Low Energy Demo-Projekt auf Ihrem Mikrocontroller.

  3. Starten Sie die Bluetooth Low Energy Mobile SDK-Demo-Anwendung auf Ihrem mobilen Gerät.

    Um die Demoanwendung im Android-SDK von der Befehlszeile aus zu starten, führen Sie den folgenden Befehl aus:

    $ ./gradlew installDebug
  4. Vergewissern Sie sich, dass Ihr Mikrocontroller unter Devides (Geräte) in der Bluetooth Low Energy Mobile SDK Demo-Anwendung erscheint.

    Seite zur Geräteverwaltung, auf der ein ESP32-Gerät mit seiner eindeutigen Kennung angezeigt wird.
    Anmerkung

    Alle Geräte mit FreeRTOS und dem Geräteinformationsdienst (freertos/.../device_information), die sich in Reichweite befinden, werden in der Liste angezeigt.

  5. Wählen Sie Ihren Mikrocontroller aus der Liste der Geräte aus. Die Anwendung stellt eine Verbindung mit dem Board her und eine grüne Linie wird neben dem verbundenen Gerät angezeigt.

    Die ESP32-Geräte-ID wird angezeigt.

    Sie können die Verbindung zu Ihrem Mikrocontroller trennen, indem Sie die Linie nach links ziehen.

    Geräteseite mit einer ESP32-Geräte-ID und einer anderen Geräte-ID.
  6. Wenn Sie dazu aufgefordert werden, koppeln Sie Ihren Mikrocontroller und Ihr mobiles Gerät.

    FreeRTOS-Board

    Die Konsolenausgabe zeigt die Trennung des BLE-Geräts, die Unterbrechung des MQTT-Dienstes, den Start der Ankündigung, die BLE-Verbindung zum Remote-Gerät und eine Aufforderung zum numerischen Vergleich.

    Mobile Geräte

    Dialogfeld zur Anforderung einer Bluetooth-Kopplung für das Gerät „ESP32“ mit dem Code „465520“ zur Bestätigung auf „ESP32“.

    Wenn der Code für den numerischen Abgleich auf beiden Geräten übereinstimmt, verbinden Sie die Geräte.

Anmerkung

Die Bluetooth Low Energy Mobile SDK-Demoanwendung verwendet Amazon Cognito für die Benutzerauthentifizierung. Stellen Sie sicher, dass Sie einen Amazon Cognito Cognito-Benutzer- und Identitätspools eingerichtet haben und dass Sie authentifizierten Identitäten IAM-Richtlinien angehängt haben.

MQTT über Bluetooth Low Energy

In der Demo MQTT over Bluetooth Low Energy veröffentlicht Ihr Mikrocontroller Nachrichten über einen MQTT-Proxy in der AWS Cloud.

So abonnieren Sie ein Demo-MQTT-Thema
  1. Melden Sie sich bei der Konsole an. AWS IoT

  2. Wählen Sie im Navigationsbereich Test und dann MQTT-Testclient aus, um den MQTT-Client zu öffnen.

  3. Geben Sie im Feld Subscription topic (Abonnementthema) die Option thing-name/example/topic1 ein und wählen Sie dann Subscribe to topic (Thema abonnieren).

Wenn Sie den Mikrocontroller mit Bluetooth Low Energy mit Ihrem mobilen Gerät koppeln, werden die MQTT-Nachrichten über die Bluetooth Low Energy Mobile SDK-Demoanwendung auf Ihrem mobilen Gerät weitergeleitet.

Um die Demo über Bluetooth Low Energy zu aktivieren
  1. Öffnen Sie vendors/vendor/boards/board/aws_demos/config_files/aws_demo_config.h, und definieren Sie CONFIG_MQTT_BLE_TRANSPORT_DEMO_ENABLED.

  2. Öffnen demos/include/aws_clientcredential.h und konfigurieren Sie clientcredentialMQTT_BROKER_ENDPOINT mit dem AWS IoT Broker-Endpunkt. Konfigurieren Sie clientcredentialIOT_THING_NAME mit dem Ding-Namen für das BLE-Mikrocontroller-Gerät. Der AWS IoT Broker-Endpunkt kann über die AWS IoT Konsole abgerufen werden, indem Sie im linken Navigationsbereich Einstellungen auswählen, oder über die CLI, indem Sie den folgenden Befehl ausführen:aws iot describe-endpoint --endpoint-type=iot:Data-ATS.

    Anmerkung

    Der AWS IoT Broker-Endpunkt und der Ding-Name müssen sich beide in derselben Region befinden, in der die Cognito-Identität und der Benutzerpool konfiguriert sind.

So führen Sie die Demo aus
  1. Erstellen Sie das Demoprojekt und führen Sie es auf dem Mikrocontroller aus.

  2. Stellen Sie sicher, dass Sie Ihr Board und Ihr mobiles Gerät mithilfe der FreeRTOS Bluetooth Low Energy Mobile SDK-Demoanwendung verbunden haben.

  3. Wählen Sie aus der Liste Devices (Geräte) in der Demoanwendung für mobile Geräte Ihren Mikrocontroller aus und wählen Sie dann MQTT Proxy (MQTT-Proxy), um die MQTT-Proxy-Einstellungen zu öffnen.

    Liste von drei ESP32-Geräte-IDs mit MQTT-Proxy-, Netzwerkkonfiguration- und benutzerdefinierten GATT-MQTT-Optionen unten.
  4. Nachdem Sie den MQTT-Proxy aktiviert haben, werden MQTT-Nachrichten im thing-name/example/topic1-Thema angezeigt und die Daten werden im UART-Terminal ausgegeben.

WLAN-Bereitstellung

Wi-Fi Provisioning ist ein FreeRTOS Bluetooth Low Energy-Dienst, mit dem Sie Wi-Fi-Netzwerkanmeldedaten sicher über Bluetooth Low Energy von einem Mobilgerät an einen Mikrocontroller senden können. Den Quellcode für den WLAN-Bereitstellungsservice finden Sie unter freertos/.../wifi_provisioning.

Anmerkung

Die Wi-Fi Provisioning-Demo wird derzeit auf dem Espressif ESP32-C unterstützt. DevKit

So aktivieren Sie die Demo:
  1. Aktivieren Sie den WLAN-Bereitstellungsservice. Öffnen Sie vendors/vendor/boards/board/aws_demos/config_files/iot_ble_config.h und legen Sie #define IOT_BLE_ENABLE_WIFI_PROVISIONING auf 1 fest (wobei vendor der Name des Herstellers und board der Name des Boards ist, das Sie zum Ausführen der Demos verwenden).

    Anmerkung

    Der WLAN-Bereitstellungsservice ist standardmäßig deaktiviert.

  2. Konfigurieren Sie Network Manager, um sowohl Bluetooth Low Energy als auch Wi-Fi zu aktivieren.

So führen Sie die Demo aus
  1. Erstellen Sie das Demoprojekt und führen Sie es auf dem Mikrocontroller aus.

  2. Stellen Sie sicher, dass Sie Ihren Mikrocontroller und Ihr Mobilgerät mit dem gekoppelt haben. FreeRTOS Bluetooth Low Energy Mobile SDK-Demoanwendung

  3. Wählen Sie erst aus der Liste Devices (Geräte) in der Demoanwendung für mobile Geräte Ihren Mikrocontroller und dann (Nework Config) Netzwerkkonfiguration aus, um die Netzwerkkonfiguration zu öffnen.

    Liste von drei ESP32-Geräte-IDs mit MQTT-Proxy-, Netzwerkkonfiguration- und benutzerdefinierten GATT-MQTT-Optionen unten.
  4. Nachdem Sie Netzwerkkonfiguration für Ihr Board ausgewählt haben, sendet der Mikrocontroller eine Liste der Netzwerke in der Umgebung an das mobile Gerät. Die verfügbaren WLAN-Netzwerke werden in einer Liste unter Gescannte Netzwerke angezeigt.

    Die ESP32-Geräteverwaltungsschnittstelle zeigt keine gespeicherten Netzwerke an, zwei gescannte offene Wi-Fi-Netzwerke, eines mit WPA2-Sicherheit und RSSI von -29, das andere mit offener Sicherheit und RSSI von -50.

    Wählen Sie aus der Liste Gescannte Netzwerke Ihr Netzwerk aus und geben Sie dann die SSID und Ihr Passwort ein, falls erforderlich.

    Dialogfeld zur Eingabe des Wi-Fi-Netzwerkkennworts mit leerem Passwortfeld, Schaltflächen Abbrechen und Speichern.

    Der Mikrocontroller stellt eine Verbindung zum Netzwerk her und speichert es. Das Netzwerk wird unter Saved Networks (Gespeicherte Netzwerke) angezeigt.

    Netzwerkschnittstelle mit gespeicherten und gescannten WiFi Netzwerken, von denen eines durch WPA2 gesichert und das andere geöffnet ist, mit Signalstärkeanzeigen.

Sie können mehrere Netzwerke in der Demoanwendung für mobile Geräte speichern. Wenn Sie die Anwendung und Demo neu starten, verbindet sich der Mikrocontroller mit dem ersten verfügbaren gespeicherten Netzwerk, das oben in der Liste Gespeicherte Netzwerke angezeigt wird.

Um die Netzwerk-Prioritätsreihenfolge zu ändern oder Netzwerke zu löschen, wählen Sie auf der Seite Netzwerkkonfiguration die Option Bearbeitungsmodus aus. Um die Netzwerk-Prioritätsreihenfolge zu ändern, wählen Sie die rechte Seite des Netzwerks, das Sie anders anordnen möchten, aus und ziehen Sie das Netzwerk nach oben oder unten. Um ein Netzwerk zu löschen, wählen Sie die rote Schaltfläche auf der linken Seite des Netzwerks, das Sie löschen möchten.

Der Bildschirm mit den WLAN-Netzwerkeinstellungen zeigt gespeicherte Netzwerke, Bearbeitungsoptionen zum Löschen oder Ändern der Priorität und gescannte Netzwerke an.

Generic Attributes Server

In diesem Beispiel sendet eine Generic Attribute(GATT)-Demo-Serveranwendung auf Ihrem Mikrocontroller einen einfachen Zählerwert an FreeRTOS Bluetooth Low Energy Mobile SDK-Demoanwendung.

Mit den Bluetooth Low Energy Mobile SDKs können Sie Ihren eigenen GATT-Client für ein mobiles Gerät erstellen, welches sich mit dem GATT-Server auf Ihrem Mikrocontroller verbindet und parallel mit der Demoanwendung für mobile Geräte ausgeführt wird.

So aktivieren Sie die Demo:
  1. Aktivieren Sie die Bluetooth Low Energy GATT-Demo. Fügen Sie in vendors/vendor/boards/board/aws_demos/config_files/iot_ble_config.h (wobei vendor der Name des Herstellers und board der Name des Boards ist, das Sie zum Ausführen der Demos verwenden) #define IOT_BLE_ADD_CUSTOM_SERVICES ( 1 ) der Liste der define-Anweisungen hinzu.

    Anmerkung

    Die Bluetooth Low Energy GATT-Demo ist standardmäßig deaktiviert.

  2. Öffnen Sie freertos/vendors/vendor/boards/board/aws_demos/config_files/aws_demo_config.h, kommentieren Sie #define CONFIG_CORE_MQTT_MUTUAL_AUTH_DEMO_ENABLED aus und definieren Sie CONFIG_BLE_GATT_SERVER_DEMO_ENABLED.

So führen Sie die Demo aus
  1. Erstellen Sie das Demoprojekt und führen Sie es auf dem Mikrocontroller aus.

  2. Stellen Sie sicher, dass Sie Ihr Board und Ihr mobiles Gerät mithilfe der FreeRTOS Bluetooth Low Energy Mobile SDK-Demoanwendung verbunden haben.

  3. Wählen Sie aus der Liste Devices (Geräte) in der App Ihr Board und dann MQTT Proxy (MQTT-Proxy), um die MQTT-Proxy-Einstellungen zu öffnen.

    Liste von drei ESP32-Geräte-IDs mit MQTT-Proxy-, Netzwerkkonfiguration- und benutzerdefinierten GATT-MQTT-Optionen unten.
  4. Kehren Sie zur Liste Geräte zurück, wählen Sie erst Ihr Board und dann Benutzerdefiniertes GATT MQTT zum Öffnen der benutzerdefinierten GATT-Serviceoptionen aus.

  5. Wählen Sie Start Counter (Zähler starten) aus, um die Daten im your-thing-name/example/topic-MQTT-Thema zu veröffentlichen.

    Nachdem Sie den MQTT-Proxy aktiviert haben, werden Nachrichten von Hello World und vom inkrementellen Zähler im your-thing-name/example/topic-Thema angezeigt.