1.. _x-nucleo-bnrg2a1: 2 3X-NUCLEO-BNRG2A1: BLE expansion board 4##################################### 5 6Overview 7******** 8The X-NUCLEO-BNRG2A1 is a Bluetooth Low Energy evaluation board based on the 9BlueNRG-M2SP RF module to allow expansion of the STM32 Nucleo boards. 10The BlueNRG-M2SP module is FCC (FCC ID: S9NBNRGM2SP) and IC certified 11(IC: 8976C-BNRGM2SP). 12 13The X-NUCLEO-BNRG2A1 is compatible with the ST Morpho and Arduino UNO R3 14connector layout (the user can mount the ST Morpho connectors, if required). The 15X-NUCLEO-BNRG2A1 interfaces with the host microcontroller via the SPI pins, and 16the user can change the default SPI clock, the SPI chip select and SPI IRQ by 17changing either one resistor or jumper on the evaluation board. 18 19Note : This shield is compatible out of the box with Arduino UNO R3 connectors, 20but CS signal is not the standard Arduino SPI_CS signal. 21Please refer to "Hardware configuration" section. 22 23.. image:: img/x-nucleo-bnrg2a1.webp 24 :align: center 25 :alt: X-NUCLEO-BNRG2A1 26 27More information about the board can be found at the 28`X-NUCLEO-BNRG2A1 website`_. 29 30Hardware configuration 31********************** 32 33Out of the box, X-NUCLEO-BNRG2A1 shield expects SPI CS to be available on 34Arduino pin A1 instead of usual Arduino UNO R3 SPI CS D10. 35This is not a problem as CS signal is software driven gpio on Arduino A1 36see cs-gpios in x_nucleo_bnrg2a1.overlay 37 38Shield configuration could be modified by moving resistors or changing jumper as 39follows: 40 41 - SPI SCK: to use D3 instead of D13, short J14 pins 2 and 3 42 43Additionally, depending on your host board, some modifications of the BLE 44expansion board could be made: 45 46 - CS: To use D1 instead of A1, unmount R76 and mount R86 47 48nucleo_l476rg does not need hardware modifications. 49 50Hardware 51******** 52 53X-NUCLEO-BNRG2A1 provides a BlueNRG-M2SP chip with the following key features: 54 55 - Bluetooth v5.2 compliant 56 - Embedded BALF-NRG-02D3 integrated matched balun with harmonic filter 57 - BLE data packet length extension 58 59More information about X-NUCLEO-BNRG2A1 can be found here: 60 - `X-NUCLEO-BNRG2A1 databrief`_ 61 62Programming 63*********** 64 65You can use the X-NUCLEO-BNRG2A1 as a Bluetooth Low-Energy controller 66shield with an SPI host controller interface (HCI-SPI). Activate the presence 67of the shield for the project build by adding the ``-DSHIELD`` arg to the 68build command: 69 70 .. zephyr-app-commands:: 71 :zephyr-app: your_app 72 :board: your_board_name 73 :shield: x_nucleo_bnrg2a1 74 :goals: build 75 76Alternatively, set use of this shield in the project's ``CMakeLists.txt`` file: 77 78.. code-block:: cmake 79 80 set(SHIELD x_nucleo_bnrg2a1) 81 82References 83********** 84 85.. target-notes:: 86 87.. _X-NUCLEO-BNRG2A1 website: 88 https://www.st.com/en/ecosystems/x-nucleo-bnrg2a1.html 89 90.. _X-NUCLEO-BNRG2A1 databrief: 91 https://www.st.com/resource/en/data_brief/x-nucleo-bnrg2a1.pdf 92