BLE_API/module.json

42 lines
872 B
JSON
Raw Permalink Normal View History

2015-06-19 12:37:31 +00:00
{
"name": "ble",
2015-11-16 14:48:53 +00:00
"version": "2.0.5",
2015-06-19 12:37:31 +00:00
"description": "The BLE module offers a high level abstraction for using Bluetooth Low Energy on multiple platforms.",
"keywords": [
"Bluetooth",
2015-10-19 13:17:06 +00:00
"BLE",
"mbed",
"mbed-official"
2015-06-19 12:37:31 +00:00
],
"author": "Rohit Grover",
"repository": {
"url": "https://github.com/ARMmbed/ble.git",
2015-06-19 12:37:31 +00:00
"type": "git"
},
"homepage": "http://mbed.org/ble",
"licenses": [
{
"url": "https://spdx.org/licenses/Apache-2.0",
"type": "Apache-2.0"
}
],
2015-07-22 09:14:56 +00:00
"dependencies": {},
2015-06-19 12:37:31 +00:00
"targetDependencies": {
"st-ble-shield": {
"x-nucleo-idb0xa1": "ARMmbed/ble-x-nucleo-idb0xa1"
},
2015-06-19 12:37:31 +00:00
"nrf51822": {
Release 2.0.0 ============= * Major change to the APIs around stack initialization. BLE::init() is now meant to only trigger the initialization of the underlying BLE stack. init() now takes a completion callback as an optional parameter; this callback gets invoked when initialization completes. - There's a new type: BLE::InitializationCompleteCallback_t - There's a new API: BLEInstanceBase::hasInitialized() which transports need to implement. - If no init-completion callback is setup, the application can still determine the status of initialization using BLE::hasInitialized(). !This update may require in a minor change to existing apps! mbed-classic demos would look something like: ``` main() { BLE::Instance().init(); while (!BLE::Instance().hasInitialized()) { /* spin wait */ } /* rest of the initialization ending in the waitForEvent loop */ } ``` whereas mbedOS demos would look like: ``` void bleInitComplete(BLE &ble, ble_error_t error) { WsfTrace("bleInitComplete"); if (error != BLE_ERROR_NONE) { WsfTrace("initailization failed with error: %u", error); return; } if (ble.getInstanceID() == BLE::DEFAULT_INSTANCE) { /* use the BLE instance */ } } extern "C" void app_start(int argc, char *argv[]) { BLE::Instance().init(bleInitComplete); } ``` The Nordic stack initializes right-away, and so existing demos based on Nordic should continue to work. * There's a new API: BLE::getInstanceID(), which simply returns the ID of an instance. * Reduce the memory footprint consumed by a FunctionPointerWithContext to 20 bytes (originally, it was 32 bytes !). Also enforce alignment constraints of the embedded pointer to member function. This should help with the size of a GattCharacteristic. * Add EnvironmentalService.h under services/. * There have been minor improvements to EddystoneService and EddystoneConfigService. * We've added a CONTRIBUTING.md to help guide user contributions.
2015-10-30 15:18:02 +00:00
"ble-nrf51822": "^2.0.0"
},
2015-10-23 09:33:47 +00:00
"cordio": {
Release 2.0.0 ============= * Major change to the APIs around stack initialization. BLE::init() is now meant to only trigger the initialization of the underlying BLE stack. init() now takes a completion callback as an optional parameter; this callback gets invoked when initialization completes. - There's a new type: BLE::InitializationCompleteCallback_t - There's a new API: BLEInstanceBase::hasInitialized() which transports need to implement. - If no init-completion callback is setup, the application can still determine the status of initialization using BLE::hasInitialized(). !This update may require in a minor change to existing apps! mbed-classic demos would look something like: ``` main() { BLE::Instance().init(); while (!BLE::Instance().hasInitialized()) { /* spin wait */ } /* rest of the initialization ending in the waitForEvent loop */ } ``` whereas mbedOS demos would look like: ``` void bleInitComplete(BLE &ble, ble_error_t error) { WsfTrace("bleInitComplete"); if (error != BLE_ERROR_NONE) { WsfTrace("initailization failed with error: %u", error); return; } if (ble.getInstanceID() == BLE::DEFAULT_INSTANCE) { /* use the BLE instance */ } } extern "C" void app_start(int argc, char *argv[]) { BLE::Instance().init(bleInitComplete); } ``` The Nordic stack initializes right-away, and so existing demos based on Nordic should continue to work. * There's a new API: BLE::getInstanceID(), which simply returns the ID of an instance. * Reduce the memory footprint consumed by a FunctionPointerWithContext to 20 bytes (originally, it was 32 bytes !). Also enforce alignment constraints of the embedded pointer to member function. This should help with the size of a GattCharacteristic. * Add EnvironmentalService.h under services/. * There have been minor improvements to EddystoneService and EddystoneConfigService. * We've added a CONTRIBUTING.md to help guide user contributions.
2015-10-30 15:18:02 +00:00
"ble-wicentric": "~0.0.4"
2015-10-23 09:33:47 +00:00
},
"mbed-classic": {
2015-07-22 09:14:56 +00:00
"mbed-classic": "~0.0.1"
2015-08-07 14:50:03 +00:00
},
"mbed-os": {
"mbed-drivers": "*"
2015-06-19 12:37:31 +00:00
}
}
Release 0.4.8 ============= * Introduce an Instance() class method to BLE to allow access to the BLE singleton(s) using instanceID. Calling BLE::Instance() is preferable to constructing a BLE object directly because Instance() returns references to internally created singletons. * We've added an initial prototype for a yotta-config based initialization for BLE transports. It is conceivable to have multiple BLE transports available to a system concurrently in which case Instance() can be passed an instanceID. There's also a BLE::NUM_INSTANCES--instanceID passed to Instance() should be less than NUM_INSTANCES for the returned BLE singleton to be useful. The config system now allows the target to specify multiple BLE instances. BLE::Instance() and BLE constructor rely upon a static array of initializers to create actual BLE transport instances. A description of these instances and initializers is supposed to be put in some .json file contributing to yotta's configuration (typically the target.json). Here's a sample: "config": { ... "ble_instances": { "count": 1, "0" : { "initializer" : "createBLEInstance" } } } Refer to http://yottadocs.mbed.com/reference/config.html. Note: The configuration system is currently experimental. Some of the behaviour described below may change in backwards-incompatible ways with minor updates to yotta. The use of this feature is optional. Initialization would continue to work like before as long as there is a default createBLEInstance() method available. * We've updated our support for Google's Eddystone beacon by adding the EddystoneConfigService. * Added onConnection() and onDisconnection() now append to a callback chain internally. Please note that this has also changed the callbackType for onDisconnection; resulting in a minor breaking change for API. All previous programs using onDisconnection() would need to adapt. * Handle the case of a NULL transport pointer for BLE. * We now disallow copy constructor and assignment operator for BLE.
2015-09-29 08:33:30 +00:00
}