Bluetooth Low Energy: Introduction (Ch. 1, 2, 3)

Robin Heydon, Bluetooth Low Energy, The Developer’s HandBook (2013)

Kapitel 1: Was ist BLE?
Das Ziel von BLE ist, die energiearmste wireless Verbindung zu ermöglichen. BLE hat nur wenig mit Bluetooth classic zu tun. Anstelle immer höherer Datenraten, ist hier die kleinst notwendige Datenrate gefragt (R = 0.3 Mbps). f = 2.4 GHz
Bluetooth ab Version 4  kennt den Dual-Mode, in dem sowohl BLE wie auch Bluetooth benutz werden können.
Glossar: FrequenzHopping

Kapitel 2: Basic Concepts
– Gespiesen wird mit der kleinstmöglichen Battterie (Knopfbatterie), die 3 V /230 mAh. Spitzenstrom von 15 mA. Die Batterie hält länger, wenn keine Leistungen an ihrem Limit bezogen werden.

– Zeit = Energieverlust: Jede Abfrage ist auf das Minimum beschränkt. Sich wiederholende Abfragen (ID senden) sind zu minimieren. Jede Abfrage muss dafür so sicher wie möglich sein, denn für Wiederholung wäre eine Energieverschwendung. Aus diesem Grund sind nur 3 der 16 Frequenzen bei der Datenübermittlung parallel aktiv (1 oder 2 sind zu wenig sicher).

– Speichern der Daten = Energieverlust: Speicher sind Stromfresser.

Asynchrones Kommunikationskonzept: Es wird klar unterschieden zwischen der Energiefähigkeit unter den Geräten. Das energiearme Gerät behandelt auf allen OSI-Layern nur das Minimum. Die Arbeit übernimmt das Energiestärkere Gerät.
Physical Layer: Theoretisch kann ein Gerät Senden und Empfangen. Doch um zu Sparen, tätigen im asynchronen Konzept die energiearmen Geräte nur 1 Sache und nur 1 Gerät erledigt alle energiefordernden Prozesse.
Link Layer: Die Aufgaben advertize (Packete senden), scannen (Packete erhalten) in den Rollen master, slave (nur Instruktionen erhalten) werden strikt zugewiesen. Der master übernimmt das timing, wählt die Frequenzen, entschlüsselt die Daten und weitere komplexe Aufgaben.
Protocol Layer: Aufgeteilt in Server – Client. Der Client generiert die Daten und teilt dies per Request dem Server mit. Der Server macht,  ähnlich wie der Slave auf dem Link Layer, macht nur, was man ihm sagt. Der Client macht die Arbeit.

Zustandsgesteuert:  Jede Inhalt setzt einen Zustand im Attribut Protocol. Die aktuelle Temperatur, der Ladungszustand der Batterie,  der Name des Geräts oder die Beschreibung, wo die Temperatur erfasst wurde: alles wird einem Zustand zugewiesen. Der Vorteil davon ist, dass Slave sich zu jedem gewünschten Zeitpunkt ausklicken können.

Kapitel 3: Aufbau
Der Kontroller, der Host, der Applikations Layer und der Stack werden im Überblick vorgestellt und jedes dieser Komponten erhält nachher ein eigenes Kapitel.

BLE_architecture
– Der Kontroller:
Physical Layer: f = 2.4 GHz, Modulation: GFSK (Gaussian Frequenz Shift Keying = die Frequenzen werden gewechselt. Gauss wird als Filter gebraucht, da der Frequenzwechsel Störpulse generiert). Direct Test Mode: Direkter Paketversand zum Testen des Physical Layers. Link Layer: Tätigt fast alle Aufgaben: advertizing (Packete anbieten), scanning (Packete abholen), Auf- und Abbau sowie die Unterhaltung einer Verbingung. Packete richtig aufbauen.
Kommuniziert wird auf 3 advertizig channels: Wer ist da? Wer hat Daten? Eine Verbindung wird aufgebaut. Neben den 3 advertizing channels gibt es 37 data channels.  Auf einem davon werden die Daten gesendet (mit einem ACK).
Ein Standard-Packet ist minimum10 Bytes lang, das längste 47 Bytes.BLE_packet_structure

The Host/ControllerInterface (HCI): Stellt sicher, dass das BLE Gerät mit einem Host kommunizieren kann. Der Host sendet Befehlte, das BLE sendet vorwiegend Daten. Der HCI hat zwei getrennte Bereiche: einer beinhaltet die Anbindung zum Physical Layer und der andere die Anbindung zum Logica Link.
In der Andbingung zum Physical Layer ist die Kommunikationsart definiert. Erlaubt ist USB, SDIO und UART.

..