Wir erstellen ein Stück Hardware (nennen Sie es "den Dongle"), die auf Bluetooth LE-Anforderungen reagiert, die von einem Mobiltelefon kommen, wenn der Benutzer es anfordert. Die gesamte Kommunikation wird vom Telefon aus initiiert, der Dongle wird keine Kommunikation initiieren. Kommunikationen, wenn sie auftreten, werden sehr selten sein (vielleicht einmal am Tag) und werden kurz sein (einige hundert Bytes). Wenn Kommunikation stattfindet, möchten wir, dass der Dongle innerhalb weniger Sekunden antwortet, ohne dass der Benutzer manuell mit dem Dongle interagieren muss (z. B. wollen wir nicht, dass der Benutzer einen Knopf auf dem Dongle drücken muss, um "aufzuwachen und zu bezahlen" Beachtung").Bluetooth LE - entscheiden Client gegen Server
Wenn man über den Stromverbrauch nachdenkt, scheint es, dass wenn ein Gerät einen Bluetooth-Scan durchführt, das Gerät beim Scannen meistens nur hört/empfängt und das Gerät, das die Werbung macht, die Übertragung durchführt (richtig?).
Aber Seiten wie this one sagen
Slave (or “peripheral“) devices advertise and wait for connections. Usually, the slave is a small device like a fitness tracker or a smartwatch.
Warum sollte das kleine Gerät (zum Beispiel Fitness-Tracker) dort sitzt, Rundfunk/für immer alle paar Sekunden Werbung (vorausgesetzt, es momentan ist mit nichts verbunden)? Macht das nicht alle Arten von Kraft aus? Wäre es nicht sinnvoller, wenn sich das kleine Gerät stattdessen im Hörmodus befindet?
Und dann, sobald eine Verbindung hergestellt wird, gibt es eine Art "Keep Alive", so dass die zwei verbundenen Geräte "wissen", dass der andere noch da ist?