Skip to content
Permalink
Browse files

Merge branch 'develop'

  • Loading branch information...
mringwal committed Mar 11, 2019
2 parents a563da7 + ce71166 commit ad7cba718043f6df01760889ce52fa75d6280eb9
Showing with 3,299 additions and 1,121 deletions.
  1. +25 −0 CHANGELOG.md
  2. +7 −3 example/Makefile.inc
  3. +385 −218 example/a2dp_sink_demo.c
  4. +96 −6 example/a2dp_source_demo.c
  5. +191 −0 example/audio_duplex.c
  6. +8 −2 example/avrcp_browsing_client.c
  7. +3 −3 example/mod_player.c
  8. +15 −1 example/panu_demo.c
  9. +153 −104 example/sco_demo_util.c
  10. +35 −10 example/sdp_general_query.c
  11. +3 −3 example/sine_player.c
  12. +132 −50 platform/embedded/btstack_audio_embedded.c
  13. +41 −12 platform/embedded/hal_audio.h
  14. +264 −93 platform/posix/btstack_audio_portaudio.c
  15. +25 −9 platform/posix/le_device_db_fs.c
  16. +10 −6 platform/wiced/le_device_db_wiced_dct.c
  17. +59 −20 port/esp32/components/btstack/btstack_audio_esp32.c
  18. +1 −1 port/esp32/components/btstack/btstack_tlv_esp32.c
  19. +2 −2 port/esp32/components/btstack/main.c
  20. +116 −16 port/esp32/template/sdkconfig
  21. +2 −1 port/libusb/main.c
  22. +1 −0 port/max32630-fthr/example/template/Makefile
  23. +1 −1 port/stm32-f4discovery-cc256x/create_examples.py
  24. +8 −4 port/stm32-f4discovery-cc256x/cubemx-f4discovery-cc256x/Makefile
  25. +4 −4 port/stm32-f4discovery-cc256x/cubemx-f4discovery-cc256x/cubemx-f4discovery-cc256x.ioc
  26. +10 −0 port/stm32-f4discovery-cc256x/eclipse-template/.cproject
  27. +3 −3 port/stm32-f4discovery-cc256x/eclipse-template/src/dma.c
  28. +6 −6 port/stm32-f4discovery-cc256x/eclipse-template/src/stm32f4xx_it.c
  29. +2 −2 port/stm32-f4discovery-cc256x/eclipse-template/src/usart.c
  30. +26 −0 port/stm32-f4discovery-cc256x/eclipse-template/system/src/stm32f4xx/stm32f4xx_hal_uart.c
  31. +217 −0 port/stm32-f4discovery-cc256x/pdm/Release_Notes.html
  32. BIN port/stm32-f4discovery-cc256x/pdm/libPDMFilter_CM4_GCC.a
  33. +76 −0 port/stm32-f4discovery-cc256x/pdm/pdm_filter.h
  34. +11 −0 port/stm32-f4discovery-cc256x/src/bsp/audio.c
  35. +22 −15 port/stm32-f4discovery-cc256x/src/bsp/stm32f4_discovery_audio.c
  36. +1 −0 port/stm32-f4discovery-cc256x/src/btstack_config.h
  37. +226 −14 port/stm32-f4discovery-cc256x/src/hal_audio_f4discovery.c
  38. +63 −2 port/stm32-f4discovery-cc256x/src/port.c
  39. +1 −0 port/wiced-h4/wiced-h4.mk
  40. +1 −0 port/wiced-h5/wiced-h5.mk
  41. +31 −15 src/ble/att_db.c
  42. +1 −0 src/ble/att_db.h
  43. +13 −4 src/ble/att_db_util.c
  44. +4 −1 src/ble/att_server.c
  45. +4 −2 src/ble/le_device_db.h
  46. +9 −6 src/ble/le_device_db_memory.c
  47. +10 −6 src/ble/le_device_db_tlv.c
  48. +22 −11 src/ble/sm.c
  49. +3 −0 src/bluetooth.h
  50. +28 −9 src/btstack_audio.c
  51. +88 −35 src/btstack_audio.h
  52. +94 −0 src/btstack_resample.c
  53. +89 −0 src/btstack_resample.h
  54. +1 −1 src/classic/avdtp_sink.h
  55. +1 −0 src/classic/avdtp_source.h
  56. +1 −1 src/classic/avdtp_util.h
  57. +248 −134 src/classic/avrcp.c
  58. +33 −17 src/classic/avrcp.h
  59. +17 −50 src/classic/avrcp_browsing_controller.c
  60. +1 −1 src/classic/avrcp_browsing_controller.h
  61. +11 −58 src/classic/avrcp_browsing_target.c
  62. +1 −1 src/classic/avrcp_browsing_target.h
  63. +43 −32 src/classic/avrcp_controller.c
  64. +14 −4 src/classic/avrcp_controller.h
  65. +93 −45 src/classic/avrcp_target.c
  66. +13 −4 src/classic/avrcp_target.h
  67. +3 −1 src/classic/hfp_ag.c
  68. +46 −34 src/classic/hid_device.c
  69. +7 −0 src/gap.h
  70. +14 −3 src/hci.c
  71. +1 −0 src/hci.h
  72. +8 −2 test/avrcp/avrcp_controller_test.c
  73. +19 −6 test/hfp/pklg_cvsd_test.c
  74. +8 −2 test/pts/avrcp_controller_test.c
  75. +7 −2 test/pts/avrcp_target_test.c
  76. +13 −4 test/pts/iopt.c
  77. +10 −1 test/sbc/pklg_msbc_test.c
  78. +38 −18 tool/compile_gatt.py
@@ -6,8 +6,33 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.

## [Unreleased]

### Changed
- le_device_db: add secure_connection argument to le_device_db_encryption_set and le_device_db_encryption_get

### Fixed
- SM: Use provided authentication requirements in slave security request

### Added
- SM: Track if connection encryption is based on LE Secure Connection pairing
- ATT DB: Validate if connection encrypted is based on SC if requested
- att_db_util: support ATT_SECURITY_AUTHENTICATED_SC permission flag
- GATT Compiler: support READ_AUTHENTICATED and WRITE_AUTHENTICATED permsission flags
- port/stm32-f4discovery-cc256x: add support for built-in MEMS microphone

## Changes February 2019

### Changed
- example/a2dp_sink_demo: use linear resampling to fix sample rate drift
- btstack_audio: split interface into sink and source

### Fixed
- Crypto: fix lockup when stack is shutdown while waiting for result of HCI Command, e.g. LE Read Local P256 Public Key
- SM: Avoid SM_EVENT_PAIRING_COMPLETE with ERROR_CODE_REMOTE_USER_TERMINATED_CONNECTION after successful pairing in responder role

### Added
- example/a2dp_sink_demo: add target role, support volume control on both devices
- example/audio_duplex: playback audio audio source on audio sink (test audio path)
- btstack_audio_embedded: implement audio source path

## Changes January 2019

@@ -114,6 +114,7 @@ HXCMOD_PLAYER = \
nao-deceased_by_disease.c \

EXAMPLES = \
audio_duplex \
a2dp_sink_demo \
a2dp_source_demo \
ancs_client_demo \
@@ -269,7 +270,7 @@ gap_inquiry: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} gap_inquiry.c
gap_link_keys: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} gap_link_keys.c
${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@

panu_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} panu_demo.c
panu_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} ${PAN_OBJ} panu_demo.c
${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@

gatt_browser: gatt_browser.h ${CORE_OBJ} ${COMMON_OBJ} ${ATT_OBJ} ${GATT_CLIENT_OBJ} ${GATT_SERVER_OBJ} ${SM_OBJ} gatt_browser.c
@@ -308,10 +309,10 @@ hid_keyboard_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} btstac
hid_mouse_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} btstack_ring_buffer.o hid_device.o btstack_hid_parser.o hid_mouse_demo.o
${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@

a2dp_source_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} ${SBC_ENCODER_OBJ} ${AVDTP_OBJ} ${HXCMOD_PLAYER_OBJ} avrcp.o avrcp_target.o a2dp_source_demo.c
a2dp_source_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} ${SBC_ENCODER_OBJ} ${AVDTP_OBJ} ${HXCMOD_PLAYER_OBJ} avrcp.o avrcp_controller.o avrcp_target.o a2dp_source_demo.c
${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@

a2dp_sink_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} ${SBC_DECODER_OBJ} ${AVDTP_OBJ} avrcp.o avrcp_controller.o a2dp_sink_demo.c
a2dp_sink_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} ${SBC_DECODER_OBJ} ${AVDTP_OBJ} avrcp.o avrcp_controller.o avrcp_target.o btstack_resample.o a2dp_sink_demo.c
${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@

avrcp_browsing_client: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} avrcp.o avrcp_controller.o avrcp_browsing_controller.o avrcp_media_item_iterator.o avrcp_browsing_client.c
@@ -332,6 +333,9 @@ mod_player: ${CORE_OBJ} ${COMMON_OBJ} ${HXCMOD_PLAYER_OBJ} btstack_audio.o mod_p
sine_player: ${CORE_OBJ} ${COMMON_OBJ} btstack_audio.o sine_player.c
${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@

audio_duplex: ${CORE_OBJ} ${COMMON_OBJ} btstack_audio.o btstack_ring_buffer.o audio_duplex.c
${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@

nordic_spp_le_counter: nordic_spp_le_counter.h ${CORE_OBJ} ${COMMON_OBJ} ${ATT_OBJ} ${GATT_SERVER_OBJ} ${SM_OBJ} nordic_spp_service_server.o nordic_spp_le_counter.c
${CC} $(filter-out nordic_spp_le_counter.h,$^) ${CFLAGS} ${LDFLAGS} -o $@

Oops, something went wrong.

0 comments on commit ad7cba7

Please sign in to comment.
You can’t perform that action at this time.