Optional modules

Optional modules are defined in App.cpp file.

DataLogger

Purpose: This module with Logbook can be used for saving data to the internal non-volatile storage (EEPROM).
Default value: false
Usage: See Android example Datalogger & Logbook example

OPTIONAL_CORE_MODULE(DataLogger, true)

Logbook

Purpose: This module with DataLogger is used to fetch the saved logs from the internal non-volatile storage (EEPROM).
Default value: false
Usage: See Android example Datalogger & Logbook example

OPTIONAL_CORE_MODULE(Logbook, true)

You can also change the default Logbook allocation on EEPROM:

LOGBOOK_MEMORY_AREA(offset, size);

LedService

Purpose: The module is used to control the LED states.
Default value: true
Usage: See /Component/Led{s} -API

OPTIONAL_CORE_MODULE(LedService, true)

IndicationService

Purpose: The module can be used for visual indications (blinking LED). The service supports currently continuous blinking and single flash modes.
Default value: true
Usage: see /Ui/Ind/Visual -API

OPTIONAL_CORE_MODULE(IndicationService, true)

BleService

Purpose: The module is used to control the BLE connectivity. It provides an API to change which can be used for example changing advertisment settings, take bonding into use and list connected peers.
Default value: true
Usage: See /Comm/Ble -API

OPTIONAL_CORE_MODULE(BleService, true)

EepromService

Purpose: The module can be used for direct EEPROM access. Default value: false
Usage: See /Component/Eeprom -API

OPTIONAL_CORE_MODULE(EepromService, true)

ManufacturingService

Purpose: Used during device manufacturing. Provides access to device information and factory calibration data. However the device information can be also read using /Info resources.
Default value: true
Usage: See /Misc/Manufacturing -API

OPTIONAL_CORE_MODULE(ManufacturingService, true)

BypassService

Purpose: Enables bypassing provider resources. Used for testing purposes.
Default value: false
Usage:

OPTIONAL_CORE_MODULE(BypassService, true)

SystemMemoryService

Purpose: Provides information on dynamic memory usage.
Default value: false
Usage: See /System/Memory -API

OPTIONAL_CORE_MODULE(SystemMemoryService, true)

DebugService

Purpose: DebugService provides access to diagnostic messages of the device.
Default value: false Usage: See /System/Debug -API.

OPTIONAL_CORE_MODULE(DebugService, true)

RAM buffering configuration

Configuration can be fine-tuned to optimize memory consumption.

DEBUGSERVICE_BUFFER_SIZE(6, 120)

EEPROM storage configuration

Non-volatile storage can be enabled to provide access to device diagnostics in case of system reset or no BLE connections.

DEBUG_EEPROM_MEMORY_AREA(true, 0, 2048)

BleStandardHRS

Purpose: This module enables standard BLE heart rate service profile.
Default value: false
Usage: The usage example can be found here

OPTIONAL_CORE_MODULE(BleStandardHRS, true)

BleNordicUART

Purpose: This module enables Nordic Semiconductor UART service profile.
Default value: false
Usage: The usage example can be found here

OPTIONAL_CORE_MODULE(BleStandardHRS, true)

CustomGattService

Purpose: This module enables defining own custom BLE GATT service.
Default: false
Usage: The usage example can be found here

OPTIONAL_CORE_MODULE(CustomGattService, true)