Skip to content

Releases: RAKWireless/RAK-nRF52-Arduino

I2S support play fom SD card

14 Oct 02:09

Choose a tag to compare

fix compile bug and add i2c buffer length

21 Sep 09:15

Choose a tag to compare

v1.3.2

fix compile bug and add i2c buffer length

Debug I2S and support analog mic

31 Aug 02:58

Choose a tag to compare

v1.3.1

debug I2S to 1.3.1

Update Base to 1.3.0 and add I2S/PDM

26 Aug 08:49

Choose a tag to compare

Update Base to 1.3.0 and add I2S/PDM

Fix Serial assignments and examples

17 Oct 12:44

Choose a tag to compare

1.0.1

Fix wrong version number in platform.txt

Update to Adafruit nRF52 BSP V1.0.0

08 Oct 09:07

Choose a tag to compare

Fix build.mcu in boards.txt

0.24.0 - 2021.07.19

21 Jul 07:24

Choose a tag to compare

All credits for this update go to the Adafruit team

  • Update included TinyUSB libraries to 1.3.0
  • Fix CryptoCell usage issue that prevent mcu to go to sleep causing high power consumption
  • separate pairing_passkey with and without arcada
  • Add back Raytac MDBT50Q - RX variant
  • Remove Bluefruit.setName() from most examples for it to use default board name
  • Update CMSIS from 5.4.0 to 5.7.0
  • Fix build with TensorFlowLite v2.4.0
  • Update included Adafruit_nRFCrypto to 0.0.5
  • Update included Adafruit_TinyUSB_Arduino to 1.1.0
  • Update include bootloader binaries to 0.6.0
  • Enable usage of DSP libmath
  • Added/Ported tf4micro-motion-kit project
  • Update BLEUuid
    • Add from string style constructor like ArduinoBLE
    • Add toString() function
  • Update BLECharacteristic
    • Add constructor with properties
    • Add constructor with max_len and fixed len
    • Add writeFloat() and readFloat()

0.22.1 - 2021.06.02

02 Jun 07:40

Choose a tag to compare

  • Add option to flash RAK4631 Bootloader directly from Arduino IDE
  • Updated examples to work with latest changes regarding TinyUSB
    All credits for this update go to the Adafruit team
  • Fix warnings "changing start of section .bss by 4 bytes"
  • Fix various warnings when compiling with all warnings.
  • Bump included TinyUSB to 1.0.3
  • remove Raytac MDBT50Q - RX variant
  • Update included bootloader binaries from 0.3.2 to 0.5.0
  • Use CMSIS 5.4 header from tool package
  • Fix nrfjprog file not file on windows.
  • Update included adafruit-nrfutil binaries for windows and macos to version 0.5.3post16

0.22.0 - 2021.05.23

23 May 02:23

Choose a tag to compare

All credits for this update go to the Adafruit team
This version implement comprehensive LESC and Legacy pairing using dynamic & static Passkey.

  • Support static passkey (Legacy only)
  • Support LESC on nRF52840 using hardware-accelerated ARM CryptoCell CC310 provided by Adafruit_nRFCypto. The library is included as submodule and released together with the BSP.
  • Rework bonding mechanism to use IRK for peer finding. It is advisable to run clearbonds example to clean up bond files of previous version
  • Add setPins() to SPI class
  • Fix bug that with saving cccd data
  • Add more pinMode type: INPUT_SENSE_HIGH, INPUT_SENSE_LOW, OUTPUT_S0S1 etc ...
  • Optimize mutex usage in UART
  • Add analogReadVDD() function
  • Update itoa.c for compiling with c++17
  • Fix BLEBeacon endian for major and minor
  • Fix compiling with MIDI v5, adding stub for BLEMidi's beginTransmission() and endTransmission()
  • Update BSP core to work with Adafruit_TinyUSB_Arduino version 1.0.0

BLESecurity

A new class BLESecurity (access with Bluefruit.Security) is added to handle security and pairing.

  • setPIN() to set static passkey, this will force to use Legacy Pairing
  • setIOCaps() to congiure IO capacities
  • setMITM() to enable/disable Man in The Middle protection (passkey), it is auto-enabled when using passkey
  • setPairPasskeyCallback() to register callback for displaying pairing passkey to user
  • setPairCompleteCallback() to register callback for the result of pairing procedure (succeeded or failed)
  • setSecuredCallback() to register callback which invoked when connection is secured. This happens after he pairing procedure is complete, or we re-connect with preivously bonded peer device

Other Changes

BLECentral

  • will automatically use stored Long Term Key to secure connection if paired/bonded with device previously

Bluefruit

  • Bluefruit::requestPairing() is removed, please use the BLEConnection::requestPairing() instead
  • Bluefruit::connPaired() is removed, please use BLEConnection::secure() instead
  • Default Device name is USB_PRODUCT if available e.g CLUE, Circuit Playground Bluefruit, Feather nRF52840 Express etc ...
  • Rename function for consistency BLEPeriph's setSlaveLatency() to setConnSlaveLatency()

BLEService

  • Added setPermission()

BLEConnection

  • BLEConnection::requestPairing() is now non-blocking, it will return right after sending request to peer device. Previously it is blocked until the pairing process is complete.
  • Added BLEConnection::secured() to check if the connection is secured/encrypted
  • Added BLEConnection::bonded() to check if we store Longterm Key with current peer
  • Removed BLEConnection:paried(), user should either use secured() or bonded() depending on the context
  • If bonded, getPeerAddr() will return peer public address instead of random address.
  • Rename getConnSupervisionTimeout() to getSupervisionTimeout()

New Example Sketches

  • pairing_pin to use static PIN for peripheral role
  • pairing_passkey to use dyanmic Passkey for pairing. On Arcada compatible device such as CLUE or Circuit Playground Bluefruit, TFT display will also be used to display passkey.
  • cental_pairing similar to pairing_passkey but for nRF running central role
  • ancs_arcada for displaying ancs on arcada such CLUE and/or CPB.
  • arduino_science_journal add sketch to run with Arduino Science Journal
  • adv_AdafruitColor example to tie Arduino to CircuitPython BLE color

Minor Update

12 Apr 02:47
37e1ced

Choose a tag to compare

  • Make BSP compatible with the new SX126x-Arduino V2.0.0 library
  • Update LoRa/LoRaWAN examples for the new SX126x-Arduino V2.0.0 library
  • Add new WisBlock module examples