1.. zephyr:board:: nrf51_ble400 2 3Overview 4******** 5 6BLE400 is a motherboard designed for BLE Bluetooth 2.4G Wireless Module. Used together with core board -- Core51822. 7 8Supported Features 9================== 10 11Motherboard 12------------ 13 14- Onboard battery holder, multi power supplies are available 15- All the IOs are accessible for easy expansion 16- Integrates CP2102 for debugging 17- LEDs and user keys, compatible with other official boards, easy to use 18 19Core board 20---------- 21 22- Onboard chip: nRF51822 23- Communication distance (open outdoor 1M data rate): 30m 24- Frequency range: 2.4GHz 25- Operating voltage: 2.0V ~ 3.6V 26- Operating temperature: -40℃ ~ 85℃ 27- Expansion pinheader: all the I/Os except P0.26 and P0.27 28- Pinheader pitch: 2.00mm 29- Antenna: onboard antenna 30 31Features 32======== 33 34- 2.4 GHz multiprotocol RF transceiver 35- ARM® Cortex™-M0 32 bit processor 36- 128 bit AES HW encryption 37- 256kB flash & 32kB RAM 38- Programmable Peripheral Interconnect (PPI) 39- Digital interfaces: SPI, I2C, UART 40- 10 bit ADC 41- Programmable output power: -20 to +4 dBm 42- Independent application development and protocol stack 43- Fully compatible with NRF24L series 44- Pinout compatible with NRF51xxx series 45- Global separate power management 46- Operating voltage: 1.8 V ~ 3.6 V 47 48Revision History 49================ 50 51Core board 52---------- 53 54In June of 2015, Core51822 and its variant, Core51822 (B), upgraded the onboard chip to Rev3 (nRF51822_QFAC) that features 32kB RAM. 55 56.. image:: img/Core51822-Compare.jpg 57 :align: center 58 :alt: Compare 59 60Top: Core51822 61Bottom: Core51822 (B) 62 63Connections and IOs 64==================== 65 66Motherboard 67------------ 68 69.. image:: img/nrf51_ble400.jpg 70 :align: center 71 :alt: BLE400 72 731. Wireless module connector: for easily connecting modules like Core51822 742. MCU pins expansion connector 753. I2C interface 764. SPI interface 775. 5V/3.3V power input/output: usually used as power output, also common-grounding with other user board 786. USB connector: USB TO UART via onboard converter CP2102 797. Debugging interface 808. UART interface 819. Battery holder 8210. User LEDs 8311. User keys 8412. Reset button 8513. CP2102 8614. USB TO UART jumper 8715. LEDs & Keys jumper 88 89Core board 90---------- 91 92.. image:: img/Core51822-pin.jpg 93 :align: center 94 :alt: Core board pinout 95 96BLE400 dimensions 97================= 98 99.. image:: img/BLE400-size.jpg 100 :align: center 101 :alt: BLE400 size 102 103Connections and IOs 104=================== 105 106LED 107--- 108 109* LED0 (red) = P0.18 110* LED1 (red) = P0.19 111* LED2 (red) = P0.20 112* LED3 (red) = P0.21 113* LED4 (red) = P0.22 114* SUSPEND = SUSPEND 115* RXD1 = P0.9 116* TXD1 = P0.11 117 118Push buttons 119------------ 120 121* KEY1 = P0.16 122* KEY2 = P0.17 123* RESET = SWDIO 124 125I2C 126--- 127 128* SMBA = P0.02 129* SCL = P0.01 130* SDA = P0.00 131 132SPI 133--- 134 135* NSS = P0.30 136* SCK = P0.25 137* MOSI = P0.24 138* MISO = P0.23 139 140USART1 141------ 142 143* RX = P0.05 144* TX = P0.06 145* CTS = P0.07 146* RTS = P0.12 147 148UART (USB) 149---------- 150 151* RX = P0.9 152* TX = P0.11 153* CTS = P0.8 154* RTS = P0.10 155 156Programming and Debugging 157************************* 158 159Flashing 160======== 161 162Follow the instructions in the :ref:`nordic_segger` page to install 163and configure all the necessary software. Further information can be 164found in :ref:`nordic_segger_flashing`. Then build and flash 165applications as usual (see :ref:`build_an_application` and 166:ref:`application_run` for more details). 167 168Here is an example for the :zephyr:code-sample:`hello_world` application. 169 170First, run your favorite terminal program to listen for output. 171 172.. code-block:: console 173 174 $ minicom -D <tty_device> -b 115200 175 176Replace :code:`<tty_device>` with the port where the board nRF51 DK 177can be found. For example, under Linux, :code:`/dev/ttyACM0`. 178 179Then build and flash the application in the usual way. 180 181.. zephyr-app-commands:: 182 :zephyr-app: samples/hello_world 183 :board: nrf51_ble400 184 :goals: build flash 185 186Debugging 187========= 188 189Refer to the :ref:`nordic_segger` page to learn about debugging Nordic boards with a 190Segger IC. 191 192 193Testing the LEDs and buttons in the nRF51 DK 194******************************************** 195 196There are samples below that allow you to test that the buttons (switches) and LEDs on 197the board are working properly with Zephyr: 198 199- :zephyr:code-sample:`blinky` 200- :zephyr:code-sample:`button` 201- :zephyr:code-sample:`fade-led` 202- :zephyr:code-sample:`multi-thread-blinky` 203 204You can build and flash the examples to make sure Zephyr is running correctly on 205your board. The button and LED definitions can be found in 206:zephyr_file:`boards/waveshare/nrf51_ble400/nrf51_ble400.dts`. 207 208References 209********** 210 211.. target-notes:: 212 213.. _nRF51 DK website: https://www.nordicsemi.com/Software-and-Tools/Development-Kits/nRF51-DK 214.. _Nordic Semiconductor Infocenter: https://infocenter.nordicsemi.com 215.. _Waveshare Wiki BLE400: https://www.waveshare.com/wiki/BLE400 216.. _Waveshare WiKi Core51822: https://www.waveshare.com/wiki/Core51822 217.. _User manual: https://www.waveshare.com/w/upload/b/b7/NRF51822-Eval-Kit-UserManual-EN.pdf 218.. _Schematic: https://www.waveshare.com/w/upload/1/1b/BLE400-Schematic.pdf 219.. _Code samples: https://www.waveshare.com/w/upload/5/53/NRF51822-Code.7z 220.. _Core board schematics: https://www.waveshare.com/w/upload/5/57/Core51822-Schematic.pdf 221