Wer sich mit den BTLE Modulen von Nordic Semiconductor auseinandersetzt, stößt recht flott auf das Konzept der sog. Softdevices. Darunter konnte ich mir spontan nichts rechtes vorstellen.
Zu folgenden Erkenntnissen bin ich dann gekommen: Die selbst geschriebene Applikation wird nicht als alleinige Firmware sondern in Verbindung mit einem Softdevice auf das BLE Modul geflasht. Dabei liegt im Flash an Stelle 0x00 die Softdevice Firmware, mit Offset dahinter dann die eigene Application (z.B. firmware.hex). Die eigene Applikation inkludiert dabei Headerfiles um auf die offenen Schnittstellen des Softdevices zugreifen zu können.
Was macht das Softdevice? Es übernimmt die Arbeit mit, Steuerung von und alle Reaktionen auf… des Bluetooth-Moduls. Die eigene Applikation hat also nur über API Funktionen aus den SD Header Files zugriff.
Aber Vorsicht bei der Wahl des Softdevices. Je nachdem welches man benötigt, müssen die Target offsets passend eingestellt werden / variiert der Funktionsumfang der geboten wird. Knapp formuliert gibt es folgende Varianten: - S110 (Nur Peripheral Role) - S120 (Entweder Peripheral Role oder Central Role) - S130 (Sowohl Central als auch Peripheral Role)
via https://dayone.me/2lxQzD2














