1.. _ubx_bmd300eval_nrf52832: 2 3u-blox EVK-BMD-30/35: BMD-300-EVAL, BMD-301-EVAL, and BMD-350-EVAL 4################################################################## 5 6Overview 7******** 8 9The BMD-300-EVAL, BMD-301-EVAL, and BMD-350-EVAL hardware provides 10support for the u-blox BMD-300, BMD-301, and BMD-350 Bluetooth 5 11modules, based on the Nordic Semiconductor nRF52832 ARM Cortex-M4F 12CPU and the following devices: 13 14* :abbr:`ADC (Analog to Digital Converter)` 15* CLOCK 16* FLASH 17* :abbr:`GPIO (General Purpose Input Output)` 18* :abbr:`I2C (Inter-Integrated Circuit)` 19* :abbr:`MPU (Memory Protection Unit)` 20* :abbr:`NVIC (Nested Vectored Interrupt Controller)` 21* :abbr:`PWM (Pulse Width Modulation)` 22* RADIO (Bluetooth Low Energy) 23* :abbr:`RTC (nRF RTC System Clock)` 24* Segger RTT (RTT Console) 25* :abbr:`SPI (Serial Peripheral Interface)` 26* :abbr:`UART (Universal asynchronous receiver-transmitter)` 27* :abbr:`WDT (Watchdog Timer)` 28 29.. figure:: img/BMD-30-33-35-36-EVAL.jpg 30 :align: center 31 :alt: BMD-300-EVAL 32 33 BMD-300-EVAL (Credit: u-blox AG) 34 35.. note:: 36 The BMD-300-EVAL, BMD-301-EVAL, and BMD-350-EVAL share the same 37 pin headers and assignments. The boards are different only in 38 the module used on the board. The BMD-300 and BMD-301 modules 39 share the same footprint and differ only in the antenna. The 40 BMD-350 module utilizes the nRF52832 CIAA WLCSP package. 41 42More information about the BMD-300-EVAL, BMD-301-EVAL, and 43BMD-350-EVAL and the respective modules can be found at the 44`u-blox website`_. All of the Nordic Semiconductor examples for 45the nRF52 DK (nrf52dk_nrf52832) may be used without modification. 46 47Hardware 48******** 49 50The BMD-300/301/350 module on the board contains an internal 51high-frequency oscillator at 32MHz. There is also a low frequency 52(slow) oscillator of 32.768kHz. The module itself does not include 53the slow crystal; however, the EVAL boards do. 54 55.. note:: 56 When targeting a custom design without a slow crystal, 57 be sure to modify code to utilize the internal RC 58 oscillator for the slow clock. 59 60Supported Features 61================== 62 63The BMD-300/301/350-EVAL configuration supports the following 64hardware features: 65 66+-----------+------------+----------------------+ 67| Interface | Controller | Driver/Component | 68+===========+============+======================+ 69| ADC | on-chip | adc | 70+-----------+------------+----------------------+ 71| CLOCK | on-chip | clock_control | 72+-----------+------------+----------------------+ 73| FLASH | on-chip | flash | 74+-----------+------------+----------------------+ 75| GPIO | on-chip | gpio | 76+-----------+------------+----------------------+ 77| I2C(M) | on-chip | i2c | 78+-----------+------------+----------------------+ 79| MPU | on-chip | arch/arm | 80+-----------+------------+----------------------+ 81| NVIC | on-chip | arch/arm | 82+-----------+------------+----------------------+ 83| PWM | on-chip | pwm | 84+-----------+------------+----------------------+ 85| RADIO | on-chip | Bluetooth | 86+-----------+------------+----------------------+ 87| RTC | on-chip | system clock | 88+-----------+------------+----------------------+ 89| RTT | Segger | console | 90+-----------+------------+----------------------+ 91| SPI(M/S) | on-chip | spi | 92+-----------+------------+----------------------+ 93| UART | on-chip | serial | 94+-----------+------------+----------------------+ 95| WDT | on-chip | watchdog | 96+-----------+------------+----------------------+ 97 98Other hardware features have not been enabled yet for this board. 99See the `u-blox website`_ for a complete list of 100BMD-300/301/350-EVAL hardware features. 101 102Connections and IOs 103=================== 104 105LED 106--- 107 108* LED1 (red) = P0.17 109* LED2 (red) = P0.18 110* LED3 (green) = P0.19 111* LED4 (green) = P0.20 112* D5 (red) = OB LED 1 113* D6 (green) = OB LED 2 114 115Push buttons 116------------ 117 118* BUTTON1 = SW1 = P0.13 119* BUTTON2 = SW2 = P0.14 120* BUTTON3 = SW3 = P0.15 121* BUTTON4 = SW4 = P0.16 122* BOOT = SW5 = boot/reset 123 124External Connectors 125------------------- 126 127.. figure:: img/bmd-300-eval_pin_out.jpg 128 :align: center 129 :alt: BMD-300-EVAL pin-out 130 131 BMD-300-EVAL pin-out (Credit: u-blox AG) 132 133.. note:: 134 The BMD-300-EVAL, BMD-301-EVAL, and BMD-350-EVAL share 135 the same pin headers and assignments. 136 The BMD-300-EVAL is shown here. 137 138.. note:: 139 The pin numbers noted below are referenced to 140 the pin 1 markings on the BMD-300/301/350-EVAL 141 for each header 142 143J-Link Prog Connector (J2) 144 145+-------+--------------+ 146| PIN # | Signal Name | 147+=======+==============+ 148| 1 | VDD | 149+-------+--------------+ 150| 2 | IMCU_TMSS | 151+-------+--------------+ 152| 3 | GND | 153+-------+--------------+ 154| 4 | IMCU_TCKS | 155+-------+--------------+ 156| 5 | V5V | 157+-------+--------------+ 158| 6 | IMCU_TDOS | 159+-------+--------------+ 160| 7 | Cut off | 161+-------+--------------+ 162| 8 | IMCU_TDIS | 163+-------+--------------+ 164| 9 | Cut off | 165+-------+--------------+ 166| 10 | IMCU_RESET | 167+-------+--------------+ 168 169 170Debug OUT (J3) 171 172+-------+----------------+ 173| PIN # | Signal Name | 174+=======+================+ 175| 1 | EXT_VTG | 176+-------+----------------+ 177| 2 | EXT_SWDIO | 178+-------+----------------+ 179| 3 | GND | 180+-------+----------------+ 181| 4 | EXT_SWDCLK | 182+-------+----------------+ 183| 5 | GND | 184+-------+----------------+ 185| 6 | EXT_SWO | 186+-------+----------------+ 187| 7 | N/C | 188+-------+----------------+ 189| 8 | N/C | 190+-------+----------------+ 191| 9 | EXT_GND_DETECT | 192+-------+----------------+ 193| 10 | EXT_RESET | 194+-------+----------------+ 195 196 197Auxiliary (J9) 198 199+-------+----------------+ 200| PIN # | Signal Name | 201+=======+================+ 202| 1 | P0.10 | 203+-------+----------------+ 204| 2 | P0.09 | 205+-------+----------------+ 206| 3 | P0.08 | 207+-------+----------------+ 208| 4 | P0.07 | 209+-------+----------------+ 210| 5 | P0.06 | 211+-------+----------------+ 212| 6 | P0.05 / AIN3 | 213+-------+----------------+ 214| 7 | P0.21 / RESET | 215+-------+----------------+ 216| 8 | P0.01 / XL2 | 217+-------+----------------+ 218| 9 | P0.00 / XL1 | 219+-------+----------------+ 220| 10 | GND | 221+-------+----------------+ 222 223 224Arduino Headers 225--------------- 226 227 228Power (J5) 229 230+-------+--------------+---------------------------+ 231| PIN # | Signal Name | BMD-300/301/350 Functions | 232+=======+==============+===========================+ 233| 1 | VSHLD | N/A | 234+-------+--------------+---------------------------+ 235| 2 | VSHLD | N/A | 236+-------+--------------+---------------------------+ 237| 3 | RESET | P0.21 / RESET | 238+-------+--------------+---------------------------+ 239| 4 | VSHLD | N/A | 240+-------+--------------+---------------------------+ 241| 5 | V5V | N/A | 242+-------+--------------+---------------------------+ 243| 6 | GND | N/A | 244+-------+--------------+---------------------------+ 245| 7 | GND | N/A | 246+-------+--------------+---------------------------+ 247| 8 | N/C | N/A | 248+-------+--------------+---------------------------+ 249 250 251Analog in (J8) 252 253+-------+--------------+---------------------------+ 254| PIN # | Signal Name | BMD-300/301/350 Functions | 255+=======+==============+===========================+ 256| 1 | A0 | P0.03 / AIN1 | 257+-------+--------------+---------------------------+ 258| 2 | A1 | P0.04 / AIN2 | 259+-------+--------------+---------------------------+ 260| 3 | A2 | P0.28 / AIN4 | 261+-------+--------------+---------------------------+ 262| 4 | A3 | P0.29 / AIN5 | 263+-------+--------------+---------------------------+ 264| 5 | A4 | P0.30 / AIN6 | 265+-------+--------------+---------------------------+ 266| 6 | A5 | P0.31 / AIN7 | 267+-------+--------------+---------------------------+ 268 269 270Digital I/O (J7) 271 272+-------+--------------+---------------------------+ 273| PIN # | Signal Name | BMD-300/301/350 Functions | 274+=======+==============+===========================+ 275| 1 | D7 | P0.18/TRACEDATA[0]/SWO | 276+-------+--------------+---------------------------+ 277| 2 | D6 | P0.17 | 278+-------+--------------+---------------------------+ 279| 3 | D5 | P0.16/TRACEDATA[1] | 280+-------+--------------+---------------------------+ 281| 4 | D4 | P0.15/TRACEDATA[2] | 282+-------+--------------+---------------------------+ 283| 5 | D3 | P0.14/TRACEDATA[3] | 284+-------+--------------+---------------------------+ 285| 6 | D2 | P0.13 | 286+-------+--------------+---------------------------+ 287| 7 | D1 (TX) | P0.12 | 288+-------+--------------+---------------------------+ 289| 8 | D0 (RX) | P0.11 | 290+-------+--------------+---------------------------+ 291 292 293Digital I/O (J6) 294 295+-------+--------------+---------------------------+ 296| PIN # | Signal Name | BMD-300/301/350 Functions | 297+=======+==============+===========================+ 298| 1 | SCL | P0.27 | 299+-------+--------------+---------------------------+ 300| 2 | SDA | P0.26 | 301+-------+--------------+---------------------------+ 302| 3 | AREF | P0.02/AIN0 | 303+-------+--------------+---------------------------+ 304| 4 | GND | N/A | 305+-------+--------------+---------------------------+ 306| 5 | D13 (SCK) | P0.25 | 307+-------+--------------+---------------------------+ 308| 6 | D12 (MISO) | P0.24 | 309+-------+--------------+---------------------------+ 310| 7 | D11 (MOSI) | P0.23 | 311+-------+--------------+---------------------------+ 312| 8 | D10 (SS) | P0.22 | 313+-------+--------------+---------------------------+ 314| 9 | D9 | P0.20/TRACECLK | 315+-------+--------------+---------------------------+ 316| 10 | D8 | P0.19 | 317+-------+--------------+---------------------------+ 318 319 320J11 321 322+-------+--------------+---------------------------+ 323| PIN # | Signal Name | BMD-300/301/350 Functions | 324+=======+==============+===========================+ 325| 1 | D12 (MISO) | P0.24 | 326+-------+--------------+---------------------------+ 327| 2 | V5V | N/A | 328+-------+--------------+---------------------------+ 329| 3 | D13 (SCK) | P0.25 | 330+-------+--------------+---------------------------+ 331| 4 | D11 (MOSI) | P0.23 | 332+-------+--------------+---------------------------+ 333| 5 | RESET | N/A | 334+-------+--------------+---------------------------+ 335| 6 | N/A | N/A | 336+-------+--------------+---------------------------+ 337 338 339Programming and Debugging 340************************* 341 342Flashing 343======== 344 345Follow the instructions in the :ref:`nordic_segger` page to install 346and configure all the necessary software. Further information can be 347found in :ref:`nordic_segger_flashing`. Then build and flash 348applications as usual (see :ref:`build_an_application` and 349:ref:`application_run` for more details). 350 351Here is an example for the :zephyr:code-sample:`hello_world` application. 352 353First, run your favorite terminal program to listen for output. 354 355.. code-block:: console 356 357 $ minicom -D <tty_device> -b 115200 358 359Replace :code:`<tty_device>` with the port where the 360BMD-300/301/350-EVAL can be found. For example, under Linux, 361:code:`/dev/ttyACM0`. 362 363Then build and flash the application in the usual way. 364 365.. zephyr-app-commands:: 366 :zephyr-app: samples/hello_world 367 :board: ubx_bmd300eval/nrf52832 368 :goals: build flash 369 370Debugging 371========= 372 373Refer to the :ref:`nordic_segger` page to learn about debugging 374u-blox boards with a Segger J-LINK-OB IC. 375 376 377Testing the LEDs and buttons in the BMD-330-EVAL 378************************************************ 379 380There are 2 samples that allow you to test that the buttons 381(switches) and LEDs on the board are working properly with Zephyr: 382 383.. code-block:: console 384 385 samples/basic/blinky 386 samples/basic/button 387 388You can build and flash the examples to make sure Zephyr is 389running correctly on your board. The button and LED definitions 390can be found in :zephyr_file:`boards/u-blox/ubx_bmd300eval/ubx_bmd300eval_nrf52832.dts`. 391 392References 393********** 394 395.. target-notes:: 396 397.. _u-blox website: https://www.u-blox.com/en/product/bmd-3035-series-open-cpu 398