Skip to content

Releases: adafruit/Adafruit_nRF52_Arduino

0.15.1 - 2019.12.31

31 Dec 09:30
Compare
Choose a tag to compare
  • Print::availableForWrite() return int instead of size_t
  • Migrate CI from travis to actions

0.15.0 - 2019.12.30

30 Dec 08:38
Compare
Choose a tag to compare

Core

  • Add Clue variant
  • Clean up warnings, thanks to @henrygab
  • Enhance Software Timer

BLE

  • Increase sd attribute table size from 0x800 to 0xC00, increase linker memory for SD 840 from 3400 to 6000
  • Add Adafruit BLE Service library (used by Circuit Playground Bluefruit App): Temperature, Addressable Pixel, Accel, Button
    • Add cplay_ble.ino example sketch
  • Change BLEUuid begin's return type to bool
  • BLECharacteristic allow user to set buffer

USB

0.14.6 - 2019.10.30

30 Oct 16:50
Compare
Choose a tag to compare
  • Added power switch pin for Circuit Playground Bluefruit
  • Make min/max templates

0.14.5 - 2019.10.21

21 Oct 05:40
Compare
Choose a tag to compare
  • Added Itsy nRF52840 Express support
  • Replace legacy SPI by SPIM3 with maximum 32Mhz for nRF52840
  • Added support for 2nd I2C interface aka Wire1
  • Macro defines clean up
    • remove ARDUINO_FEATHER52
    • remove ARDUINO_NRF52_FEATHER use either ARDUINO_NRF52832_FEATHER or ARDUINO_NRF52840_FEATHER
    • use ARDUINO_NRF52840_CIRCUITPLAY for Circuit Playground Bluefruit
  • ARDUINO_NRF52840_CIRCUITPLAY defined for circuit playground bluefruit
  • Updated nrfx module to 1.7.2
  • Fixed more warnings. better describe flash caching, PR #347 thanks to @henrygab
  • Improve tinyUSB thanks to @kaysievers
    • Fixed warnings
    • Allows configuration of power setting
    • Allows to set USB Manufacturer/product ID
    • Allow to set configuration descriptor buffer
  • Fixed missing bootloader binaries

0.14.0 - 2019.09.27

27 Sep 05:39
Compare
Choose a tag to compare
  • Core
    • Ada Callback task dynamically resize its queue size on demand. Also invoke function immediately if callback failed to allocate memory for deferring.
    • Changde stack size for following task
      • Task loop : from 2566 to 2564
      • Task Callback : from 2564 to 2563
      • Task USBD : from 150 to 200
      • Task BLE : from 2566 to 2565
    • Added _sbkr() to handle heap overflowed
  • BLEUart
    • Added setRxOverflowCallback()
    • Added deferred option for setRxCallback()
  • Update image_upload example to work with both nRF52832 & nRF52840 with maximum throughput, also support 16 or 24-bit color
  • Update bootloader binary to to 0.2.13 version (upgrade is optional)
  • Enhance BLEDis with new characteristic : system id, reg cert list, pnp id. PR #336 Thanks to @elral
  • Fixed SPI definition for circuitplayground Bluefruit

0.13.0

23 Aug 05:42
Compare
Choose a tag to compare

0.13.0 - 2019.08.22

  • Update bootloader binary to to 0.2.12 version (upgrade is optional)
  • Added Circuit Playground Blueffuit nRF52840 support
  • Added variant support for Particle Xenon, PR #317
  • Added PDM support
  • Switch compiler optimization from -Os to -Ofast
  • Improve BLEConnection throughput
    • Added requestPHY() to initate PHY switching to 2 MB, 1MB
    • Added requestDataLengthUpdate() to initate Data Length Update process
    • Added requestMtuExchange() to iniate MTU exchange procoess
    • Added requestConnectionParameter() to initate connection parameter process
  • Updated throughput and added central_throughput sketch (WIP)
  • Added image_upload example
  • Enhance mutex lock/unlock for fifo used by bleuart
  • Fixed multiples warning with tinyUSB descriptor template, PR #322
  • Fixed typo, PR #326

0.12.0

05 Aug 04:49
Compare
Choose a tag to compare

0.12.0 - 2019.08.05

  • Update tinyusb core to support webUSB & vendor class
  • Added a couple delete operators to make std=gnu++14/17, PR #312 thanks to @kevinfrei
  • Fix Serial.read() return clean 8-bit, PR #308 thanks to @pyro9
  • Added availableForWrite(), PR #311 thanks to @pyro9

0.11.1

10 Jul 15:08
Compare
Choose a tag to compare
  • Update tinyusb core to support USB MIDI
  • Refactor Ada Callback, use ISCR to detect isr context. Use function instead of macro
  • Implement #240 run travis test with all example sketches
  • Fixed auto-start of advertising when central is connected, thanks to @ogatatsu PR #268
  • Added Tone()/noTone() functions
  • Travis-ci builds all sketches when commit code
  • Fixed setAppearance/getAppearance() typo, thanks to @paulmand3l PR #292
  • Fixed rssi_proximity_peripheral sketch, thanks to @dicobrazz PR #295
  • Fixed doc typo, thanks to @yvadher PR #296
  • Fixed HID usage code location comment in exmaple sketch, thanks to @stefandz PR #297
  • Fixed #277 conn LED doesn't stop when scanner is time out
  • Added connection handle to Bluefruit.connParied()

0.11.0

06 Jun 09:34
a697092
Compare
Choose a tag to compare
  • Rework USB driver to support Adafruit_TinyUSB library (support HID and MSC)
  • Added Metro nRF52840 Express
  • Update bootloader binaries to 0.2.11
  • Rework Filesystem
    • Seperate LittleFS and InternalFS into Adafruit_LittleFS and InternalFileSystem
    • Remove ExternalFS in favor of using Adafruit_QSPI and Adafruit_SPIFlash library
  • Update nrfx to 1.6.2
  • Fixed #250 wrong values for g_ADigitalPinMap, thanks to @henrygab
  • Fixed interrupts for device with multiple I/O Port, thanks to MacGyverNL PR #261
  • Update adc_vbat.ino sketch to work with nrf52840, thanks to @pyro9
  • Extend SoftwareTimer with option to make it non-repeating, add reset function & ISR-safe functions, thanks to @MacGyverNL PR #260
  • Fixed connection handle in BLEHidAdafruit single connection api, thanks to @ogatatsu PR #267
  • Fixed spelling & Add Environmental Sensing GATT Service and UV Index GATT Characteristics UUID, thanks to @sayanee
  • Fixed #276 rename macro FILE_READ/WRITE to enum FILE_O_READ/WRITE
  • Upgrade compiler toolchain from gcc 5.2 2015q2 to gcc 7 2017q4
  • Rename hid client setProtocolMode() to setBootMode()
  • Removed rtos_idle_callback(), sketch define vApplicationIdleHook() if needed
  • enhance Serial.available()/write() to prevent blocking wait without yield/delay
  • Clean up compiler warnings

0.10.1

08 Apr 12:12
Compare
Choose a tag to compare

This release added multiple concurrent peripheral connections support, allow Bluefruit device to multiple central (phones/PC) simultaneously. It introduces new BLE class: BLEPeriph, BLEConnection, remove BLEGap, refactor/rename/move functions and callbacks.

  • Fixed Servo detach issue
  • Fixed pulseIn() compile issue: implement countPulseASM() using C instead of ASM
  • Update bootloader to 0.2.9
    • Fixed OTA issue with latest BLE5 central such as iPhone X
    • Fixed incomplete writes on Windows. Updated tinyusb to handle write10 completion, and use it for finalizing the DFU process
  • Fixed various warnings, thanks @brijohn
  • Added ARDUINO_NRF52832_FEATHER for feather 832, ARDUINO_NRF52840_FEATHER for feather 840, ARDUINO_NRF52_FEATHER for both
  • Fixed an memory leak with LFS, also extend to allow it to be used with SPI flash on other boards. Thanks @jeremypoulter
  • Seperate OTA DFU service from Bluefruit.begin(), sketch must explicit add it if needed.
  • Added multiple peripheral-role connections support, example sketch is at examples/Peripherals/bleuart_multi
  • Introduce BLEPeriph class (Bluefruit.Periph) to mange peripheral role's connection
    • setConnInterval(), setConnIntervalMS(), setConnSupervisionTimeout(), setConnSupervisionTimeoutMS()
    • setConnectCallback(), setDisconnectCallback()
  • Bluefruit
    • Bluefruit.getPeerAddr() is replaced by BLEConnection's getPeerAddr()
    • Bluefruit.connInterval() is replaced by BLEConnection's getConnInterval()
    • Bluefruit.Central.disconnect() is repalced by Bluefruit.disconnect()
    • Bluefruit.begin() return type is changed from err_t to bool
    • Bluefruit.setConnectCallback()/setDisconnectCallback() are replaced by BLEPeriph's setConnectCallback()/setDisconnectCallback()
  • Introduce BLEConnection class (Bluefruit.Connection(conn)) to mange both peripheral and central connections
    • Added setRssiCallback(), monitorRssi(), getRssi(), stopRssi() for tracking rssi of a connection. rssi_poll and rssi_callback are added as example sketches
  • Remove BLEGap, API functions are taken by Bluefruit, BLEPeriph, BLECentral, BLEConnection
    • Gap.setAddr()/getAddr() are replaced by Bluefruit.setAddr()/getAddr()
    • Gap.requestPairing() is replaced by Bluefruit.requestPairing(), conn_handle parameter is also added
    • Most of other functions of BLEGap are replaced by BLEConnection's one
  • BLECharacteristic
    • Change callback signature's parameter from BLECharacteristic& to BLECharacteristic*
    • conn_handle is added to all callbacks to support multiple peripheral's link
    • Use AdaCallback thread for BLECharacteristic callbacks
    • Support LONG WRITE a.k.a send more than MTU ( default = 20 bytes) per request. This fixed issue #91, #220
    • Fixed read32(), thanks @techno
    • Removed offset parameter in write callback signature
  • BLEUart
    • Added conn_handle to API and callbacks
    • Removed auto flush TXD() with timer, user must call flushTXD() should bufferTXD() is enabled.
  • BLEHidAdafruit
    • Removed keyboardReport() variant with flat keycode parameters
    • Added conn_handle parameter to keyboard led callback