forked from arduino-libraries/ArduinoBLE
-
Notifications
You must be signed in to change notification settings - Fork 1
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
alwayslinux2
wants to merge
152
commits into
adafruit:master
Choose a base branch
from
alwayslinux2:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CordioHCILoop: properly terminate bleLoop thread
3.4.1.1 of ATT protocol spec suggests that in the ATT_ERROR_RSP, the Request Opcode In Error should be set to the request that generated the error. In this case it looks like it should actually be ATT_FIND_BY_TYPE_VALUE_REQ (ATT_OP_READ_BY_GROUP_REQ)
…de-failure PDU rejected due to wrong opcode set in 'Request Opcode In Error'
The 'nextCharacteristic' selection was wrong. Thus, when using nextCharacteristic for taking the end handle for the request, the end handle of the current characteristic was taken. This resulted in the following condition to be true: (reqStartHandle > reqEndHandle) For such reason, in many cases the descriptors were not retrieved. Specifically, all the characteristics of a service, except the last one, will result without descriptors. This will result in an error where trying to subscribe to a characteristic which has a descriptor before the CCCD one. (for instance the User Description Descriptor) In case the subscription is made on a characteristic having the CCCD as first descriptor there are no errors, because if no descriptors are found the write request, needed for the subscription, will be made to the char value handle + 1.
…ta-fixes Fix for advertised service data not working
Fix discovery of descriptors
The mbed ble stack is initialized at the beginning in order to exploit the service pack transfer. Once it has been initialized, the queue used to dispatch the ble events is stopped. At this point the mbed stack is no more used and ArduinoBLE exploits directly the low level uart transport layer.
…vicepack [portenta] Send service pack updates through mbed initialization
Default local characteristics and services are now allocated in the HEAP. This change is needed for CI integration. Indeed, if these attributes are allocated in the STACK they cannot be freed by the 'delete' statement used in their destructors. Downside: their memory usage will not be counted in the estimated amount of RAM occupated by a resulting program that includes this library.
Change allocation of default services and characteristics
… data more flexible
Now all the set methods of advertising data parameters return a bool value. This bool indicates whether the parameter has been correctly set or not, depending on the size of the passed value. A remaining length parameter of advertising data has been introduced. It can be publicly read, it indicates how many bytes can be still written into the packet.
In BLELocalDevice constructor, the flags field of the advertising data is set to a default value. If a new advertising data is passed to BLELocalDevice, then: if it has no flags -> default flags are set (if there is enough space) if it already has flags -> nothing happens, the already set flags are used
Add raw data class. When an AdvertisingData object has a rawData parameter set, the only advertised data will be the rawData parameter itself.
If the new value for the parameter is not valid, because too large, then the old value will remain the actual value of the parameter.
This change is needed for mocking BLE classes in the CI environment
This change allows fake classes to override methods during unit testing.
This change allows to implement and use fake objects during unit testing Classes to be mocked will be extended by fake classes. Each fake class will define a fake singleton instance
Each class under test will have a dedicated test file. Each test file is placed in a dedicated folder in extras/test/src . Such dedicated folder will also contain the mock (Fake) objects needed by the test. Finally, an executable file will be generated for each test.
Integrate CI unit testing
…ies#101) Peripherals having the supervision timeout set will execute a parameter update request when some central tries to connect to them. Allowed supervisionTimeout value range: 0x000A to 0x0C80 Actual Timeout: (supervisionTimeout * 10 ms) Warning: supervision timeout in milliseconds shall be larger than : (1 + Connection_Latency) * Connection_Interval_Max * 2, where Connection_Interval_Max is given in milliseconds. Example scenario: - peripheral has supervision timeout set to 1000 -> (actual timeout = 1000 * 10ms) - central connects to the peripheral with a supervision timeout of 200. - peripheral execute a parameter update request, putting supervision timeout at 1000. - central eventually updates the connection parameters accordingly and sends a response containing the result of the update.
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2 to 3. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](actions/upload-artifact@v2...v3) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
…dabot/github_actions/actions/upload-artifact-3 Bump actions/upload-artifact from 2 to 3
…dabot/github_actions/actions/download-artifact-3 Bump actions/download-artifact from 2 to 3
Bullet points in ### Parameters and ### Returns.
…ocs-maintenance Update api.md
BLE Pairing and Encryption
Adv data retrieve
…-advertising Add enhanced advertising examples
Bugfix: memory leak caused by variables not being deleted in end()
Kindly See the Docs, https://www.bluetooth.com/specifications/specs/core-specification-4-2/ In Pg. No: 1316/2772, you Can See "7.8.26 LE Long Term Key Request Negative Reply Command". Kindly See the OFC Code, it is 0x001B.
…, and compilation errors.
…the metro m4 airlift lite
Bumps [geekyeggo/delete-artifact](https://github.com/geekyeggo/delete-artifact) from 1 to 2. - [Release notes](https://github.com/geekyeggo/delete-artifact/releases) - [Commits](GeekyEggo/delete-artifact@v1...v2) --- updated-dependencies: - dependency-name: geekyeggo/delete-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [carlosperate/download-file-action](https://github.com/carlosperate/download-file-action) from 1 to 2. - [Release notes](https://github.com/carlosperate/download-file-action/releases) - [Commits](carlosperate/download-file-action@v1...v2) --- updated-dependencies: - dependency-name: carlosperate/download-file-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
…losperate/download-file-action-2 Bump carlosperate/download-file-action from 1 to 2
…kyeggo/delete-artifact-2 Bump geekyeggo/delete-artifact from 1 to 2
Previously write would hang forever waiting for nina cts pin to go low. Also on failure during begin, BLELocalDevice would tell HCI to end(), before it had called begin(), so it was dereferencing null pointers to service classes which was also crashing things.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Merged from upstream 1.1.2 -> 1.3.1.
Fixed some misnamed #define's
Added ifdef branches such that any board that is attached to a stand alone airlift or airlift feather or airlift wing by defining HAS_ADAFRUIT_AIRLIFT in boards file, not just M4 airlift lite.