atbtlc1000 blusdk v5.0 release - microchip...
TRANSCRIPT
ATBTLC1000 BluSDK v5.0 Release
Release Notes
Description
This document details the release notes for ATBTLC1000 BluSDK v5.0.
ATBTLC1000 BluSDK v5.0 Release Notes 2
2
Table of Contents
1 BluSDK Software Architecture Overview ................................................................... 4
2 Supported Hardware Platforms and IDEs ................................................................ 5
3 BluSDK Release contents ........................................................................................... 6
3.1 BluSDK Firmware contents ................................................................................................................... 8
4 BluSDK Release features .......................................................................................... 11
5 Release Revision History .......................................................................................... 13
5.1 BluSDK v5.0 ........................................................................................................................................ 13
5.1.1 Major New Features ............................................................................................................... 13
5.1.2 Major improvements and bug fixes ......................................................................................... 13
5.2 BluSDK v4.0 ........................................................................................................................................ 13
5.2.1 Major New Features ............................................................................................................... 13
5.2.2 Major improvements and bug fixes ......................................................................................... 15
5.3 BluSDK v3.0 ........................................................................................................................................ 15
5.3.1 Major New Features ............................................................................................................... 15
5.4 BluSDK v2.3 ........................................................................................................................................ 16
5.4.1 Major New Features ............................................................................................................... 16
5.5 BluSDK v2.2 ........................................................................................................................................ 16
5.5.1 Major New Features ............................................................................................................... 16
5.5.2 Major improvements and bug fixes ......................................................................................... 16
5.6 BluSDK v2.1 ........................................................................................................................................ 16
5.6.1 Major New Features ............................................................................................................... 16
5.6.2 Major improvements and bug fixes ......................................................................................... 16
5.7 BluSDK v2.0 ........................................................................................................................................ 17
5.7.1 Major New Features ............................................................................................................... 17
5.7.2 Major improvements and bug fixes ......................................................................................... 17
5.8 Previous Release History - BluSDK v1.x ............................................................................................. 18
6 Known issues ............................................................................................................ 19
6.1 BluSDK Software................................................................................................................................. 19
6.2 Mobile Applications ............................................................................................................................. 19
7 Limitations ................................................................................................................. 20
7.1 BluSDK Software................................................................................................................................. 20
7.2 Mobile Applications ............................................................................................................................. 20
8 Additional Information/Pre-requisites ...................................................................... 22
9 Power save measure settings ................................................................................... 23
9.1 Hardware Setup .................................................................................................................................. 23
1. Board Wiring ........................................................................................................................... 23
2. Connection ............................................................................................................................. 24
3. Trouble shooting (optionally) .................................................................................................. 24
9.2 Power measure with Data Visualizer ................................................................................................... 25
9.3 Average Advertisement Current .......................................................................................................... 25
10 Annexure -1 - Atmel BluSDK Change Log ............................................................... 25
10.1 BluSDK Module Changes .................................................................................................................... 26
Atmel BluSDK v5.0 Release Notes 3
3
Table 10-1. New features in the APIs ..................................................................................... 26
10.2 BLE Library API – New Features ........................................................................................................ 29
Table 10-2. New features in the APIs ..................................................................................... 29
10.3 Differences between Atmel BLE APIs - BluSDK 5.0 vs BluSDK 4.0 ................................................... 29
Table 10-3. Modified APIs .................................................................................................... 29
Table 10-4. Modified Structures............................................................................................ 29
11 Annexure -2 - Hardware UART Flow Control Settings ............................................ 30
11.1 BTLC1000 Hardware Flow control 4-Wire Mode E-Fuse Write Procedure.......................................... 32
12 Annexure -3 - ASF installation instructions for AS 7.0 ........................................... 35
12.1 Installation Steps for VSIX File ............................................................................................................ 35
13 ATMEL EVALUATION BOARD/KIT IMPORTANT NOTICE AND DISCLAIMER ........ 38
ATBTLC1000 BluSDK v5.0 Release Notes 4
4
1 BluSDK Software Architecture Overview
Atmel BluSDK v5.0 Release Notes 5
5
2 Supported Hardware Platforms and IDEs
BluSDK – supported hardware and IDEs
Platform MCU Supported BLE
device Supported evaluation kits Supported IDEs
SAM L21 (MCU) ATSAML21J18B ATBTLC1000 ATBTLC1000-XSTK
(ATSAML21-XPRO-B + ATBTLC1000
XPRO)
Atmel Studio v7.0
IAR Embedded
Workbench for ARM
7.40.5*
SAM L21 (MCU) ATSAML21J18A ATBTLC1000 ATSAML21 XPRO + ATBTLC1000
XPRO
Atmel Studio v7.0
IAR Embedded
Workbench for ARM
7.40.3.8938 or above
SAM D21 (MCU) ATSAMD21J18A ATBTLC1000 ATSAMD21-XPRO + ATBTLC1000
XPRO
Atmel Studio v7.0
IAR Embedded
Workbench for ARM
7.40.3.8938 or above
SAM G55 (MCU) ATSAMG55J19 ATBTLC1000 ATSAMG55-XPRO + ATBTLC1000
XPRO
Atmel Studio v7.0
IAR Embedded
Workbench for ARM
7.40.3.8938 or above
SAM 4S (MCU) ATSAM4SD32C ATBTLC1000 ATSAM4S-XPRO + ATBTLC1000 XPRO Atmel Studio v7.0
IAR Embedded
Workbench for ARM
7.40.3.8938 or above
* Support for ATSAML21J18B (SAML21 Rev B) device has been added in IAR for ARM version 7.40.5
ATBTLC1000 BluSDK v5.0 Release Notes 6
6
3 BluSDK Release contents
Folder Name Description
Documentation
Atmel Adapter Layer API Documentation
HW Design Guide
Software Development Guide
Platform Porting Guide
BLE Example Application Getting Started Guide - Includes Getting started guides for
following example application
1. Proximity Monitor Profile Example(pxp_monitor)
2. Proximity Reporter Profile Example(pxp_reporter)
3. Apple Notification Centre Service Example(ancs)
4. Battery Service Example(battery_info)
5. Observer Example(ble_observer)
6. Device Information Service Example(device_info)
7. Health Thermometer Profile Example(htpt_temperature_sensor)
8. Time Information Profile Example(time_information)
9. Scan Parameter Example(scan_parameter)
10. Simple Broadcaster Example(simple_broadcaster)
11. Simple BLE Connection Example(simple_btlc1000_connection)
12. HID Keyboard Example(hid_device_keyboard)
13. HID Mouse Example(hid_mouse_keyboard)
14. DTM Application Example(ble_dtm)
15. Alert Notification Profile Example(alert_notification)
16. Blood Pressure Profile Example(blood_pressure)
17. Custom Profile Example(custom_serial_chat)
18. Find me Profile Example(find_me)
19. Heart Rate Profile Example(hr_sensor)
20. Phone Alert Status Profile Exmaple(phone_alert_status)
21. BLE Startup Template(startup_template)
22. Multi Role Multi Connect Example(multi_role_multi_connect)
Atmel BluSDK v5.0 Release Notes 7
7
Folder Name Description
Firmware
Example BLE Apps, BLE Profiles, BLE Services are fully integrated in ASF.
For Atmel Studio:
Download ASF update v3.30 or higher from Atmel Gallery. Refer to Annexure -3 -
ASF installation instructions for AS 7.0
For standalone version of ASF package for GCC & IAR:
1. Download Package: BluSDK5.0 standalone package from (version 3.30 or
higher) http://www.atmel.com/tools/avrsoftwareframework.aspx
2. Extract package Downloaded standalone archive
3. On extraction of ASF standalone archive the BluSDK SW components can
be found under: \thirdparty\wireless\ble_sdk
Mobile
Application
Contains the following mobile applications:
- Atmel SmartConnect Android application can be downloaded from the following
URL:[https://play.google.com/store/apps/details?id=com.atmel.bleanalyser&hl=
en]
- Atmel Beacon Radar Android application
- Atmel SmartConnect iOS application can be downloaded from the following
URL:[ https://itunes.apple.com/us/app/atmel-smart-
connect/id1041425299?ls=1&mt=8 ]
- Atmel Beacon Radar iOS application can be downloaded from the following
URL: [ https://itunes.apple.com/us/app/atmel-beacon-radar/id989086488?mt=8 ]
PC
Application
Wireless Composer [BLE Performance Analyzer]
BTLC1000 EFuse Block Program [Programming BTLC1000 eFuse]
DTM Tool
ATBTLC1000 BluSDK v5.0 Release Notes 8
8
3.1 BluSDK Firmware contents
BluSDK firmware builds and runs on a MCU host (supported platform). This ASF VSIX Installer has the
following structure (accessible from ASF Wizard). The Getting Started guide for each profile example provide
more information on how to find the example project using the ASF Example Project Wizard, build, flash and
execute the software.
Folder Name Description
apps
BLE Example Application Profiles and Services
Contains following example Applications
1. Proximity Monitor Profile Example(pxp_monitor)
2. Proximity Reporter Profile Example(pxp_reporter)
3. Apple Notification Centre Service Example(ancs)
4. Battery Service Example(battery_info)
5. Observer Example(ble_observer)
6. Device Information Service Example(device_info)
7. Health Thermometer Profile Example(htpt_temperature_sensor)
8. Time Information Profile Example(time_information)
9. Scan Parameter Example(scan_parameter)
10. Simple Broadcaster Example(simple_broadcaster)
11. Simple BLE Connection Example(simple_btlc1000_connection)
12. HID Keyboard Example(hid_device_keyboard)
13. HID Mouse Example(hid_mouse_keyboard)
14. DTM Application Example(ble_dtm)
15. Alert Notification Profile Example(alert_notification)
16. Blood Pressure Profile Example(blood_pressure)
17. Custom Profile Example(custom_serial_chat)
18. Find me Profile Example(find_me)
19. Heart Rate Profile Example(hr_sensor)
20. Phone Alert Status Profile Exmaple(phone_alert_status)
21. BLE Startup Template(startup_template)
22. Multi Role Multi Connect Example(multi_role_multi_connect)
Atmel BluSDK v5.0 Release Notes 9
9
Folder Name Description
ble_profiles
Contains the following BLE Profiles.
- Alert Notification
- ANCS
- Proximity Monitor
- Proximity Reporter
- Time Information
- HID over GATT profile (HOGP)
- Phone Alert Status
- Blood Pressure
- Heart Rate
- Find me
- Custom Serial Chat
ble_services
Contains the BLE Services.
- Alert Notification Service
- BLE Manager-Common BLE Event Frame Work
- Apple Alert Notification Service (ANCS)
- Battery Service (BAS)
- Current Time Service(CTS)
- Device Information Service (DIS)
- Immediate Alert Service (IAS)
- Link Loss Service (LLS)
- Scan Parameter Service (SPS)
- Tx Power Service (TXPS)
- HID Device (HOGP Service)
- Blood Pressure
- Custom Serial Chat Service
- Heart Rate Service
- Next DST Service
- Phone Alert Service
- Reference Time Service
Inc Top level includes for the delivered libraries, and Platform API’s
Lib IAR and GCC compiler based Adaptor Library for Cortex M0+ and Cortex
M4 MCU’s
ATBTLC1000 BluSDK v5.0 Release Notes 1
0
10
Folder Name Description
services Application level services and Platform level - console, serial driver,
serial_fifo, timer, serial bridge
src Platform abstraction implementation for Atmel BLE Adapter Library
utils Utility functions used by BluSDK components (Eg: DBG_LOG,
DBG_LOG_DEV etc..)
Atmel BluSDK v5.0 Release Notes 1
1
11
4 BluSDK Release features
BluSDK 5.0 release supports the following profiles and services.
Profiles
o Alert Notification
o Apple Alert Notification Center Service
o Blood Pressure
o Custom Serial Chat
o Find Me Target
o Heart Rate
o HOGP (HID Over GATT Profile)
o Health Thermometer
o Phone Alert Status
o Scan Parameters
o Time Information
Services Support
o Alert Notification Service
o BLE Manager-Common BLE Event framework
o Apple Alert Notification Service (ANCS)
o Battery Service (BAS)
o Current Time Service(CTS)
o Device Information Service (DIS)
o Immediate Alert Service (IAS)
o Link Loss Service (LLS)
o Scan Parameter Service (SPS)
o Tx Power Service (TXPS)
o HID Device (HOGP Service)
o Blood Pressure
o Custom Serial Chat Service
o Heart Rate Service
o Next DST Service
o Phone Alert Service
o Reference Time Service
Mobile Applications:
o Atmel SmartConnect Mobile Application for Android:
Health Thermometer
Proximity Monitor
Blood Pressure
ATBTLC1000 BluSDK v5.0 Release Notes 1
2
12
Alert Notification
Time Information
Scan Parameters
Find Me
Heart Rate
Battery
Device Information Service
o Atmel SmartConnect Mobile Application for iOS
Health Thermometer
Proximity Monitor
Blood Pressure
Scan Parameters
Find Me
Heart Rate
Battery
Device Information Service
o Atmel Beacon Radar (Android and iOS)
Example applications are provided for the profile/services mentioned above and are available for Atmel
SAML21/SAML21 Rev B/SAMG55/SAMD21/SAM4S MCU platforms.
Atmel BluSDK v5.0 Release Notes 1
3
13
5 Release Revision History
5.1 BluSDK v5.0
5.1.1 Major New Features
BluSDK Software:
1. Added support for SAM4S Platform.
2. Added support for periodic temperature and voltage calibration for every 2 seconds.
3. Added Tx-Fm calibration on cold-boot.
4. Added one time 26MHz RC calibration to enable injection locking.
5. Added 3 new APIs for Calibration:
a. - at_ble_calib_config()
b. - at_ble_calib_get_temp()
c. - at_ble_calib_get_voltage()
6. Changed Hardware Flowcontrol compilation flag selection during runtime.
7. Platform modularization to make the Library as an independent module.
8. Added support for wireless composer – BLE Performance Analyzer in Atmel Studio 7.0 wherein
DTM Tx Power set and CW Tone has been incorporated
5.1.2 Major improvements and bug fixes
1. UART FLOW CONTROL 2-Wire Mode has been removed, due to instability between Host and
BTLC1000 communication.
2. Fixed issue for Encryption without MITM (No Authentication and No Authorization) and insufficient
key permissions.
3. Fixed 6-Wiremode UART Initialization issue on SAMG55 serial_drv.c
4. Storing the LTK of peer device for encryption.
5. DTM instability issue fixed.
6. Mobile Application: Atmel SmartConnect for Android:
a. Bug fixes in Scan Param profile and battery service
b. Support for tablets that do not have android.hardware.TELEPHONY feature.
5.2 BluSDK v4.0
5.2.1 Major New Features
BluSDK Software:
1. Support for Features like Multi-Role/Multi-Connect to maintain both central and peripheral role
simultaneously and multiple connections for various applications.
2. Support for Wireless Composer – BLE Performance Analyzer in Atmel Studio 7.0
3. Support for configurable UART FLOW CONTROL modes like 6_WIRE (for 2 stage UART
communication for FLOW CONTROL support), 4_WIRE (single UART with FLOW CONTROL) and
NO FLOW CONTROL.
ATBTLC1000 BluSDK v5.0 Release Notes 1
4
14
Mobile Application:
1. Enhanced: Atmel SmartConnect (Version 2.0) tablet application for iOS and Android
Atmel Adapter Library:
1. Added support for ULP (Ultra Low Power)
2. Support for configurable UART HARDWARE FLOW CONTROL for BTLC1000
Important Note: 1. This SDK package is only compatible with the revised ATBTLC1000 XPRO extension boards. The revised
boards can be identified with a green dot on the front and a yellow wire on the back (as shown in below picture). The revised boards have the CHIP_ENABLE pin re-mapped to allow use UART flow control on the extension header.
2. For example projects/apps using SAML21, please make sure to plug the ATBTLC1000 XPRO extension board to EXT1 only.
Atmel BluSDK v5.0 Release Notes 1
5
15
5.2.2 Major improvements and bug fixes
1. GAP advertisement has been moved from all profiles/services/application to ”ble_manager”.
2. Generic BLE event handling call back mechanism.
5.3 BluSDK v3.0
5.3.1 Major New Features
BluSDK Software:
1. Support for new profiles Blood Pressure, Heart Rate Monitor, Phone Alert Status, Time
Information, Custom Serial Chat, Find Me, and Alert Notification on SAML21/SAMD21/SAMG55
Platforms.
2. Support for new services Alert Notification, Blood Pressure, Custom Serial Chat, Current Time,
Heart Rate, Next Daylight Saving Time, Phone Alert, and Reference Time on SAML21/SAML21
Rev B/SAMD21/SAMG55 Platforms.
3. Support for Wireless Composer – BLE Performance Analyzer
4. BLE Startup Template example
Mobile Application
1. Enhanced: Atmel SmartConnect mobile application for iOS and Android
Atmel Adapter Library:
1. Enhanced: New version of adapter library upgraded and compatible to ATBTLC1000 RevB1
running a BLE 4.1 stack (Refer to Annexure for more details)
Documentation:
1. Updated Atmel BLE API Reference Manual
2. Updated Atmel BLE API Software Development User Guide
3. Updated Atmel BLE Platform Porting Guide
4. Enhanced Getting Started User Guide documents for each example application
Important Note:
1. Is recommended to use ATBTLC1000 XPRO extension board delivered with the starter kit (ATBTLC1000-XSTK) for running the example applications delivered as part of the SDK.
2. User must plug the ATBTLC1000 XPRO extension in EXT2 of SAML21 Xplained Pro.
ATBTLC1000 BluSDK v5.0 Release Notes 1
6
16
5.4 BluSDK v2.3
5.4.1 Major New Features
BluSDK Software:
4. Support for Direct Test Mode on SAML21/SAMD21/SAMG55 Platforms
Important Note:
3. It is recommended to use BTLC1000 XPRO extension board delivered with the starter kit for running the example applications delivered as part of the SDK.
4. User must plug the BTLC1000 XPRO extension in EXT2 of SAML21.
5.5 BluSDK v2.2
5.5.1 Major New Features
BluSDK Software:
5. Support for Atmel BTLC1000 - XSTK (Starter Kit)
a. Addition of support SAML21 MCU platform
Important Note:
5. It is recommended to use BTLC1000 XPRO extension board delivered with the starter kit for running the example applications delivered as part of the SDK.
6. User must plug the BTLC1000 XPRO extension in EXT2 of SAML21.
5.5.2 Major improvements and bug fixes
1. Documentation update: Applicable to all ‘Getting Started’ documentation – adding setup
information and details for using BTLC1000/SAML21 starter kit
5.6 BluSDK v2.1
5.6.1 Major New Features
BluSDK Software:
1. HID Keyboard Example Application
2. HID Mouse Example Application
5.6.2 Major improvements and bug fixes
1. Adaptor Library adds support for report reference descriptor(refer structure: at_ble_characteristic_gen_t)
i. Descriptor value set API added(refer API: at_ble_descriptor_value_set)
ii. Descriptor value get API added(refer API: at_ble_descriptor_value_get)
iii. New data structure added to hold the descriptor and presentation format.
2. Added new adaptor API for common service definition of both primary and secondary service.(refer API:
at_ble_service_define)
Atmel BluSDK v5.0 Release Notes 1
7
17
5.7 BluSDK v2.0
5.7.1 Major New Features
BluSDK Software:
1. ANCS Profile Example Application
2. Time Profile Example Application
3. Proximity Monitor Example Application
4. Proximity Reporter Example Application
5. Observer Mode Example Application
6. Broadcaster Mode Example Application
7. Battery Service Example Application
8. Scan Parameter Service Example Application
9. Device Information Service Example Application
10. BLE Manager – Common event handling support
11. BLE – Services and Profiles are converted as pluggable components
Mobile Application:
1. New: Atmel SmartBLU iOS Application supporting Proximity Monitor
2. New: Atmel SmartBLU Android Application supporting:
i. HTPT Profile
ii. Proximity Monitor
5.7.2 Major improvements and bug fixes
HTPT Disable and Enable Notification for temperature send support added to HTP application
ATBTLC1000 BluSDK v5.0 Release Notes 1
8
18
5.8 Previous Release History - BluSDK v1.x
Fix/Update Description
BluSDK v1.3 Release
1. Health Thermometer Profile
example using BTLC1000
board and IO1 Sensor board on
both SAMD21 and SAMG55
2. Simple BTLC1000
Connection example which
advertises iBeacon data on
both SAMD21 and SAMG55
3. Adds support for BTLC1000
A5 devices (ES2)
Major new features:
* [BLUSDK-17] - Support added for BTLC1000 A5 (ES2) and
BTLC1000 A3 (ES1) devices in a single Library
* [BLUSDK-5] - BTLC1000 not able to recover during power on
* [BLUSDK-27] - IAR Support for HTP BluSDK [Note: this feature
will ONLY be available as part of standalone ASF public release]
* [BLUSDK-28] - Support Atmel Studio 7.0
* [BLUSDK-29] - Serial buffer mechanism between BTLC1000 and
Host
* [BLUSDK-30] - Floating point conversion from IEEE754 to
IEEE11073 for precision temperature measurement
Major improvements and bug fixes:
* [BLUSDK-24] - Addresses disconnection issue after pairing fails
in HTP
* [BLUSDK-31] - Delay utility for initialization
* [BLUSDK-32] - Random temperature type and temperature
measurement location change during button press
* [BLUSDK-33] - BTLC1000 chip id version display in console
* [BLUSDK-34] - BTLC1000 BD Address display in console
BluSDK v1.2 Release
BUG Fix: D21 Clock Drift Issue
with respect to temperature
Major improvements and bug fixes:
* [BLUSDK-4] - D21 Clock Drift Issue with respect to temperature
Atmel BluSDK v5.0 Release Notes 1
9
19
6 Known issues
6.1 BluSDK Software
JIRA ID Description
BLUSDK-662 Multi-role: Upon incorrect pass-key, PXP-M could not able to reconnect.
BLUSDK-676 After re-connection HTP stops sending notifications to android Application.
BLUSDK-612 Sometimes reconnection fails in ANCS.
BLUSDK-543 Sometimes PXP-M takes multiple attempts to reconnect.
BluSDK5.0 supports only with UART HARDWARE FLOW CONTROL (4-Wire/6-Wiire) in
SAML21/SAMD21/SAMG55/SAM4S platforms.
6.2 Mobile Applications
JIRA ID Description
BLEMAPPS-9 Bluetooth turn off during scan, the scan progress bar shows that scanning is in-
progress.
BLEMAPPS-25 When device goes out of range and reconnect, ANP mobile application is not sending
the alerts to client.
ATBTLC1000 BluSDK v5.0 Release Notes 2
0
20
7 Limitations
7.1 BluSDK Software
1. Adapter Layer & Platform:
a. Adapter library requires enhancements to make it RTOS compatible and Thread-safe
b. SPI interface is not yet supported
2. Profiles:
a. HOGP – HID
i. HID Keyboard device example application and HID Mouse device example application are
compatible only with Android based mobile devices (Android 4.4/KitKat and higher versions).
ii. HID Keyboard device example application supports only Just Works pairing
b. Multi-Role/Multi-connect
i. Multi-connect: Number of simultaneous connections is limited to two (example application
limitation only)
ii. Both Scan and Advertisement can’t be performed simultaneously.
iii. Battery does not simulate more than one value when PXP-M and PXP-R is disconnected
c. PTS Compliance:
i. PTS compliance has not yet been achieved for the profile examples.
ii. ANCS & TIP are Apple iOS specific implementations and PTS test cannot be executed for BT
SIG profile specification compliance.
3. Standalone ASF archive
a. In Windows OS the maximum path length will be 260 characters. It’s always recommended to extract
the standalone ASF archive into root directory of the Local drive. Example C:\ASF\(Extract the
Standalone ASF archive here)
7.2 Mobile Applications
1. Atmel SmartConnect Android Application
a. Common
i. When app is minimized and notifications sent from the device are not received
(background operation of application is not supported)
ii. Atmel SmartConnect Android application is currently not supported for Marshmallow
iii. Android Framework limitations
1. When mobile is already in vibration state, the alert read status sent from the App
shows vibrate status as inactive
2. When wrong pass-key is entered, pairing still succeeds
b. Phone Alert: Display state is not supported
c. Custom Serial Chat:
i. Android-4.4.4 (KitKat): Can support only upto 20 characters
ii. Android-5.x: (Lollipop): Can support upto 150 characters
Atmel BluSDK v5.0 Release Notes 2
1
21
iii. iOS: Can support upto 150 characters
iv. Android/iOS: Will not receive the data, if security is been disabled
2. Atmel SmartConnect iOS Application
a. When app is minimized and notifications sent from the device are not received (background
operation of application is not supported)
3. Atmel Beacon Radar (Android)
a. When the device is moved, the beacon icon updates are as fast as the movement pace.
ATBTLC1000 BluSDK v5.0 Release Notes 2
2
22
8 Additional Information/Pre-requisites
1. It is recommended to use the BTLC1000 XPRO extension boards provided as part of the BTLC1000 X-
STK (Starter Kit)
2. To test ANCS and Time Profile, an iPhone supporting iOS version above 7.0 is required
3. General information with reference to BLE support on mobile devices:
a. iOS:
i. iPhone 4S and above support BT 4.0 and higher. It is recommended to use a device with
iOS version 8.0 or above for best performance and stability
b. Android:
i. Preliminary support for BT 4.0 was added in Android Jellybean (4.2 onwards)
ii. For best performance and stability, it is recommended to use a device with Android version
above 4.4 (i.e. preferably Kit-Kat or Lollipop)
iii. Due to a wide-spectrum of Android devices with many variants (customized Android
devices, various hardware/connectivity chipset configurations) – performance of the BLE
Application may not be the same on all devices. Android phone that include a Bluetooth
chipset supporting version 4.0 or higher is a pre-requisite.
iv. Due to evolving nature of BLE APIs in Android, performance/stability variations may be
observed when testing with different Android release flavor’s (Jellybean/4.3, KitKat/4.4 and
Lollipop/5.1)
v. HID over GATT profile was introduced in Android from version 4.4 (KitKat). A mobile
device supporting Android 4.4 and higher is a pre-requisite for running the HID Keyboard
device and HID Mouse device example applications.
vi. Disconnection triggered by application running in Android taking a long time (12 ~ 15
seconds) to complete.
vii. Nexus6/Stock Android version: Following issues have been observed
1. When peripheral device is reset, Android still shows this as a connected requiring
manual un-pair.
Atmel BluSDK v5.0 Release Notes 2
3
23
9 Power save measure settings
9.1 Hardware Setup
1. Board Wiring
Wire the setup as shown below (Jumper needs to be connected to ‘Bypass‘ to measure only for BTLC1000).
ATBTLC1000 BluSDK v5.0 Release Notes 2
4
24
2. Connection
o Connect the DEBUG-USB jack with a micro-USB cable to the PC
o Remember the COM port
o Open Atmel Studio 7.0
3. Trouble shooting (optionally)
o Sometimes the upgrade of the EDBG Firmware fails
o In this kind of situations command line could be last rescue:
Atmel BluSDK v5.0 Release Notes 2
5
25
9.2 Power measure with Data Visualizer
o In Menu bar select Tools DataVisualizer
o Press “Connect” (1)
o Checkmark “Power” (2)
o Press “Start” (3)
o The “Power Analysis” window opens (4)
Note: Data Visualizer runs well in Standalone mode
9.3 Average Advertisement Current
o Initially the example advertises for every 1sec interval rather than 62.5ms with ~250µA
o Advertisement interval can be changed by using “BECON_ADV_INTERVAL”
o Verify the average advertisement current in Power Analysis window
o Auto calibration should be disabled (continuous calibration will consume more power) and advertisement type
should be set to AT_BLE_ADV_TYPE_NONCONN_UNDIRECTED.
10 Annexure -1 - Atmel BluSDK Change Log
BluSDK v5.0 release includes an enhanced version of BLE API compatible with ATBTLC1000 RevB1 devices,
a BLE 4.1 compliant device. This section provides details of the new features introduced in the API and a
change comparison with the previous version of the API (which was BLE 4.0 compliant) and also Hardware
PIN changes to support UART HARDWARE FLOW CONTROL.
ATBTLC1000 BluSDK v5.0 Release Notes 2
6
26
10.1 BluSDK Module Changes
Table 10-1. New features in the APIs
Modified APIs
Category S.No Description Old signature New signature
Ble-Manager 1 6-Wire Mode Flowcon-
trol Enable/Disable
and initialization
configurations are
handled. 4-Wire Mode
flag must be set to
pf_cfg.bus_info.bus_
flow_control_enabled
= false, 6-Wire mode
the Flag must be set
to true.
void ble_de-
vice_init(at_ble_add
r_t *addr)
void ble_de-
vice_init(at_ble_addr
_t *addr)
2 Platform API’s are
registered as part
of the at_ble_init.
Platform_init will
be called from
ble_device_init
function.
void ble_de-
vice_init(at_ble_add
r_t *addr)
void ble_de-
vice_init(at_ble_addr
_t *addr)
1
platform 1 Platform initializa-
tion supports bus
type can have flow
control Enable/Disa-
ble option
at_ble_status_t
platform_init(void*
platform_params)
at_ble_status_t plat-
form_init(uint8_t
bus_type, uint8_t
bus_flow_control_ena-
bled)
2 sends a message over
the platform-spe-
cific bus and blocks
until Tx Completes
at_ble_status_t
platform_inter-
face_send(uint8_t
if_type, uint8_t
*data, uint32_t
len);
void plat-
form_send_sync(uint8_
t *data, uint32_t
len)
3 Platform receive a
message over the
platform-specific
bus
int platform_inter-
face_recv(uint8_t
if_type, uint8_t*
data, uint32_t len)
void plat-
form_recv_async(void
(*recv_async_callback
)(uint8_t))
4 sends wakeup signal
over platform-spe-
cific bus
int platform_inter-
face_send_wakeup(voi
d)
Removed – Not appli-
cable
5 The callback to up-
per layers to pro-
cess received pack-
ets
void platform_inter-
face_callback(uint8_
t* data, uint32_t
len)
Removed – Not appli-
cable
7 fires when the co-
mand-complete signal
void plat-
form_cmd_cmpl_sig-
nal(void)
Removed – Not appli-
cable
Atmel BluSDK v5.0 Release Notes 2
7
27
8 The callback func-
tion used when patch
download is going
on.
void fw_patch_down-
load_cb(uint8_t
*pu8data, uint8_t
length)
Removed – Not appli-
cable
9 blocks until the
command-complete
signal is fired
void plat-
form_cmd_cmpl_wait(b
ool* timeout)
Removed – Not appli-
cable
10 fires the event sig-
nal
void plat-
form_event_sig-
nal(void)
Removed – Not appli-
cable
11 blocks until the
event signal is
fired
at_ble_status_t
plat-
form_event_wait(uint
32_t timeout)
Removed – Not appli-
cable
12 Chip Enable and
wakeup pin functions
are set/clear by
this functions
Not available void plat-
form_gpio_set(at_ble_
gpio_pin_t pin,
at_ble_gpio_status_t
status)
13 Initialize the hard-
ware timer
Not available void *platform_cre-
ate_timer(void
(*timer_cb)(void *));
14 Reset the Hardware
timer which is al-
ready initialized
Not available void platform_de-
lete_timer(void
*timer_handle);
15 Stop the Hardware
timer which is al-
ready running
Not available void plat-
form_stop_timer(void
*timer_handle);
16 Start the Hardware
timer which is al-
ready initialized
with specified time
Not available void plat-
form_start_timer(void
*timer_handle,
uint32_t ms);
Sam0/se-rial_drv.c
1 API Removed platform_config-
ure_timer
Removed – Not appli-
cable
Timer_hw.h 2 API Removed Plat-
form_start_bus_timer
Removed – Not appli-
cable
3 API Removed Plat-
form_stop_bus_timer
Removed – Not appli-
cable
4 API Removed platform_re-
set_bus_timer
Removed – Not appli-
cable
ATBTLC1000 BluSDK v5.0 Release Notes 2
8
28
New APIs and modified
Category S.No Description API
Alert Notification profile
1 at_ble_connected_t which con-sists of connection handle and noti-fies to profile when connected.
at_ble_status_t anp_info_con-
nect_handler(void *params)
2 Callback for Alert Notification service discover function
at_ble_status_t anp_info_ser-
vice_discover(void *params)
HR Sensor Pro-file
1 NEW API hr_sensor_char_write_re-quest handles the write request for heart rate control point characteristic
at_ble_status_t hr_sen-
sor_char_write_request(void *
params)
Platform.h 1 Chip Enable and wakeup pin
functions are set/clear by
this functions
void plat-
form_gpio_set(at_ble_gpio_pin_t
pin, at_ble_gpio_status_t status)
2 Initialize the hardware
timer
void *platform_create_timer(void
(*timer_cb)(void *));
3 Reset the Hardware timer
which is already initialized
void platform_delete_timer(void
*timer_handle);
4 Stop the Hardware timer
which is already running
void platform_stop_timer(void
*timer_handle);
5 Start the Hardware timer
which is already initialized
with specified time
void platform_start_timer(void
*timer_handle, uint32_t ms);
Data structures
Cate-gory
Description Status Structure Name
Ble-Man-ager
Added new Host LTK struc-ture to store the Host infor-mation
Modified ble_connected_dev_info_t
Atmel BluSDK v5.0 Release Notes 2
9
29
10.2 BLE Library API – New Features
BluSDK v5.0 release includes an enhanced version of BLE API compatible with ATBTLC1000 RevB1 devices,
a BLE 4.1 compliant device. This section provides details of the new features introduced in the API and a
change comparison with the previous version of the API
Table 10-2. New features in the APIs
Category New features Description API/Event
GAP & Device Init APIs
Device initialization and configuration
Provision to register the platform API’s. Provision to enable or disable the 6-Wire mode
at_ble_init
Calibration Auto Calibration
Configuration
Configures periodic Vbat/Vtemp calibration: enable/disable, number of ADC samples needed for averag-ing, frequency of the calibration in seconds
at_ble_calib_config
Read Temperature Retrieves temperature value in Cel-sius
at_ble_calib_get_temp
Read Voltage Retrieves voltage value in volts at_ble_calib_get_voltage
10.3 Differences between Atmel BLE APIs - BluSDK 5.0 vs BluSDK 4.0
Table 10-3. Modified APIs
Category Feature Old signature New signature
System Ini-tialization
Memory and plat-form initialization
at_ble_status_t
at_ble_init(void* args)
at_ble_status_t
at_ble_init(at_ble_init_config_t*
args)
Table 10-4. Modified Structures
Category New features Status Structure Name
System Ini-tialization
platform callback register New at_ble_platform_api_list_t
GAP Structures
Bus information New at_ble_bus_info_t
Init Configuration Modified at_ble_init_config_t
Status of disconnected peer
Modified at_ble_disconnected_t
ATBTLC1000 BluSDK v5.0 Release Notes 3
0
30
11 Annexure -2 - Hardware UART Flow Control Settings
1. Project Settings
a. Go to below path and set the configurations
Project Settings Properties Toolchain ARM/GNU C Compiler Symbols
S.No FLOW CONTROL Mode Description
1 UART_FLOWCONTROL_4WIRE_MODE = true
UART_FLOWCONTROL_6WIRE_MODE = false
Only ONE UART will be used for both patch
download and UART data transmission by
using FLOWCONTROL. To Test this mode E-
Fuse must be set, Use the GUI to write
eFuse5, Offset 0xc to 0x10000000
2 UART_FLOWCONTROL_4WIRE_MODE = false
UART_FLOWCONTROL_6WIRE_MODE = true
TWO UARTs will be used one for patch
download and another one for UART data
transmission with FLOWCONTROL
3 UART_FLOWCONTROL_4WIRE_MODE = false
UART_FLOWCONTROL_6WIRE_MODE = false
Not supported and not recommended for
production.
4 UART_FLOWCONTROL_4WIRE_MODE = true
UART_FLOWCONTROL_6WIRE_MODE = true
INVALID OPTION
Note:
In case of BluSDK or supplied BluSDK BLE-Manager is not used, the below settings are
required for at_ble_init API. This parameters are passed as arguments to at_ble_init. The args
contains at_ble_init_config_t and platform_config structures. This structures needs to be properly
initialized and passed to at_ble_init API. If incorrect configuration may lead to downloading the wrong
patch into BTLC1000. Which leads to UART will not work properly.
Attribute data base memory
pf_cfg.memPool.memSize = BLE_ATT_DB_MEMORY_SIZE;
pf_cfg.memPool.memStartAdd = (uint8_t *)&att_db_data;
/* Bus configuration details */
The Host MCU and BTLC1000 UART communication will happen via UART BUS. This needs to be
specified.
busConfig.bus_type = AT_BLE_UART;
busConfig.bus_info = 0; /* Bus Info Not used */
To Disable the Hardware Flow Control on BTLC1000. This options will disable the patch download and
only use the primary UART. If the BTLC1000 primary UART is either it can be eFused to enable the
Hardware flow control or without Hardware flow control with 2-Wire Mode.
Atmel BluSDK v5.0 Release Notes 3
1
31
busConfig.bus_flow_control_enabled = false; // Disable flow control
To Enable the Hardware Flow Control on BTLC1000. This mode will enable the additional UART to
enable the Flow Control option on BTLC1000. It’s similar to 6-Wire Mode.
busConfig.bus_flow_control_enabled = true; // Enable flow control
Refer supplied: AT_BLE_API_USER_MANUAL.chm for more information
2. Hardware Configurations
a. L21 Extension header has been changed from EXT2 to EXT1 with Chip_Enable PIN modification
from PIN-10 to PIN-4
b. In case of G55, loose wires needs to be connected to support UART HARDWARE FLOW
CONTROL and also efuse settings needs be modified as specified below.
Below table specify SAMG55 4-Wire Mode UART FLOWCONTROL connection details
SAMG55 XPro (EXT1 header) BTLC1000 XPro Header
Wakeup(EXT1-PIN4) Connects to => PIN6
Chip Enable (EXT1-PIN10) Connects to => PIN10
MCU Rx(EXT1-PIN13) Connects to => PIN13
MCU Tx(EXT1-PIN14) Connects to => PIN14
MCU RTS(EXT1-PIN5) Connects to => PIN11
MCU CTS(EXT1-PIN6) Connects to => PIN12
GND-EXT1-PIN19 Connects to => PIN19
VCC-EXT1-PIN20 Connects to => PIN20
ATBTLC1000 BluSDK v5.0 Release Notes 3
2
32
11.1 BTLC1000 Hardware Flow control 4-Wire Mode E-Fuse Write Procedure
When writing data to the eFuse, data written can never be changed (i.e. if a value 1 is written to a specific eFuse, those contents can never revert back to its original value. To configure the eFuse controller for accessing the eFuse contents, the user must enter the valid arguments for eFuse configu-ration.
1. Connect SAM-ICE to J108 header and connect BTLC1000 XPRO to any MCU board to power it up. Refer below assembly drawing picture for J108 location. Ensure that BTLC1000 chip enable and Wakeup pin driven high throughout the entire eFuse process.
2. Remove the U102, R116, and R117 on BTLC1000 XPRO to disconnect the temperature sen-sor chip from the GPIOs used for flow control as shown below (Highlighted in Red – refer 3D view XPro board)
3. The supplied command line Tool (EfuseBlockProgram.exe) is used to write the BTLC1000 eFuse to configure flow control signals.
4. Invoking help information from EfuseBlockProgram, enter “EfuseBlockProgram.exe -h” in
the command line.
Atmel BluSDK v5.0 Release Notes 3
3
33
5. Reading the eFuse value
Command Syntax: EfuseBlockProgram.exe –v <Bank No> <Block No>
Bank No - Range from 0 to 5
Block No - Range from 0 to 3
‘-v’ - For verification of a programmed block
For BTLC1000 UART Hardware Flowcontrol 4-Wire Mode the Bank-5, Block-3 needs to be configured.
To Read the BTLC1000 UART Hardware Flowcontrol efuse configuration use command “EfuseBlockProgram.exe –v 5 3”. The example output shown below for reading the eFuse
6. Writing and verifying the BTLC1000 eFuse value
ATBTLC1000 BluSDK v5.0 Release Notes 3
4
34
When writing data to the eFuse, data written can never be changed (i.e. if a value 1 is written to a specific eFuse, those contents can never revert back to its original value. To configure the eFuse controller for accessing the eFuse contents, the user must enter the valid arguments for eFuse configu-ration.
EfuseBlockProgram.exe <Bank No> <Block No> <Reg Value in HEX> -v
Bank No - Range from 0 to 5
Block No - Range from 0 to 3
Reg Value - eFuse to be configure in Hex
‘-v’ - For verification of a programmed block
To enable BTLC1000 UART Hardware Flowcontrol 4-Wire Mode the Bank-5, Block-3 needs to be written 10000000 (Inputs are in hex). The example write configuration to enable the Hardware
Flowcontrol shown below.
Atmel BluSDK v5.0 Release Notes 3
5
35
12 Annexure -3 - ASF installation instructions for AS 7.0
The below is the step by step procedure to do clean installation on new Atmel Software Framework into Atmel
Studio 7.0
12.1 Installation Steps for VSIX File
1. Click Tools Extensions and Updates
2. Select “Atmel Software Framework” and press ‘Uninstall’
ATBTLC1000 BluSDK v5.0 Release Notes 3
6
36
3. Press “Yes” to Uninstall the Atmel Software Framework
4. Click Tools->Command Prompt
5. Install using cmd Prompt and type below in command prompt and then Press “Yes” in next dialog box
Format:
vsixinstaller.exe [vsix_path\][filename.vsix]
Example: vsixinstaller.exe C:\BTLC1000\as-asf-vsix-7.0.352-win32.win32.x86.vsix
Atmel BluSDK v5.0 Release Notes 3
7
37
6. Press “Install” to continue the installation
7. Press “Close” and restart the Atmel Studio 7.0
ATBTLC1000 BluSDK v5.0 Release Notes 3
8
38
13 ATMEL EVALUATION BOARD/KIT IMPORTANT NOTICE AND
DISCLAIMER
This evaluation board/kit is intended for user's internal development and evaluation purposes only. It is not a
finished product and may not comply with technical or legal requirements that are applicable to finished
products, including, without limitation, directives or regulations relating to electromagnetic compatibility,
recycling (WEEE), FCC, CE or UL. Atmel is providing this evaluation board/kit “AS IS” without any warranties
or indemnities. The user assumes all responsibility and liability for handling and use of the evaluation board/kit
including, without limitation, the responsibility to take any and all appropriate precautions with regard to
electrostatic discharge and other technical issues. User indemnifies Atmel from any claim arising from user's
handling or use of this evaluation board/kit. Except for the limited purpose of internal development and
evaluation as specified above, no license, express or implied, by estoppel or otherwise, to any Atmel
intellectual property right is granted hereunder. ATMEL SHALL NOT BE LIABLE FOR ANY INDIRECT,
SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMGES RELATING TO USE OF THIS EVALUATION
BOARD/KIT.
ATMEL CORPORATION
1600 Technology Drive
San Jose, CA 95110
USA