Code Monkey home page Code Monkey logo

arduinocore-nrf52's Introduction

Arduino Core for CAMI sIoTamago on nRF52 Boards

This repository contains the Arduino BSP for nRF52840 series. Build Status

This repository contains the Arduino BSP for Adafruit Bluefruit nRF52 series:

Following boards are also included but are not officially supported:

BSP Installation

There are two methods that you can use to install this BSP.

Recommended: via Arduino Board Manager

  1. Download and install the Arduino IDE (At least v1.6.12)
  2. Start the Arduino IDE
  3. Go into Preferences

preferences

  1. Add https://raw.githubusercontent.com/cami/cami.github.io/master/package_nectis_index.json as an Additional Board Manager URL
  2. Restart the Arduino IDE
  3. Open the Boards Manager from the Tools -> Board menu and install Nectis nRF52 by CAMI&Co.

additional_board_manager

  1. Once the BSP is installed, select CAMI qibanca nectis series on nRF52840 from the Tools -> Board menu, which will update your system config to use the right compiler and settings for the nRF52.

Optional (Core Development): via git

  1. Install BSP via Board Manager as above to install compiler & tools.
  2. Delete the core folder nrf52 installed by Board Manager in Adruino15, depending on your OS. It could be
  • macOS : ~/Library/Arduino15/packages/cami_arduino/hardware/nrf52
  • Linux : ~/.arduino15/packages/cami_arduino/hardware/nrf52
  • Windows: %APPDATA%\Local\Arduino15\packages\cami_arduino\hardware\nrf52
  1. cd <SKETCHBOOK>, where <SKETCHBOOK> is your Arduino Sketch folder:
  • macOS : ~/Documents/Arduino
  • Linux : ~/Arduino
  • Windows: Documents/Arduino
  1. Create a folder named hardware/cami, if it does not exist, and change directories to it
  2. Clone this repo: git clone --recursive [email protected]:cami/ArduinoCore-nRF52.git
  3. Restart the Arduino IDE
  4. Once the BSP is installed, select CAMI qibanca nectis series on nRF52840 from the Tools -> Board menu, which will update your system config to use the right compiler and settings for the nRF52.

Adafruit's nrfutil tools

adafruit-nrfutil (derived from Nordic pc-nrfutil) is needed to upload sketch via serial port.

  • For Windows and macOS, pre-built executable binaries are included in the BSP at tools/adafruit-nrfutil/. It should work out of the box.
  • Linux user need to run follow command to install it from PyPi
$ pip3 install adafruit-nrfutil --user

Drivers

Bootloader Support

Upgrade existing Bootloader

Bluefruit's Bootloader is self-upgradable, you could upgrade to the latest Bootloader + Softdevice using the serial port within Arduino IDE.

  • Select Tools > Board > CAMI qibanca nectis series on nRF52840
  • Select Tools > Programmer > STABLE J-Link for qibanca nectis on nRF52
  • Select Tools > Burn Bootloader
  • WAIT until the process complete ~30 seconds

Note: close the Serial Monitor before you click "Burn Bootloader". Afterwards, you shouldn't close the Arduino IDE, unplug the Feather, launch Serial Monitor etc ... to abort the process. There is a high chance it will brick your device! Do this with care and caution.

Burning new Bootloader

To burn the bootloader from within the Arduino IDE, you will need the following tools installed on your system and available in the system path:

Check to make sure you can run nrfjprog from your terminal/command prompt

macOS Note At present, you will need to create a symlink in /usr/local/bin to the nrfjprog tool wherever you have added it. You can run the following command, for example:

$ ln -s $HOME/prog/nordic/nrfjprog/nrfjprog /usr/local/bin/nrfjprog

Once the tools above have been installed and added to your system path, from the Arduino IDE:

  • Select Tools > Board > CAMI qibanca nectis series on nRF52840
  • Select Tools > Programmer > J-Link for qibanca nectis series on nRF52
  • Select Tools > Burn Bootloader with the board and J-Link connected

If you wish to modify bootloader to your own need, check out its repo here Adafruit_nRF52_Bootloader

Manually Burning the Bootloader via nrfjprog

The bootloader hex file can be found at bin/bootloader run the command as follows:

$ nrfjprog --eraseall
$ nrfjprog --chiperase --program nectis_nrf52840_bootloader-6.2.0_s140_6.1.1.hex -f NRF52 -r

Credits

This core is based on ArduinoCore-nRF52 by Adafruit. This core is based on Arduino-nRF5 by Sandeep Mistry, which in turn is based on the Arduino SAMD Core.

The following libraries are used:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.