BLE-CC254x-1.3
所属分类:DSP编程
开发工具:C/C++
文件大小:12535KB
下载次数:348
上传日期:2013-03-27 16:44:02
上 传 者:
gzz2017
说明: TI的CC2541 BLE相关源码包,方便蓝牙4.0开发
(TI the CC2541 BLE source package, convenient Bluetooth 4.0 development)
文件列表:
BLE-CC254x-1.3\Accessories\Drivers\usb_cdc_driver_cc2540.inf (3583, 2009-10-29)
BLE-CC254x-1.3\Accessories\HexFiles\CC2540MiniDkDemoSlave.hex (303280, 2012-12-18)
BLE-CC254x-1.3\Accessories\HexFiles\CC2540_keyfob_SimpleBLEPeripheral.hex (293434, 2012-12-18)
BLE-CC254x-1.3\Accessories\HexFiles\CC2540_SmartRF_HostTestRelease_All.hex (414783, 2012-12-18)
BLE-CC254x-1.3\Accessories\HexFiles\CC2540_SmartRF_SimpleBLECentral.hex (321267, 2012-12-18)
BLE-CC254x-1.3\Accessories\HexFiles\CC2540_SmartRF_SimpleBLEPeripheral.hex (295776, 2012-12-18)
BLE-CC254x-1.3\Accessories\HexFiles\CC2540_USBdongle_HostTestRelease_All.hex (421476, 2012-12-18)
BLE-CC254x-1.3\Accessories\HexFiles\CC2541DK_BIM_SensorTagOadImgA.hex (362965, 2012-12-11)
BLE-CC254x-1.3\Accessories\HexFiles\CC2541MiniDkDemoSlave.hex (310826, 2012-12-18)
BLE-CC254x-1.3\Accessories\HexFiles\CC2541_keyfob_SimpleBLEPeripheral.hex (299481, 2012-12-18)
BLE-CC254x-1.3\Accessories\HexFiles\CC2541_SmartRF_HostTestRelease_All.hex (434065, 2012-12-18)
BLE-CC254x-1.3\Accessories\HexFiles\CC2541_SmartRF_SimpleBLECentral.hex (329173, 2012-12-18)
BLE-CC254x-1.3\Accessories\HexFiles\CC2541_SmartRF_SimpleBLEPeripheral.hex (301810, 2012-12-18)
BLE-CC254x-1.3\Components\ble\controller\include\ll.h (101093, 2012-11-09)
BLE-CC254x-1.3\Components\ble\controller\include\ll_math.h (3370, 2011-02-17)
BLE-CC254x-1.3\Components\ble\controller\include\ll_sleep.h (3939, 2011-07-29)
BLE-CC254x-1.3\Components\ble\controller\include\ll_timer2.h (8683, 2012-07-13)
BLE-CC254x-1.3\Components\ble\controller\include\phy.h (70918, 2012-09-21)
BLE-CC254x-1.3\Components\ble\controller\include\phy_image.h (3683, 2011-05-09)
BLE-CC254x-1.3\Components\ble\hci\hci_data.h (6742, 2012-09-07)
BLE-CC254x-1.3\Components\ble\hci\hci_event.h (10076, 2012-08-24)
BLE-CC254x-1.3\Components\ble\hci\hci_tl.h (13691, 2012-11-09)
BLE-CC254x-1.3\Components\ble\host\gatt_uuid.c (10680, 2012-09-25)
BLE-CC254x-1.3\Components\ble\host\linkdb.h (8803, 2011-11-07)
BLE-CC254x-1.3\Components\ble\include\att.h (43369, 2011-09-15)
BLE-CC254x-1.3\Components\ble\include\bcomdef.h (10782, 2012-11-27)
BLE-CC254x-1.3\Components\ble\include\gap.h (56184, 2012-11-14)
BLE-CC254x-1.3\Components\ble\include\gatt.h (63477, 2011-09-15)
BLE-CC254x-1.3\Components\ble\include\gatt_uuid.h (14629, 2012-09-25)
BLE-CC254x-1.3\Components\ble\include\hci.h (84818, 2012-11-09)
BLE-CC254x-1.3\Components\ble\include\l2cap.h (13871, 2012-01-04)
BLE-CC254x-1.3\Components\ble\include\sm.h (12711, 2012-10-29)
BLE-CC254x-1.3\Components\hal\common\hal_assert.c (9887, 2010-11-22)
BLE-CC254x-1.3\Components\hal\common\hal_drivers.c (8792, 2012-08-01)
BLE-CC254x-1.3\Components\hal\include\hal_adc.h (6175, 2010-02-25)
BLE-CC254x-1.3\Components\hal\include\hal_assert.h (5478, 2009-02-16)
BLE-CC254x-1.3\Components\hal\include\hal_board.h (28, 2006-11-01)
BLE-CC254x-1.3\Components\hal\include\hal_defs.h (5282, 2012-08-17)
BLE-CC254x-1.3\Components\hal\include\hal_drivers.h (4434, 2012-07-09)
BLE-CC254x-1.3\Components\hal\include\hal_flash.h (4964, 2010-04-09)
... ...
Texas Instruments, Inc.
CC2540/41 Bluetooth Low Energy Software Development Kit
Release Notes
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Version 1.3
Dec 12, 2012
Notices:
- This version of the Texas Instruments BLE stack and software features several
changes, enhancements, and bug fixes from v1.2.1. Details of these can be found
below.
Changes and Enhancements:
- A new sample project, SensorTag, has been added. This application runs on the
CC2541 Sensor Tag board, which is included as part of the CC2541DK-SENSOR
development kit. The application includes custom services for an accelerometer,
barometer, gyro, humidity sensor, IR temperature sensor, and magnetometer.
- A new Boot Image Manager (BIM) is included. This allows one CC2540 or CC2541
device to contain two separate software images (an "A" image and a "B" image)
stored in flash. Upon power-up, the BIM selects which image to boot into. This
can be based on criteria such as the state of a GPIO pin, or based on a
selection from the previously running application upon reset.
- A new Over-the-air firmware download (OAD) feature is included. The feature
allows a peer device (which could be a central BT Smart device such as a
smartphone) to push a new firmware image onto a peripheral device and update
the firmware. This feature uses the BIM, in which case the downloaded image
gets stored in the opposite flash location as the currently running image.
For example, if the "A" image is the current image and is used to perform the
download, then the downloaded image becomes the "B" image. Upon reset, the "B"
image with the updated firmware would be loaded. The OAD feature optionally
allows for the firmware image to be signed (using AES). Both the SensorTag and
SimpleBLEPeripheral projects include configurations for using the OAD feature.
A central "OADManager" application is also included, demonstrating a central
implementation for sending a new firmware image to an OAD target device.
- The physical HCI interface used by the network processor (HostTestRelease) has
been enhanced to work while power management is enabled on the CC254x device.
The UART interface, when using RTS and CTS lines, can be used by an
external application processor to wake-up the CC254x network processor. When
the network processor has completed all processing, it will go into deep
sleep. In addition to UART, an SPI interface has been added as an option for
the physical HCI interface. It also supports power management by means of
the MRDY and SRDY lines.
- The CC2541 configuration of the KeyFobDemo project has been modified to
support the new CC2541 keyfob hardware, contained in the CC2541DK-MINI kit.
The accelerometer has been changed, and a TPS62730 DC/DC converter has been
added.
- The structure of all projects have been changed to include a Transport Layer
("TL") library and network processor interface "NPI" source code. This new
architecture allows for non-network processor applications to have slightly
reduced code size by removing unnecessary stack components.
- An API has been provided allowing the device name and appearance
characteristics in the GAP service to be modified by the application layer.
- KeyFobDemo project now includes visual feedback from LED to indicate when
device has powered up and when device is advertising.
- The HID-over-GATT Pofile (HOGP) implementation has been updated to now
queue up HID report and send notifications upon reconnection to a HID host.
- A new implementation of the HID service has been included, which supports
a combined keyboard, mouse, and consumer class device in its HID report
descriptor.
- The API for sending L2CAP Connection Parameter Update Requests from the GAP
Peripheral Role Profile has been updated to take both the requested minimum
and maximum connection intervals as parameters.
- BTool has been enhanced with a new GATT explorer table, displaying discovered
attributes, handles, and values. An XML file is included which allows the
user to define descriptions of characteristics based on their UUIDs.
- HCI UART interface baud rate has been changed from 57600 to 115200.
Bug Fixes:
- When power management is used with long connection intervals (>2s), the
CC254x remains sleeping properly without unnecessary wake-ups.
- When slave latency is used, peripheral devices now properly wake-up before
the next connection event when a data packet is queued
- Various bug fixes on the GlucoseSensor and GlucoseCollector projects to
improve compliance with profile and service specifications.
- HID-over-GATT Pofile (HOGP) implementation has been updated to provide
better interoperability with HID hosts.
Known Issues:
- Use of the NV memory (to save application data or BLE Host bonding
information) during a BLE connection may cause an unexpected disconnect.
The likelihood of this happening increases with frequent usage, especially
when using short connection intervals. The cause is related to the NV wear
algorithm which at some point may cause an NV page erase which can disrupt
system real-time processing. It is therefore recommended that the NV memory
be used sparingly, or only when a connection is not active.
- HCI packet size of 128 bytes or more will be disregarded by the stack, and as such,
no HCI event will be returned.
For technical support please visit the Texas Instruments Bluetooth low energy
E2E Forum:
http://e2e.ti.com/support/low_power_rf/f/538.aspx
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Version 1.2.1
Apr 13, 2012
Notices:
- This version of the Texas Instruments BLE stack and software is a minor
update to the v1.2 release. It contains some minor enhancements and bug
fixes, with no API changes or major functional changes.
Changes and Enhancements:
- When advertising is enabled by calling GAP_MakeDiscoverable, the first
advertisement event will now occur within a few milliseconds, rather than
waiting for 10ms.
Bug Fixes:
- The HidEmuKbd project now properly implements the HID Service include of the
Battery Service. This bug fix allows for proper interoperability between the
CC254x HID Profile and host systems running Windows 8.
- The source code file hal_board_cfg.h has been updated to better support the
serial bootloader (SBL) and Universal Bootloader (UBL).
- Scanning in BTool can now be cancelled at any time without hanging or
freezing the system.
Known Issues:
- Use of the NV memory (to save application data or BLE Host bonding
information) during a BLE connection may cause an unexpected disconnect.
The likelihood of this happening increases with frequent usage, especially
when using short connection intervals. The cause is related to the NV wear
algorithm which at some point may cause an NV page erase which can disrupt
system real-time processing. It is therefore recommended that the NV memory
be used sparingly, or only when a connection is not active.
For technical support please visit the Texas Instruments Bluetooth low energy
E2E Forum:
http://e2e.ti.com/support/low_power_rf/f/538.aspx
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Version 1.2
Feb 13, 2012
Notices:
- This version of the Texas Instruments BLE stack and software includes support
for the CC2541, as well as some enhancements and bug fixes. Details of these
can be found below. If you have not previously worked with the v1.1b release
(which had limited distribution) it is recommend that you also read the notes
detailing the changes and enhancements from v1.1a to v1.1b in addition to the
notes for v1.2.
Changes and Enhancements:
- All projects have been migrated from IAR v7.60 to IAR v8.10.4. In order to
build all projects, be sure to upgrade and have IAR v8.10.4. Also, be sure to
download and install all of the latest patches from IAR for full CC2540 and
CC2541 support.
- Multi-role and combo-role support has been enhanced. The BLE stack can now
support simultaneously advertising and/or scanning while in a connection as
either a master or a slave. This allows for a central device to perform
device discovery while in a connection. All previous rules for multiple
simultaneous connections as a central device still apply (see v1.1a release
notes below).
- New sample projects "SimpleBLEBroadcaster" and "SimpleBLEObserver" have been
added, as example projects for pure broadcaster and observer applications
with very low code size. The projects make use of new GAP role profiles
broacaster.c and observer.c that are included.
- All projects have a modified architecture from the v1.1, v1.1a, and v1.1b
releases. Each project contains a file "buildConfig.cfg" that can be found in
the project directory and is included in the IAR project workspace as part of
the "TOOLS" group. The settings in this file determine the role of the device
in the application. Based on this configuration, different pieces of the BLE
stack in object code are linked in, causing the code size to be larger or
smaller depending on the roles supported. For example, HostTestRelease by
default is now configured to support every single BLE GAP role in a single
build, and therefore has a large code size (approx. 165kB). On the other
hand, SimpleBLEBroadcaster is configured to only support the GAP broadcaster
role, and therefore has a very small code size (approx. 39kB).
- The function GAPRole_SendUpdateParam in peripheral.c has been made public to
allow a peripheral application to send an L2CAP connection parameter update
request at any time.
- The names and configuration of the BLE stack libraries have changed.
Different libraries are used depending on the GAP role (or combination of
roles) used by the application. More information can be found in section
3.3.5 of the BLE Software Developer's Guide.
- All library files now support power management. Power management must be
enabled by the application by calling osal_pwrmgr_device( PWRMGR_BATTERY );.
All sample applications that use power management make this call in the main
function.
- All GATT service source code has been cleaned up to make handling of client
characteristic configuration descriptors (CCCDs) simpler. All CCCDs are now
processing is now handled by GATTServApp and no longer must be handled by the
service itself. Examples of this can be found in the included example
services such as SimpleGATTprofile, Simple Keys service, Accelerometer
service, etc...
- The HostTestRelease network processor project now includes HCI Vendor
Specific commands for each GATT client sub-procedure, matching the GATT
client API. All GATT commands have been added to the "Adv. Commands" tab in
BTool. The functions in the BTool GUI "Read / Write" tab now make use of the
GATT commands as opposed to ATT commands.
- The old "EmulatedKeyboard" project has been removed and replaced with the new
"HIDEmuKbd" project. The new project performs the same functions as the old
one, but is now based on the "HID over GATT Profile" v1.0 specification
(HOGP_SPEC_V10) that has been adopted by the Bluetooth SIG. The HID profile
functionality has been implemented in a OSAL task that runs separate from the
application to allow for easy portability to other HID projects. More details
on the new application can be found in the BLE Sample Application Guide
included as part of the release. The following additional new services /
profiles have been included to fully support the HOGP specification:
- HID Service v1.0 (HIDS_SPEC_V10)
- Scan Parameters Profile v1.0 (ScPP_SPEC_V10)
- Scan Parameters Service v1.0 (ScPS_SPEC_V10)
- Device Information Service v1.1 (DIS_SPEC_V11r00)
- Battery Service v1.0 (BAS_SPEC_V10)
- The KeyFobDemo project has been updated to use the adopted battery service.
The custom battery service that was used in previous released has been
removed.
- The TimeApp project has been updated to include support for the Phone Alert
Status Profile (PASP_SPEC_V10) in the Client role.
- Support for "Production Test Mode" has been added, allowing a BLE application
in a "single-chip" configuration to temporarily expose the HCI over the UART
interface when triggered externally to do so (e.g. hold a GPIO pin low during
power up). This allows the device to be connected to a Bluetooth tester in
order to run direct test mode (DTM) commands on a production line using the
final release firmware, while leaving the UART GPIO pins available for the
application to use at all other times
- A Universal Boot Loader (UBL) using the USB Mass Storage Device (USB-MSD)
class has been added along with a Serial Boot Loader (SBL). The
HostTestRelease project includes configurations with examples of both boot
loaders. The SBL project is included with the installer. More information on
the UBL can be found in the following document:
C:\Texas Instruments\BLE-CC254x-1.2\Documents\
Universal Boot Loader for SOC-8051 by USB-MSD Developer's Guide.pdf
- HCI extension command HCI_EXT_MapPmIoPortCmd added to support toggling of a
GPIO line as CC254x device goes in and out of sleep. This command can be
used to automatically control the bypass line of the TPS62730 DC/DC
converter for reducing power consumption in an optimized manner.
- A slave device will now dynamically widen it's Rx window when a previous
connection event was missed. This improves connection stability by accounting
for additional clock drift that may have occurred since the last successful
connection event.
- The application now has the capability to change the permissions of the
device name in the GAP service by calling GGS_SetParameter and changing
the value of the parameter GGS_W_PERMIT_DEVICE_NAME_ATT. The application can
also receive a callback when a client device writes a new name to the device.
The application registers the callback by calling GGS_RegisterAppCBs. The
prototype for GGS_RegisterAppCBs can be found in gapgattserver.h.
Bug Fixes:
- Duplicate filtering now works with combination states.
- Various minor application / profile bug fixes.
Known Issues:
- Use of the NV memory (to save application data or BLE Host bonding
information) during a BLE connection may cause an unexpected disconnect.
The likelihood of this happening increases with frequent usage, especially
when using short connection intervals. The cause is related to the NV wear
algorithm which at some point may cause an NV page erase which can disrupt
system real-time processing. It is therefore recommended that the NV memory
be used sparingly, or only when a connection is not active.
For technical support please visit the Texas Instruments Bluetooth low energy
E2E Forum:
http://e2e.ti.com/support/low_power_rf/f/538.aspx
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Version 1.1b
Nov 30, 2011
Notices:
- This version of the Texas Instruments BLE stack and software includes support
for the CC2541, as well as some minor enhancements and bug fixes. Details of
these can be found below. The general software architecture remains the same
as in the v1.1 and v1.1a releases.
Changes and Enhancements:
- BLE stack libraries for the CC2541 are included.
- All BLE libraries are renamed and now indicate whether they are used for
CC2540 or CC2541.
- For each project and configuration, new IAR projects are included for use
with the CC2541. The only exception is that any project/configuration that
uses the USB interface has not been replicated for the CC2541, as it does not
have an on-chip hardware USB interface.
- Link-layer processing has been optimized to provide for reduced power
consumption during connection events and advertising events.
- SimpleBLEPeripheral and SimpleBLECentral now use the HCI_EXT_ClkDivOnHaltCmd,
which reduces the current level while the CC2540/41 radio is active.
- The bond manager has been updated to allow peripheral devices to properly
pair, bond, and resolve the address of central devices that use the private
resolvable address type.
- New command HCI_EXT_SetMaxDtmTxPowerCmd included, which allows the maximum
Tx power level to be set. This is useful when using Direct Test Mode (DTM),
in that the Tx power level will be set to the maximum value set by the
HCI_EXT_SetMaxDtmTxPowerCmd command, which may be less than +4dBm for the
CC2540 and less than 0dBm for the CC2541. The function prototype can be
found in hci.h.
Bug Fixes:
- The command HCI_EXT_SetTxPowerCmd is now properly working.
Known Issues:
- Use of the NV memory (to save application data or BLE Host bonding
information) during a BLE connection may cause an unexpected disconnect.
The likelihood of this happening increases with frequent usage, especially
when using short connection intervals. The cause is related to the NV wear
algorithm which at some point may cause an NV page erase which can disrupt
system real-time processing. It is therefore recommended that the NV memory
be used sparingly, or only when a connection is not active.
- Duplicate filtering does not work when scan is used in combination with a
connection.
For technical support please visit the Texas Instruments Bluetooth low energy
E2E Forum:
http://e2e.ti.com/support/low_power_rf/f/538.aspx
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Version 1.1a
Aug 10, 2011
Changes and Enhancements:
- The thermometer profile sample application has been updated to support
stored measurements. The TI_BLE_Sample_Applications_Guide has been updated
to match these changes.
Known Issues:
- Use of the NV memory (to save application data or BLE Host bonding
information) during a BLE connection may cause an unexpected disconnect.
The likelihood of this happening increases with frequent usage, especially
when using short connection intervals. The cause is related to the NV wear
algorithm which at some point may cause an NV page erase which can disrupt
system real-time processing. It is therefore recommended that the NV memory
be used sparingly, or only when a connection is not active.
- Duplicate filtering does not work when scan is used in combination with a
connection.
For technical support please visit the Texas Instruments Bluetooth low energy
E2E Forum:
http://e2e.ti.com/support/low_power_rf/f/538.aspx
----------------------------------------------------------------- ... ...
近期下载者:
相关文件:
收藏者: