Skip to content

Latest commit

 

History

19 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NXP Bluetooth A2DP Sample environment

west project to test NXP A2DP sample

Initial project setup

This project contains a setup containing a workspace file and DevContainer environment based on the official Zephyr Docker setup for Visual Studio Code.
Additionally it makes sure the required Zephyr Toolchains from the Zephyr Dockerfile are usable.
To initialize:

  • clone this repo containing the Zephyr DevContainer Workspace and the NXP-Zephyr as submodule:
    git clone <clone-url-of-this repo>
    
  • Open the project by doubleClick on the NXP.code-workspace file.
    VisualStudio Code will ask to reopen the workspace in DevContainer, please select Reopen in Container (mandatory!).
  • After VSCode startup (will take some time for the initial docker container build), fetch/update NXP Zephyr and NXP HAL blobs:
    west update
    west blobs fetch hal_nxp
    

Required Hardware rework

To run this sample on an EVK with M.2 wireless card some HW rework for BT/Audio ist necessary:

  • MIMXRT1170-EVKB

    • HCI UART rework
      • remove R183 (LPSPI1_SDI to LPSPI Flash)
      • remove R1816 (GPIO_DISP_B2_12 to RGMII1_PHY_INTB)
      • add 0R to R404 (GPIO_AD_31 to WL_RST#)
      • add 0R to R1901 (GPIO_DISP_B2_11/BT_UART_RXD to M.2 (via 1.8V Levelshifter))
      • add 0R to R1902 (GPIO_DISP_B2_12/BT_UART_CTS to M.2 (via 1.8V Levelshifter))
    • PCM interface rework
      • disconnect J79 (BT_PCM_SYNC -> BT_PCM_SYNC_1V8)
      • disconnect J80 (BT_PCM_BCLK -> BT_PCM_BCLK_1V8)
      • connect J81 (BT_PCM_BCLK_1V8 -> BT_PCM_BCLK)
      • connect J82 (BT_PCM_SYNC_1V8 -> BT_PCM_SYNC)
      • remove R1985 (GPIO_EMC_B2_13 -> SEMC_D28)
      • remove R1992 (GPIO_EMC_B2_13 -> DC_I2S3_RX_D0)
      • remove R1986 (GPIO_EMC_B2_14 -> SEMC_D29)
      • remove R1993 (GPIO_EMC_B2_14 -> DC_I2S3_TX_D0)
      • remove R1987 (GPIO_EMC_B2_15 -> SEMC_D30)
      • remove R1994 (GPIO_EMC_B2_15 -> DC_I2S3_TX_BCLK)
      • remove R1988 (GPIO_EMC_B2_16 -> SEMC_D31)
      • remove R1995 (GPIO_EMC_B2_16 -> DC_I2S3_TX_SYNC)
      • add 0R to R228 (GPIO_EMC_B2_13 -> BT_PCM_RXD)
      • add 0R to R229 (GPIO_EMC_B2_16 -> BT_PCM_SYNC)
      • add 0R to R232 (GPIO_EMC_B2_15 -> BT_PCM_BCLK)
      • add 0R to R234 (GPIO_EMC_B2_14 -> BT_PCM_TXD)
      • add 0R to R1903 (BT_PCM_RXD_1V8 -> BT_PCM_RXD)

    For the location of the resistors above please refer to the front and back board images

  • MIMXRT1060-EVKB (chapter 1 or 2)

    • HCI UART rework

      • remove R293
      • remove R354
      • connect R293 pin2 with R354 Pin1
      • remove R241
      • remove R163
      • connect R93 pin1 with R241 Pin2
      • add 0R to R96
      • add 0R to R93
      • add 0R to R87
      • add 0R to R79
      • add 0R to R70
      • add 0R to R345
      • remove R193 For the location of the resistors above please refer to the front and back board images
    • I2S2 rework

      • Open jumpers: J35, J36, J37, and J41.
      • Connect J35 (Pin2) with J19 (Pin3) and solder R341.
      • Connect J36 (Pin2) with J19 (Pin9) and solder R334
      • Connect J41 (Pin2) with TP11.
      • Connect J37 (Pin2) with J16 (Pin5).
      • Connect R428 with R254 (Pin2), remove R254, R173, and R175.
      • Remove R86, R76, and R381

      For the location of the resistors above please refer to the front and back board images

    • M.2 SDIO rework

      • add 0R to R368
      • add 0R to R376
      • add 0R to R347
      • add 0R to R349
      • add 0R to R365
      • add 0R to R363
      • remove R364
      • remove R366
      • remove R351
      • remove R348
      • remove R377
      • remove R369

      For the location of the resistors above please refer to the back board image

  • MIMXRT1060-EVKB (own)

    • HCI UART rework

      • mount R93 (GPIO_AD_B0_03 -> BT_UART_CTS)
      • mount R96 (GPIO_AD_B1_07 -> BT_UART_RXD)
      • mount R345 (GPIO_AD_B1_03 -> WL_RST#)
      • remove R193 (I2C3_SCL to GPIO_AD_B1_07)
      • mount R363 (GPIO_SD_B0_00 -> WIFI_SDIO_CMD)
      • remove R364 (GPIO_SD_B0_00 to SD1_CMD)
      • mount R365 (GPIO_SD_B0_01 -> WIFI_SDIO_CLK)
      • remove R366 (GPIO_SD_B0_01 to SD1_CLK)
    • PCM interface rework

      • remove R86 (BT_PCM_BCLK -> BT_PCM_BCLK_1V8)
      • remove R76 (BT_PCM_SYNC -> BT_PCM_SYNC_1V8)
      • connect R79 (BT_PCM_BCLK_1V8 -> BT_PCM_BCLK)
      • connect R70 (BT_PCM_SYNC_1V8 -> BT_PCM_SYNC)
      • remove R381 or R220 (ENET_RST -> KSZ8081RNB)
      • remove R87 (BT_PCM_RXD_1V8 -> BT_PCM_RXD)

      For the location of these resistors above please refer to the schematics

  • MIMXRT1060-EVKC

    • HCI UART rework

      • mount R93 (BT_UART_CTS to GPIO_AD_B0_03)
      • mount R96 (BT_UART_RXD to GPIO_AD_B1_07)
      • connect J109 (GPIO_AD_B1_03 -> WL_RST#)
      • connect J76 2-3 (SDIO0_SD1_SEL=0)
        routing GPIO_SD_B0_00->WIFI_SDIO_CMD & GPIO_SD_B0_01_B->WIFI_SDIO_CLK
    • PCM interface rework

      • remove J54 (BT_PCM_BCLK -> BT_PCM_BCLK_1V8)
      • remove J55 (BT_PCM_SYNC -> BT_PCM_SYNC_1V8)
      • connect J56 (BT_PCM_BCLK_1V8 -> BT_PCM_BCLK)
      • connect J57 (BT_PCM_SYNC_1V8 -> BT_PCM_SYNC)
      • remove R220 (ENET_RST -> KSZ8081RNB)
      • remove J103 (BT_PCM_RXD_1V8 -> BT_PCM_RXD)

      For the location of these resistors above please refer to the front board image and schematics.

      Note: When J103 is connected, flash cannot be downloaded. So, remove the connection when downloading flash and reconnect it after downloading.

MIMXRT1060-EVK PCM Back.png

Build example

Run example

  • by VSCode:
    Simply select connected debugger and press F5

    Evaluation Board on-board Debugger
    MIMXRT1170-EVKB CMSIS-DAP
    MIMXRT1060-EVK JLINK

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages