nRF52840 Development with Arduino and CircuitPython

Contributors: jimblom
Favorited Favorite 4


Whether you're a novice programmer learning how to program or a seasoned expert looking for a quick rapid-prototyping development environment, Arduino and CircuitPython can be a great choice for programming environments/languages. Pairing those simple programming languages with a powerful microcontroller, like the nRF52840 takes them to an entirely new level -- a level with Bluetooth capability!

In this tutorial we'll demonstrate how to equip your nRF52840 and development computer with the firmware and software required to develop in either Arduino or CircuitPython. Both of these languages support digital I/O in/out, analog inputs, serial buses, and, most key to the nRF52840, support for Bluetooth Low Energy (BLE).

Required Materials

SparkFun Pro nRF52840 Mini - Bluetooth Development Board

SparkFun Pro nRF52840 Mini - Bluetooth Development Board


We'll be mostly focusing on using these programming tools on the SparkFun Pro nRF52840 Mini, but any other nRF52840 should be adaptable. The only caveat is the Adafruit nRF52840 Bootloader should be installed on the nRF52840.

Suggested Reading

If you haven't read through it already, we recommend following along with our SparkFun Pro nRF52840 Mini Hookup Guide before continuing on. This tutorial will familiarize you with the hardware features of the board as well as the intricacies of the DFU/UF2 bootloader.

SparkFun Pro nRF52840 Mini Hookup Guide

November 29, 2018

A hardware overview and hookup guide for the SparkFun Pro nRF52840 Mini -- a breakout for Nordic's impossibly cool Bluetooth/ARM Cortex M4 SoC.