Skip to content

Upgrade to 1.3.1 and support stand alone airlift on other boards #1

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 152 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
152 commits
Select commit Hold shift + click to select a range
5533643
Fix for advertised service data not working
sandeepmistry Sep 18, 2019
693268d
Update to 1.1.3
facchinm Jun 29, 2020
e815be3
CordioHCILoop: properly terminate bleLoop thread
facchinm Jul 2, 2020
1768462
Merge pull request #92 from facchinm/cordio_begin_again
facchinm Jul 3, 2020
4e5dccd
PDU rejected due to wrong opcode set in 'Request Opcode In Error'
Jul 14, 2020
95ce2e1
Merge pull request #95 from RobertVS-MS/invalid-opcode-failure
Jul 14, 2020
3074107
Fix discovery of descriptors
polldo Jul 21, 2020
633e1aa
Merge pull request #29 from sandeepmistry/service-data-fixes
facchinm Aug 17, 2020
405c59f
Fix spelling mistake in scan examples
ippie52 Jun 8, 2020
5978985
Merge pull request #99 from Polldo/master
facchinm Aug 17, 2020
de44016
[portenta] Send service pack updates through mbed initialization
polldo Sep 2, 2020
524b3a6
Merge pull request #111 from Polldo/portenta_fix_servicepack
Sep 4, 2020
67396b0
Add apollo3 core support
Wenn0101 Sep 10, 2020
de392e0
Change allocation of default services and characteristics
polldo Oct 6, 2020
cc653c2
Merge pull request #119 from Polldo/master
Oct 6, 2020
6a9e6ae
Implement AdvertisingData class to make advertising and scan response…
polldo Sep 21, 2020
88bf0ca
Change ownership of local advertising data from GAP to BLELocalDevice
polldo Sep 25, 2020
79a9e2e
Extend advertising data allowing insertion of flags and raw data
polldo Sep 25, 2020
f848913
Perform remaining length checks on advertising parameters set methods
polldo Sep 28, 2020
d27fff5
Add API function to set advertising and scan response data
polldo Sep 29, 2020
f79e492
Change default flags on advertising data packets
polldo Oct 14, 2020
d03c74c
Refactor advertising raw data
polldo Sep 29, 2020
19e8d72
Allow setting advertising parameters multiple time
polldo Oct 2, 2020
b6424cf
Change singleton definition.
polldo Oct 7, 2020
af9e096
Set singleton methods as virtual
polldo Oct 12, 2020
3cc745f
Prevent singleton definition when fake objects are used
polldo Oct 12, 2020
b586d0d
CI - Integrate CI unit testing
polldo Jul 31, 2020
0ec9f24
CI - Add advertising data test
polldo Oct 12, 2020
86d8b51
Merge pull request #122 from Polldo/ci-test
facchinm Oct 29, 2020
c93d88d
Implement supervision timeout setting for peripherals (#101)
Oct 29, 2020
c153186
Merge pull request #112 from sparkfun/apollo3-dev
facchinm Oct 29, 2020
3ea8a09
Fix duplicate APIs due to merge conflict
facchinm Oct 29, 2020
98a7bbb
Use unique max peers definition for mbed boards and increase max peer…
giulcioffi Oct 28, 2020
9d4b5ba
Update spell-check action and skip extras/test path
giulcioffi Oct 30, 2020
fd5bc06
Merge pull request #132 from giulcioffi/spellCheckAction
facchinm Oct 30, 2020
d29f052
API: set advertising param functions return success
polldo Nov 2, 2020
2986119
Add enhanced advertising examples
polldo Nov 2, 2020
51595db
Merge pull request #133 from Polldo/api-advertising-return-type
facchinm Nov 2, 2020
77585f9
Change advertising raw data setting
polldo Nov 3, 2020
dd0db8c
Move mbed includes after Arduino.h
polldo Nov 10, 2020
947ec7b
Remove cordio vendor namespace for adapting to mbed-os-6.4.0
polldo Nov 10, 2020
70af909
Prepare namespace macro for current mbed version
polldo Nov 10, 2020
63ffef4
squashme: Adapt to both mbed cores
facchinm Nov 11, 2020
58a2f2e
Fix warnings: Put initializer list params in the same order of their …
polldo Nov 11, 2020
086d7e7
Merge pull request #140 from Polldo/adv_initializer_list_warning
facchinm Nov 11, 2020
fb4ecf1
Add python script to make the output of serial debug analyzable throu…
Nov 11, 2020
a7d52df
Merge pull request #136 from Polldo/fix_rawdata_setting
facchinm Nov 11, 2020
d6e8cd8
Merge pull request #131 from giulcioffi/AdjustMaxPeers
facchinm Nov 11, 2020
3af7cbd
Cordio: remove call to reset sequence
polldo Nov 19, 2020
4abb537
Merge pull request #143 from Polldo/master
facchinm Nov 19, 2020
840501e
Merge pull request #139 from Polldo/mbed_callback_error
facchinm Nov 30, 2020
de759d4
Fix find info resp when called on non-descriptor attributes
polldo Dec 10, 2020
953f973
Merge pull request #148 from Polldo/fix-find-info-resp
Dec 14, 2020
8a167ad
Overload writeValue to allow forced write without response
facchinm Nov 30, 2020
be365c9
Merge pull request #146 from facchinm/writeWithoutResponse
Dec 18, 2020
c663798
Initial - encrypted read
Jan 1, 2021
9cde1de
Merged master
Jan 1, 2021
e5ccd3b
Merge pull request #1 from unknownconstant/pairing
Jan 1, 2021
97571e3
With write encryptionn requirement
Jan 1, 2021
f364628
Merge pull request #2 from unknownconstant/pairing
Jan 1, 2021
fa42bb2
Write encryption & visible LTK / IRK
Jan 2, 2021
065fc1d
Merge pull request #3 from unknownconstant/pairing
Jan 2, 2021
1431f3d
Fixed packet fragmentation
Jan 2, 2021
6b56e82
Merge pull request #4 from unknownconstant/pairing
Jan 2, 2021
6ef59a5
Android bugfix
Jan 3, 2021
7ecf299
Merge pull request #5 from unknownconstant/pairing
Jan 3, 2021
0aa2e87
Handle remote DHKey confirmation before own DHKey
eltos Jan 3, 2021
750b7f1
Actually check remote DHKey
eltos Jan 3, 2021
915e914
Move LTK signaling and confirm to separate method
eltos Jan 4, 2021
f54e7a2
Add method to control and query pairing
eltos Jan 4, 2021
283038f
Merge pull request #6 from eltos/master
Jan 4, 2021
d9fb4bc
Secure random & reject unknown LTK
Jan 4, 2021
fb2b817
Merge branch 'master' into secure-random
Jan 4, 2021
83d11ed
Merge pull request #16 from unknownconstant/secure-random
Jan 4, 2021
e2868a7
Pairing code & binary confirm callbacks
Jan 7, 2021
6b08d21
Updated example sketch
Jan 7, 2021
a429760
Merge pull request #17 from unknownconstant/pairing-code
Jan 7, 2021
3dd53d1
Spellcheck fixes
Jan 24, 2021
309276a
Use authenticated GH API requests in "Compile Examples" CI workflow (…
aentinger Feb 11, 2021
4c149a2
Release 1.2.0
facchinm Feb 25, 2021
618fd8e
Support Nano RP2040 Connect
facchinm Mar 1, 2021
2ccd5ec
RP2040: enable BLE on mbed based core
facchinm Mar 8, 2021
425e62d
Update version of actions/checkout action used in Compile Examples CI…
per1234 Sep 26, 2020
3f706db
Update name of action used to compile examples in CI workflow
per1234 Sep 26, 2020
0796526
Use consistent formatting style in Compile Examples CI action
per1234 Sep 26, 2020
489830a
Use consistent indent size in Compile Examples workflow
per1234 Sep 26, 2020
ba0f381
Merge pull request #169 from per1234/update-ci
per1234 Apr 8, 2021
d59eb8c
Update architecture support property
polldo Apr 12, 2021
549e390
Merge pull request #173 from Polldo/arch-support
facchinm Apr 12, 2021
94ffe05
Merge pull request #170 from arduino-libraries/rp2040
Apr 12, 2021
55d5bf2
add access to raw advertisement data
tlossen Dec 26, 2020
a9550cf
Saturate length of retrieved advertisement data
polldo Apr 20, 2021
bd492be
Add advertisement data auxiliary functions
polldo Apr 20, 2021
b5d1b73
Add Nano RP2040 Connect to "smoke test" examples compilation CI workflow
per1234 Apr 28, 2021
b22266f
release 1.2.1
May 18, 2021
e080601
Add retrieval of manufacturer data
polldo Apr 20, 2021
3e0cae6
Merge pull request #177 from per1234/ci
per1234 Jun 20, 2021
e1b0d81
moved BLE library to markdown
LiamAljundi Aug 6, 2021
ceb3932
updated content
LiamAljundi Aug 23, 2021
21a332f
fixed suggestions from Karl's review
LiamAljundi Aug 24, 2021
7ed640c
Merge pull request #200 from LiamAljundi/liamAljundi/ble-library-migr…
karlsoderby Aug 24, 2021
236aeda
updated library properties and readme
akash73 Aug 30, 2021
b155246
fix of bad indexing in ATTClass::handleNotifyOrInd which affected BLE…
Lukas-kV Dec 8, 2021
f6b7952
Merge pull request #211 from Lukas-kV/master
facchinm Dec 9, 2021
c8de775
Replace boolean with standard bool (#42)
fpistm Dec 14, 2021
14596d4
Adding sync-labels workflow for sharing one set of labels across all …
aentinger Dec 14, 2021
af4d848
Use major version ref of `carlosperate/download-file-action` (#215)
per1234 Dec 20, 2021
95b2449
Configure Dependabot to check for outdated actions used in workflows …
per1234 Dec 20, 2021
8d4d1dc
fix potential arrary overflow problem of _recvBuffer (#214)
bigbearishappy Dec 22, 2021
ed61a17
Bluetooth trademark fix
karlsoderby Feb 23, 2022
38fe924
Merge pull request #221 from arduino-libraries/karlsoderby/bluetooth-…
karlsoderby Feb 23, 2022
57ce514
Bump actions/checkout from 2 to 3
dependabot[bot] Mar 2, 2022
ca92e1b
Merge pull request #224 from arduino-libraries/dependabot/github_acti…
per1234 Mar 2, 2022
c9bfd21
Update readme.md
bboyho Mar 19, 2022
c925d82
Add compatibility with Nicla Vision
giulcioffi Mar 24, 2022
c12774c
Release 1.2.2
giulcioffi Mar 24, 2022
bfc3202
Update api.md
jacobhylen Mar 31, 2022
b146def
Merge pull request #225 from bboyho/master
karlsoderby Apr 1, 2022
5d5aaaa
Merge pull request #228 from jacobhylen/jacobhylen/change-links
karlsoderby Apr 1, 2022
4cf376e
Unification of documentation
mklemarczyk Apr 7, 2022
da1da57
Merge pull request #231 from mklemarczyk/hotfix/docs-api-fix
facchinm Apr 11, 2022
6438f81
Bump actions/download-artifact from 2 to 3
dependabot[bot] Apr 11, 2022
785ef5c
Bump actions/upload-artifact from 2 to 3
dependabot[bot] Apr 11, 2022
130af4e
Merge pull request #234 from arduino-libraries/dependabot/github_acti…
per1234 Apr 11, 2022
7dc1f79
Merge pull request #233 from arduino-libraries/dependabot/github_acti…
per1234 Apr 11, 2022
b94ff5f
Update api.md
jacobhylen Apr 29, 2022
ad8b870
Merge pull request #235 from jacobhylen/jacobhylen/docs-maintenance
karlsoderby Apr 29, 2022
b39ac7e
Add support for NICLA VISION
giulcioffi Sep 21, 2021
8f9e785
Merge pull request #156 from unknownconstant/master
facchinm May 13, 2022
f107880
Merge pull request #183 from polldo/adv-data-retrieve
facchinm May 13, 2022
f2f73e8
Merge pull request #134 from polldo/example-enhanced-advertising
facchinm May 13, 2022
58136fc
Bugfix: memory leak caused by variables not being deleted in end(). #192
alranel May 12, 2022
3c6a53a
Respect refcounting before freeing dynamically allocated variables
alranel May 12, 2022
1223199
Call end() upon destruction
alranel May 12, 2022
f24ba26
Prevent double object deletion
alranel May 12, 2022
2b72c94
Don't double-free characteristics
facchinm May 23, 2022
afccc49
Don't terminate CordioHCIHook::getDriver() on end() for Murata chips
facchinm May 23, 2022
3003f12
Merge pull request #237 from alranel/bugfix/192-leak
facchinm May 30, 2022
f074724
Release 1.3.0
facchinm May 30, 2022
d5bc5b8
Prepend 'BLE_GATT_' to READ and WRITE enums to avoid clashes with Ard…
giulcioffi May 31, 2022
f24f335
Publish 1.3.1
facchinm May 31, 2022
9bf21b7
Fix Long Term Key Request Negative Reply Command
laviator98 Jun 9, 2022
88f45e7
porting upstream 1.1.2 -> 1.3.1 to adafruit fork. Resolving conflicts…
alwayslinux2 Jun 15, 2022
fe63060
Resolving compilation errors.
alwayslinux2 Jun 15, 2022
026b6e7
Fixing define name that should have referred to board define from boa…
alwayslinux2 Jun 15, 2022
fe27b85
Allow any board that declared HAS_ADAFRUIT_AIRLIFT to work, not just …
alwayslinux2 Jun 20, 2022
d79d68b
Bump geekyeggo/delete-artifact from 1 to 2
dependabot[bot] Oct 13, 2022
c32747b
Bump carlosperate/download-file-action from 1 to 2
dependabot[bot] Oct 25, 2022
f78b274
Merge pull request #2 from alwayslinux2/dependabot/github_actions/car…
alwayslinux2 Feb 16, 2023
08224ad
Merge pull request #1 from alwayslinux2/dependabot/github_actions/gee…
alwayslinux2 Feb 16, 2023
4e6117a
Don't crash if BLE module is not present.
alwayslinux2 Feb 16, 2023
c0af0ca
Merge branch 'master' of https://github.com/alwayslinux2/ArduinoBLE
alwayslinux2 Feb 16, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# See: https://docs.github.com/en/code-security/supply-chain-security/configuration-options-for-dependency-updates#about-the-dependabotyml-file
version: 2

updates:
# Configure check for outdated GitHub Actions actions in workflows.
# Source: https://github.com/arduino/tooling-project-assets/blob/main/workflow-templates/assets/dependabot/README.md
# See: https://docs.github.com/en/code-security/supply-chain-security/keeping-your-actions-up-to-date-with-dependabot
- package-ecosystem: github-actions
directory: / # Check the repository's workflows under /.github/workflows/
schedule:
interval: daily
labels:
- "topic: infrastructure"
38 changes: 20 additions & 18 deletions .github/workflows/compile-examples.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,24 @@
name: Compile Examples
on: [push, pull_request]
on:
- push
- pull_request

jobs:
build:
runs-on: ubuntu-latest
build:
runs-on: ubuntu-latest

strategy:
matrix:
fqbn: [
"arduino:samd:mkrwifi1010",
"arduino:samd:nano_33_iot",
"arduino:megaavr:uno2018:mode=on",
"arduino:mbed:nano33ble"
]
strategy:
matrix:
fqbn:
- arduino:samd:mkrwifi1010
- arduino:samd:nano_33_iot
- arduino:megaavr:uno2018:mode=on
- arduino:mbed:nano33ble
- arduino:mbed_nano:nanorp2040connect

steps:
- uses: actions/checkout@v1
with:
fetch-depth: 1
- uses: arduino/actions/libraries/compile-examples@master
with:
fqbn: ${{ matrix.fqbn }}
steps:
- uses: actions/checkout@v3
- uses: arduino/compile-sketches@v1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
fqbn: ${{ matrix.fqbn }}
21 changes: 13 additions & 8 deletions .github/workflows/spell-check.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
name: Spell Check

on: [push, pull_request]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v1
with:
fetch-depth: 1
- uses: arduino/actions/libraries/spell-check@master
build:
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Spell check
uses: arduino/actions/libraries/spell-check@master
with:
skip-paths: ./extras/test
138 changes: 138 additions & 0 deletions .github/workflows/sync-labels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
# Source: https://github.com/arduino/tooling-project-assets/blob/main/workflow-templates/sync-labels.md
name: Sync Labels

# See: https://docs.github.com/en/actions/reference/events-that-trigger-workflows
on:
push:
paths:
- ".github/workflows/sync-labels.ya?ml"
- ".github/label-configuration-files/*.ya?ml"
pull_request:
paths:
- ".github/workflows/sync-labels.ya?ml"
- ".github/label-configuration-files/*.ya?ml"
schedule:
# Run daily at 8 AM UTC to sync with changes to shared label configurations.
- cron: "0 8 * * *"
workflow_dispatch:
repository_dispatch:

env:
CONFIGURATIONS_FOLDER: .github/label-configuration-files
CONFIGURATIONS_ARTIFACT: label-configuration-files

jobs:
check:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v3

- name: Download JSON schema for labels configuration file
id: download-schema
uses: carlosperate/download-file-action@v2
with:
file-url: https://raw.githubusercontent.com/arduino/tooling-project-assets/main/workflow-templates/assets/sync-labels/arduino-tooling-gh-label-configuration-schema.json
location: ${{ runner.temp }}/label-configuration-schema

- name: Install JSON schema validator
run: |
sudo npm install \
--global \
ajv-cli \
ajv-formats

- name: Validate local labels configuration
run: |
# See: https://github.com/ajv-validator/ajv-cli#readme
ajv validate \
--all-errors \
-c ajv-formats \
-s "${{ steps.download-schema.outputs.file-path }}" \
-d "${{ env.CONFIGURATIONS_FOLDER }}/*.{yml,yaml}"

download:
needs: check
runs-on: ubuntu-latest

strategy:
matrix:
filename:
# Filenames of the shared configurations to apply to the repository in addition to the local configuration.
# https://github.com/arduino/tooling-project-assets/blob/main/workflow-templates/assets/sync-labels
- universal.yml

steps:
- name: Download
uses: carlosperate/download-file-action@v2
with:
file-url: https://raw.githubusercontent.com/arduino/tooling-project-assets/main/workflow-templates/assets/sync-labels/${{ matrix.filename }}

- name: Pass configuration files to next job via workflow artifact
uses: actions/upload-artifact@v3
with:
path: |
*.yaml
*.yml
if-no-files-found: error
name: ${{ env.CONFIGURATIONS_ARTIFACT }}

sync:
needs: download
runs-on: ubuntu-latest

steps:
- name: Set environment variables
run: |
# See: https://docs.github.com/en/actions/reference/workflow-commands-for-github-actions#setting-an-environment-variable
echo "MERGED_CONFIGURATION_PATH=${{ runner.temp }}/labels.yml" >> "$GITHUB_ENV"

- name: Determine whether to dry run
id: dry-run
if: >
github.event_name == 'pull_request' ||
(
(
github.event_name == 'push' ||
github.event_name == 'workflow_dispatch'
) &&
github.ref != format('refs/heads/{0}', github.event.repository.default_branch)
)
run: |
# Use of this flag in the github-label-sync command will cause it to only check the validity of the
# configuration.
echo "::set-output name=flag::--dry-run"

- name: Checkout repository
uses: actions/checkout@v3

- name: Download configuration files artifact
uses: actions/download-artifact@v3
with:
name: ${{ env.CONFIGURATIONS_ARTIFACT }}
path: ${{ env.CONFIGURATIONS_FOLDER }}

- name: Remove unneeded artifact
uses: geekyeggo/delete-artifact@v2
with:
name: ${{ env.CONFIGURATIONS_ARTIFACT }}

- name: Merge label configuration files
run: |
# Merge all configuration files
shopt -s extglob
cat "${{ env.CONFIGURATIONS_FOLDER }}"/*.@(yml|yaml) > "${{ env.MERGED_CONFIGURATION_PATH }}"

- name: Install github-label-sync
run: sudo npm install --global github-label-sync

- name: Sync labels
env:
GITHUB_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
# See: https://github.com/Financial-Times/github-label-sync
github-label-sync \
--labels "${{ env.MERGED_CONFIGURATION_PATH }}" \
${{ steps.dry-run.outputs.flag }} \
${{ github.repository }}
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@

.DS_Store
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

[![Compile Examples Status](https://github.com/arduino-libraries/ArduinoBLE/workflows/Compile%20Examples/badge.svg)](https://github.com/arduino-libraries/ArduinoBLE/actions?workflow=Compile+Examples) [![Spell Check Status](https://github.com/arduino-libraries/ArduinoBLE/workflows/Spell%20Check/badge.svg)](https://github.com/arduino-libraries/ArduinoBLE/actions?workflow=Spell+Check)

Enables BLE connectivity on the Arduino MKR WiFi 1010, Arduino UNO WiFi Rev.2, Arduino Nano 33 IoT, and Arduino Nano 33 BLE.
Enables Bluetooth® Low Energy connectivity on the Arduino MKR WiFi 1010, Arduino UNO WiFi Rev.2, Arduino Nano 33 IoT, and Arduino Nano 33 BLE.

This library supports creating a BLE peripheral and BLE central mode.
This library supports creating a Bluetooth® Low Energy peripheral & central mode.

For the Arduino MKR WiFi 1010, Arduino UNO WiFi Rev.2, and Arduino Nano 33 IoT boards, it requires the NINA module to be running [Arduino NINA-W102 firmware](https://github.com/arduino/nina-fw) v1.2.0 or later.

Expand Down
Loading