Commit graph

489 commits

Author SHA1 Message Date
Jean-Philippe Brucker dc1d7893c4 Update S110 detection macros
Those macros are defined by mbed SDK in targets.py. They changed from
MCU_NORDIC_xxx_S110 to MCU_NRF51_xxx_S110. Update the #ifdefs accordingly.
2015-08-24 18:09:28 +01:00
James Crosby b94eaffd5f remove some unnecessary include paths 2015-08-18 14:06:13 +01:00
Rohit Grover 52625825de Merge pull request #41 from jpbrucker/bootloader
Add FOTA bootloader image
2015-08-13 13:43:16 +01:00
Jean-Philippe Brucker 8f853d9676 Add FOTA bootloader image
This file was previously stored in the mbed SDK, but it was decided that
putting it inside the nRF library would make more sense.

The exact location isn't too important, since mbed SDK is looking for
file names in all scanned resource files, when building a BOOT image.

It was built from the current ARMmbed dfu-bootloader repository.
It uses the internal LF clock source only, so it is compatible with all
nRF51822 devices. In addition, it doesn't rely on a specific SoftDevice:
the SoftDevice information struct is inspected at a fixed address, to
find out the application entry point.

As a temporary solution, we'll duplicate the file because mbed assumes
we need per-SoftDevice bootloaders. In the future, this will be a single
file.

In order to ease development, this bootloader pretends to use DFU version
0.4, so recent DFU applications won't mandate an init packet.
2015-08-13 13:36:10 +01:00
Rohit Grover 21e8e22df9 Release 0.4.7
=============

* There's now a compile time switch to for handling for BLE stack events. For
  mbed OS, we now post callbacks to Minar, else stack events are executed
  right-away in interrupt context. In either case, the logic of event
  processing is identical--this means that the Nordic port of BLE_API will
  have the same code for mbed-classic and mbed OS. :)

  As a fallout of the above, all mbed-OS BLE event handling now happens in
  thread mode.
2015-08-13 11:12:42 +01:00
Rohit Grover 41ec57c418 version v0.4.7 2015-08-13 11:11:07 +01:00
Rohit Grover 34cffe75cb depend on an updated version of ble 2015-08-13 11:07:59 +01:00
Rohit Grover 74c707687b setup an event handler to post BLE events to Minar.
Stack and system events now get scheduled through minar.
2015-08-13 11:01:50 +01:00
Rohit Grover 6d1b1d94f6 white space diffs. 2015-08-12 10:55:44 +01:00
Rohit Grover c9a77b8253 Release 0.4.6
=============

Enhancements
~~~~~~~~~~~~

* Add connection handle to GATT callback parameters. This paves the way for
  applications requiring multiple concurrent connections: read/write/HVX
  callbacks will be able to distinguish between peripherals by comparing per-
  device connection handles.

* nRFGattClient: move the allocation of the singleton to within the
  getInstance() method. This saves memory when nRFGattClient isn't
  instantiated.

* Disable GattClient features when using S110 SoftDevice. This is controlled
  by the pre-processor macros: MCU_NORDIC_16K_S110 or MCU_NORDIC_16K_S110.
2015-08-11 15:11:45 +01:00
Rohit Grover f69fd98508 version v0.4.6 2015-08-11 15:11:37 +01:00
Rohit Grover a763452453 depend on ble v0.4.6 because of addition of connHandle in gattClient callbacks param structs. 2015-08-11 14:56:27 +01:00
Rohit Grover 1da1aa8622 fix #39: have a single call to SOFTDEVICE_HANDLER_INIT() to remove duplication of BLE_EVT_BUFFER. 2015-08-11 14:42:53 +01:00
Rohit Grover c28d0eea88 fix #11. Remove include for missing header. 2015-08-11 14:35:20 +01:00
Rohit Grover 2c01109786 Merge pull request #38 from jpbrucker/s110_compat
Disable GattClient features when using S110 SoftDevice
2015-08-11 14:21:33 +01:00
Rohit Grover fff7623df3 Setup connHandle for most gattClient callbacks.
Merge branch 'jpbrucker-GattCB_conn_handle' into develop.
2015-08-11 14:11:18 +01:00
Rohit Grover 2d149d36fb Merge branch 'GattCB_conn_handle' of https://github.com/jpbrucker/nRF51822 into jpbrucker-GattCB_conn_handle 2015-08-11 14:08:07 +01:00
Jean-Philippe Brucker 3eabc779a0 Disable GattClient features when using S110 SoftDevice
S110 compatibility is already present, but this patch adds proper handling
of observer/central related features:
* Gap::startScan will return BLE_ERRROR_NOT_IMPLEMENTED (instead of
  PARAM_OUT_OF_RANGE)
* nRF5xGattClient uses the default GattClient implementation when S110 is
  in use. All if its methods return NOT_IMPLEMENTED.

Example: for an application that acts as both a central and a peripheral,
using S110 will make the ble.gap().startScan() call return
BLE_ERROR_NOT_IMPLEMENTED, and advertisement features will continue
running normally.
In addition, with GCC, this patch will free 344 bytes of RAM and 2504
bytes of flash.
2015-08-11 13:02:34 +01:00
Jean-Philippe Brucker 73147b41c2 Fill connection handle in Gatt callbacks parameters 2015-08-11 11:31:20 +01:00
Rohit Grover e699db6a54 nRFGattClient: move the allocation of the singleton to within the getInstance() method.
This saves memory when getInstance() isn't used.
2015-08-11 10:32:33 +01:00
Rohit Grover 2294f555d8 Release 0.4.5
=============

Enhancements
~~~~~~~~~~~~

* Renamed to GapAdvertisementParams::getIntervalInADVUnits() based on change in BLE API.
* Fix Gap::getAppearance() to checks for correct success code from sd_ble_gap_appearance_get().

Bugfixes
~~~~~~~~

none.
2015-08-10 15:16:08 +01:00
Rohit Grover ab1f76572e version v0.4.5 2015-08-10 15:15:53 +01:00
Rohit Grover dae7886be3 require ble-0.4.5 because of API changes 2015-08-10 15:15:29 +01:00
Rohit Grover 7e6bd9a4f9 https://github.com/ARMmbed/ble-nrf51822/pull/36
* renamed to GapAdvertisementParams::getIntervalInADVUnits()
* fix getAppearance() to checks for correct success code from sd_ble_gap_appearance_get().
2015-08-10 15:12:41 +01:00
Joshua Slater 8830c07558 getAppearance now checks for correct success code from sd_ble_gap_appearance_get 2015-08-10 15:11:33 +01:00
Rohit Grover bf25a5a4c4 rename to getIntervalInADVUnits() 2015-08-10 15:11:18 +01:00
Joshua Slater 781dcbdcfd changed getInterval to getIntervalInAdvUnits to support changes in GapAdvertisingParams.h 2015-08-10 15:08:51 +01:00
Rohit Grover fa0f12d376 version v0.4.4 2015-08-07 15:40:51 +01:00
Rohit Grover 330e3ba31f Release 0.4.4
=============

This is a minor release.

Enhancements
~~~~~~~~~~~~

* Minor changes to allow compatibility with S110 SDK headers. Had mostly to do
  with the role_t member in the event structure for BLE_GAP_EVT_CONNECTED.

* Select the clock source dynamically on SoftDevice initialization. This
  change will allow lots of applications to still run and provide FOTA, when
  the wrong Nordic platform is specified.

* Updated module.json because URL of the host repo has changed to
  "git@github.com:ARMmbed/ble-nRF51822.git".

Bugfixes
~~~~~~~~

none.
2015-08-07 15:39:18 +01:00
Rohit Grover db8e482c31 we now depend on ble v0.4.4 because of API changes 2015-08-07 15:38:54 +01:00
Rohit Grover 32f4698d56 URL of the host repo has changed to "git@github.com:ARMmbed/ble-nRF51822.git" 2015-08-07 15:30:58 +01:00
Rohit Grover 552a3b5d46 Merge pull request #34 from jslater8/develop
Changed Gap:: to GapAdvertisingParams:: because of change in BLE
2015-08-06 13:37:29 +01:00
Joshua Slater 110db4c514 Changed Gap:: to GapAdvertisingParams:: because of change in BLE 2015-08-06 10:50:53 +01:00
Rohit Grover 692d7e08e8 minor cosmetic change to the previous commit. 2015-08-05 12:47:41 +01:00
Rohit Grover 27cd45a37c Merge pull request #32 from jpbrucker/dynamic_clksrc
Select the clock source dynamically on SoftDevice initialisation
2015-08-05 12:35:28 +01:00
Jean-Philippe Brucker b22c2e826f Select the clock source dynamically on SoftDevice initialisation
Instead of relying on build macros to know which oscillator we're
supposedly using, check the value of LFCLKSRC register. This way, we can
trust mbed's init code to fallback on the internal clock if the user
specified a wrong target.
This change, along with the mbed patch that selects clock source
dynamically, will allow lots of application to still run and provide
FOTA, when the wrong Nordic platform is specified.

Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
2015-08-03 18:56:22 +01:00
Rohit Grover 71d6c4148f fix #29: add mention of version number to the version string. 2015-07-29 12:12:29 +01:00
Rohit Grover 6cdf4e12e0 fix #29: support getVersion for v8 of the softdevice. 2015-07-29 12:08:55 +01:00
Rohit Grover 723c701b95 Merge pull request #28 from jpbrucker/s110_compat
Add S110 SoftDevice compatibility
2015-07-24 12:44:36 +01:00
Jean-Philippe Brucker 20f4417724 Add SoftDevice s110 compatibility
This patch adds the ability to use the API with the s110 SoftDevice.
Only a minor change is needed so far, to support the absence of roles in
s110.
2015-07-22 11:29:25 +01:00
Jean-Philippe Brucker 34977aea1c Add S110 compatibility in S130 headers 2015-07-22 11:29:25 +01:00
Rohit Grover 7a425e10bf version v0.4.3 2015-07-22 10:20:35 +01:00
Rohit Grover ec744cbd62 Release 0.4.3
=============

This is a minor release.

Enhancements
~~~~~~~~~~~~

* Rename nRF51... to nRF5x... This prepares for the arrival of nRF52.
* Switch Github repository URL to ARMmbed organization.

* Add support to handle radio-notification callback as a FuncionPointer so that
  we can have <object, member> pairs for callbacks.

Bugfixes
~~~~~~~~

none.
2015-07-21 13:09:56 +01:00
Rohit Grover b55677ade1 Release 0.4.3
=============

This is a minor release.

Enhancements
~~~~~~~~~~~~

* Rename nRF51... to nRF5x... This prepares for the arrival of nRF52.
* Switch Github repository URL to ARMmbed organization.

* Add support to handle radio-notification callback as a FuncionPointer so that
  we can have <object, member> pairs for callbacks.

Bugfixes
~~~~~~~~

none.
2015-07-21 13:09:33 +01:00
Rohit Grover 553132b406 add support to handle radio-notification event as a FuncionPointer so that we can have <object, member> pairs for callbacks. 2015-07-21 11:34:36 +01:00
Rohit Grover 5ad392605f switch repository URL to ARMmbed organization. 2015-07-14 08:05:52 +01:00
Rohit Grover df2efa5adb white space diffs. 2015-07-13 07:51:07 +01:00
Rohit Grover 5f6e01aa24 Merge branch 'afernandes' into develop 2015-07-13 07:50:29 +01:00
Rohit Grover c0a8c6b544 Merge branch 'master' of https://github.com/adfernandes/nRF51822 into afernandes 2015-07-13 07:49:07 +01:00
Andrew Fernandes 2e68655044 nRF51ServiceDiscovery should be able to match short AND long UUIDs. 2015-07-11 15:07:00 -04:00