Waveshare BLE400

Hardware

Platform Nordic nRF51: The Nordic nRF51 Series is a family of highly flexible, multi-protocol, system-on-chip (SoC) devices for ultra-low power wireless applications. nRF51 Series devices support a range of protocol stacks including Bluetooth Smart (previously called Bluetooth low energy), ANT and proprietary 2.4GHz protocols such as Gazell.

Microcontroller NRF51822
Frequency 32MHz
Flash 256KB
RAM 32KB
Vendor Waveshare

Configuration

Please use waveshare_ble400 ID for board option in “platformio.ini” (Project Configuration File):

[env:waveshare_ble400]
platform = nordicnrf51
board = waveshare_ble400

You can override default Waveshare BLE400 settings per build environment using board_*** option, where *** is a JSON object path from board manifest waveshare_ble400.json. For example, board_build.mcu, board_build.f_cpu, etc.

[env:waveshare_ble400]
platform = nordicnrf51
board = waveshare_ble400

; change microcontroller
board_build.mcu = nrf51822

; change MCU frequency
board_build.f_cpu = 32000000L

Uploading

Waveshare BLE400 supports the next uploading protocols:

  • blackmagic
  • jlink
  • nrfjprog
  • stlink

Default protocol is jlink

You can change upload protocol using upload_protocol option:

[env:waveshare_ble400]
platform = nordicnrf51
board = waveshare_ble400

upload_protocol = jlink

Debugging

PIO Unified Debugger - “1-click” solution for debugging with a zero configuration.

Warning

You will need to install debug tool drivers depending on your system. Please click on compatible debug tool below for the further instructions and configuration information.

You can switch between debugging Tools & Debug Probes using debug_tool option in “platformio.ini” (Project Configuration File).

Waveshare BLE400 does not have on-board debug probe and IS NOT READY for debugging. You will need to use/buy one of external probe listed below.

Compatible Tools On-board Default
Black Magic Probe   Yes
J-LINK    
ST-LINK    

Frameworks

Name Description
Arduino Arduino Wiring-based Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.