Waveshare BLE400¶
Overview¶
BLE400 is a motherboard designed for BLE Bluetooth 2.4G Wireless Module. Used together with Core board.
Supported Features¶
Motherboard¶
Onboard battery holder, multi power supplies are available
All the IOs are accessible for easy expansion
Integrates CP2102 for debugging
LEDs and user keys, compatible with other official boards, easy to use
Core board¶
Onboard chip: nRF51822
Communication distance (open outdoor 1M data rate): 30m
Frequency range: 2.4GHz
Operating voltage: 2.0V ~ 3.6V
Operating temperature: -40℃ ~ 85℃
Expansion pinheader: all the I/Os except P0.26 and P0.27
Pinheader pitch: 2.00mm
Antenna: onboard antenna
Features¶
2.4 GHz multiprotocol RF transceiver
ARM® Cortex™-M0 32 bit processor
128 bit AES HW encryption
256kB flash & 16kB RAM
Programmable Peripheral Interconnect (PPI)
Digital interfaces: SPI, I2C, UART
10 bit ADC
Programmable output power: -20 to +4 dBm
Independent application development and protocol stack
Fully compatible with NRF24L series
Pinout compatible with NRF51xxx series
Global separate power management
Operating voltage: 1.8 V ~ 3.6 V
Revision History¶
Core board¶
2015.06, Core51822 upgrades the onboard chip to Rev3, features 32kB RAM, supports higher version SDK, and all the demo codes are still compatible with the Rev2 ones.
Connections and IOs¶
Motherboard¶
Wireless module connector: for easily connecting modules like Core51822
MCU pins expansion connector
I2C interface
SPI interface
5V/3.3V power input/output: usually used as power output, also common-grounding with other user board
USB connector: USB TO UART via onboard convertor CP2102
Debugging interface
UART interface
Battery holder
User LEDs
User keys
Reset button
CP2102
USB TO UART jumper
LEDs & Keys jumper
Core board¶
BLE400 dimensions¶
Connections and IOs¶
LED¶
LED0 (red) = P0.18
LED1 (red) = P0.19
LED2 (red) = P0.20
LED3 (red) = P0.21
LED4 (red) = P0.22
SUSPEND = SUSPEND
RXD1 = P0.9
TXD1 = P0.11
Push buttons¶
KEY1 = P0.16
KEY2 = P0.17
RESET = SWDIO
I2C¶
SMBA = P0.02
SCL = P0.01
SDA = P0.00
SPI¶
NSS = P0.30
SCK = P0.25
MOSI = P0.24
MISO = P0.23
USART1¶
RX = P0.05
TX = P0.06
CTS = P0.07
RTS = P0.12
UART (USB)¶
RX = P0.9
TX = P0.11
CTS = P0.8
RTS = P0.10
Programming and Debugging¶
Flashing¶
Follow the instructions in the Nordic nRF5x Segger J-Link page to install and configure all the necessary software. Further information can be found in Flashing. Then build and flash applications as usual (see Building an Application and Run an Application for more details).
Here is an example for the Hello World application.
First, run your favorite terminal program to listen for output.
$ minicom -D <tty_device> -b 115200
Replace <tty_device>
with the port where the board nRF51 DK
can be found. For example, under Linux, /dev/ttyACM0
.
Then build and flash the application in the usual way.
# From the root of the zephyr repository
west build -b nrf51_ble400 samples/hello_world
west flash
Debugging¶
Refer to the Nordic nRF5x Segger J-Link page to learn about debugging Nordic boards with a Segger IC.
Testing the LEDs and buttons in the nRF51 DK¶
There are samples below that allow you to test that the buttons (switches) and LEDs on the board are working properly with Zephyr:
You can build and flash the examples to make sure Zephyr is running correctly on your board. The button and LED definitions can be found in boards/arm/nrf51_ble400/nrf51_ble400.dts.