Skip to content

bosch-io/arduino-nRF5

 
 

Repository files navigation

Arduino Core for Nordic Semiconductor nRF5 based boards

Build Status

Program your Nordic Semiconductor nRF51 or nRF52 board using the Arduino IDE.

Does not require a custom bootloader on the device.

Supported boards

nRF52

nRF51

Installing

Board Manager

  1. Download and install the Arduino IDE (At least v1.6.12)
  2. Start the Arduino IDE
  3. Go into Preferences
  4. Add https://sandeepmistry.github.io/arduino-nRF5/package_nRF5_boards_index.json as an "Additional Board Manager URL"
  5. Open the Boards Manager from the Tools -> Board menu and install "Nordic Semiconductor nRF5 Boards"
  6. Select your nRF5 board from the Tools -> Board menu

OS Specific Setup

OS X

No additional setup required.

Linux

No additional setup required.

Windows
Driver Setup for Segger J-Link
  1. Download Zadig
  2. Plugin Segger J-Link or DK board
  3. Start Zadig
  4. Select Options -> List All Devices
  5. Select J-Link (Interface 2) from the device dropdown
  6. Click Replace Driver

NOTE: To roll back to the original driver go to: Device Manager -> Open Device -> Update Driver

Flashing a SoftDevice

  1. cd <SKETCHBOOK>, where <SKETCHBOOK> is your Arduino Sketch folder:
  • OS X: ~/Documents/Arduino
  • Linux: ~/Arduino
  • Windows: ~/Documents/Arduino
  1. Create the following directories: tools/nRF5FlashSoftDevice/tool/
  2. Download nRF5FlashSoftDevice.jar to <SKETCHBOOK>/tools/nRF5FlashSoftDevice/tool/
  3. Restart the Arduino IDE
  4. Select your nRF board from the Tools -> Board menu
  5. Select a SoftDevice from the Tools -> "SoftDevice: " menu
  6. Select a Programmer (J-Link, ST-Link V2, or CMSIS-DAP) from the Tools -> "Programmer: " menu
  7. Select Tools -> nRF5 Flash SoftDevice
  8. Read license agreement
  9. Click "Accept" to accept license and continue, or "Decline" to decline and abort
  10. If accepted, SoftDevice binary will be flashed to the board

From git (for core development)

  1. Follow steps from Board Manager section above
  2. cd <SKETCHBOOK>, where <SKETCHBOOK> is your Arduino Sketch folder:
  • OS X: ~/Documents/Arduino
  • Linux: ~/Arduino
  • Windows: ~/Documents/Arduino
  1. Create a folder named hardware, if it does not exist, and change directories to it
  2. Clone this repo: git clone https://github.com/sandeepmistry/arduino-nRF5.git sandeepmistry/nRF5
  3. Restart the Arduino IDE

BLE

This Arduino Core does not contain any Arduino style API's for BLE functionality. All the relevant Nordic SoftDevice (S110, S130, S132) header files are included build path when a SoftDevice is selected via the Tools menu.

Recommend BLE Libraries

  • BLEPeripheral
    • v0.3.0 and greater, available via the Arduino IDE's library manager.
    • Supports peripheral mode only.

Credits

This core is based on the Arduino SAMD Core and licensed under the same GPL License

The following tools are used:

About

Arduino Core for Nordic Semiconductor nRF5 based boards

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 94.5%
  • C++ 4.0%
  • Other 1.5%