1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/pkg/nordic_softdevice_ble/doc.txt
2020-05-15 22:43:21 +02:00

55 lines
1.9 KiB
Plaintext

/**
* @defgroup pkg_nordic-softdevice-ble Nordic Softdevice BLE
* @ingroup pkg
* @ingroup net
* @brief Provides a RIOT adaption for Nordic Softdevice BLE library
* @deprecated Will be removed after the 2020.10 release. Use nimble for BLE
* support instead.
# Overview
This package provides necessary Makefiles and glue code to use the Nordic S132
SoftDevice as Bluetooth BLE transport for RIOT's 6lowpan stack.
# Usage
"gnrc_netdev_default" has a dependency to "nordic_softdevice_ble", so all
examples automatically download the SDK and compile / link / flash all needed
code.
If you want to manually set up included modules, add "USEPKG +=
nordic_softdevice_ble" to your application's Makefile.
See README-BLE-6LoWPAN.md for instructions on how to set up 6lowpan over BLE on
Linux.
# Known issues
- floating point ABI mismatch
The Nordic binaries are compiled using hard float ABI, which RIOT currently
doesn't support (RIOT's context switching code doesn't preserve the floating
point registers). If the softdevice is compiled in, RIOT will be compiled with
hard float ABI in order for the linking to succeed. This works for some
application, but will lead to serious and hard-to-find bugs for code using
floating point instructions.
Hopefully, either the RIOT community adds hard-float support, or Nordic
releases a soft-float version of the used binaries.
- Outdated
This package uses version 0.9 of the nRF IoT SDK, which has been integrated
into the nRF5 SDK v14.1.0 in its 1.0 version, and the nRF5 SDK has since been
released in several new versions.
A noteworthy shortcoming due to the old version is that the IPSP
implementation only interoperates with Linux kernels up to 4.12.
Unless the [efforts to update the softedevice
integration](https://github.com/RIOT-OS/RIOT/pull/9473) are rekindled, this
module should not be used in new projects, and @ref pkg_nimble should be used
instead.
*/