Skip to content

Commit

Permalink
Merge pull request #378 from NordicSemiconductor/develop
Browse files Browse the repository at this point in the history
Version 3.1.5
  • Loading branch information
philips77 authored Nov 18, 2021
2 parents f4a80ab + 3c327c6 commit 50c596c
Show file tree
Hide file tree
Showing 14 changed files with 159 additions and 322 deletions.
201 changes: 1 addition & 200 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,202 +1,3 @@
## Changelog
- **3.1.4**:
- Bugfix: Possible crash fixed when IVI was 1 and IV Index 0 (#358).
- Bugfix: Multiple `self` weakened (#356).
- Allowing groups to be null when importing (#348, #357).

- **3.1.3**:
- Improvement: Migration to Xcode 12.5.
* Improvement: CryptoSwift updated from 1.3.8 to 1.4.0 (https://github.com/krzyzanowskim/CryptoSwift/releases/tag/1.4.0).
* Bugfix: Two threading issues fixed (#350 with #351 and #352 with #353).
* Bugfix: Refreshing Last Modified date after importing new mesh network configuration (https://github.com/NordicSemiconductor/IOS-nRF-Mesh-Library/commit/f60f3b25111bae1b1dcc1b5ffcf62e2a09615cf7).

- **3.1.2**:
- Bugfix: Fixed DevicePropertyCharacteristic.pressure with missing resolution when converting to Data (#344).
- Bugfix: Fixed calculating message sequence when Seq > 8191 (#345).

- **3.1.1**:
- Bugfix: `SegmentedAccessMessage` overflow crash (#339).
- Bugfix: Validation failure if database contains 10m publish resolution (#338).

- **3.1.0**:
- Sensor messages + simple UI for reading sensor values (#327).
- Light LC messages (#328).

- **3.0.2**:
- Bugfix: Fixed issues with importing a JSON file exported with an older version of the app (#321).

- **3.0.1**:
- Scene support.
- Heartbeat support.
- Key Refresh Procedure support.
- Partial export.
- UI improvements.
- JSON schema modified.
- Bugs fixed.
- For more see #295 and #323.

- **2.2.3**:
- A connected Proxy Node, if known, can now we obtained from the `ProxyFilter`.
- Displaying Proxy Node name on Proxy screen in the sample app.
- New icons in the sample app.
- Improvement: `ProxyFilterDelegate` methods will be called on the delegate queue specified in the `MeshNetworkManager`.
- Several bugs fixed.

- **2.2.2**:
- Fixed handling IV Index update.
- Added a flag to enable IV Index Test Mode.
- New method to get next available address from given offset.
- 2 methods added to get and set Element's sequence number. Use on your own risk.
- A Disconnect button added in the sample app, available with Automatic Connection disabled.
- Improvement: Migration to Swift 5.2 and Xcode 11.4.
- Improvement: macOs added to podspec (#240).
- Improvement: Discovering new proxy connection improved.
- Bugfix: Fixed overwriting primary element's name.
- Bugfix: Thread synchronization in `ProxyFilter` and `BaseGattBearer`.

- **2.2.1**:
- API related to "compatible models" removed, as the client and server models do not need to have model IDs differing by 1 (#225).

- **2.2.0**:
- Scene messages added.
- Lightness, CTL and HSL messages added.
- Improved switching from provisioning to node configuration.
- Support for Proxies with proxy filter capacity limited to 1.
- Bugfix: Several potential crashes fixed, including #208.
- Spelling: Targeting -> targeting.

- **2.1.0**:
- Option to select connected proxy manually (disable Automatic Connection on Proxy screen).
- An example Simple OnOff client vendor model added.
- Bugfix: Race condition on Access and Upper Transport Layer fixed (#179).
- Bugfix: Editing keys possible only when new one is created (#188).
- Improvement: Clarification of Relay documentation (#168).
- Improvement: Compatibility with Xcode 10.x (#180).

- **2.0.0**:
- A complete rewrite of the sample app and underlying mesh library. The API is not backwards compatible with the old version.
- The old database will be automatically migrated to the new format when calling `manager.load()`.

- **1.0.4**:
- Adds ability to control GenericOnOff parameters, `TransitionDelay` and `TransitionTime` (some testing needed).
- Adds ability to control GenericLevel models, additionally `TransitionDelay` and `TransitionTime` (some testing needed).
- Bugfix: Fixed an issue causing the provisioning to halt at 91% intermittently due to block acknowledgements not working as it should, a 2-second delay is restored to workaround this.

- **1.0.1**:
- Adds minor improvements to the copy on some UI components within the application.
- Bugfix: Performance improvement due to removing an intended 2-second delay when switching between Composition Data Get state and AppKeyAdd state due to an earlier bug.
- Bugfix: fixed an issue with block acknowledgements that caused longer messages that needs multiple acknowledgement to fail.
- Bugfix: fixed an issue in the GenericOnOff control view, this bug caused loss of control over the node when it's added then removed from a subscription group.
- Bugfix: fixed an issue that caused the navigation bar not to reflect the scanner state when directly tapping the `Add Node` button instead of using the tab bar button.

- **1.0**:
- Adds a better approach for GenericOnOffSet messages to be sent to all subscribed addresses on the target element. If no subscriptions are present, messages will be sent to the element's unicast.
- Adds an element unicast address within the node view to allow easier configuration.
- Adds Application Version and build numbers in the settings view.
- Adds a more descriptive title depending on OOB type in the user input view.
- Fixes some typos and misplaced text in the bundled application.
- Bugfix: Fixed a crash when the input OOB length won't fit within an UIn16 value.
- Bugfix: Input and Output OOB actions where wrongly parsed as Octets instead of bit fields, causing a crash when a node supports more than one action type.
- Bugfix: Fixed a bug causing Output OOB action types that are not Numeric OOB to never trigger due to a legacy check that's no longer required.

- **0.4**:
- Adds GenericOnOffServer control.
- Adds UI improvement in Element view, now subscription,publication and both states are shown on the cell.
- Adds UI improvement for GenericOnOff control to disable the feature if an AppKey is not bound to the model.
- Bugfix: Access messages no longer use DeviceKey and DeviceNonce in cases where AppKey should be used.
- Bugfix: Sequence number's first octet was not calculated properly, causing it to always be 0x00.
- Bugfix: Fixed Typo in scanner view "Discovery" -> "Discover".

- **0.3**:
- TestFlight Release.
- First App Store Release.
- Adds ability to reset/remove a node.
- Adds ability to remove subscription addresses for a model.
- Adds ability to parse node identity packets to allow connecting to a specific node (Cryptographically safe).
- Adds ability to parse network identity packets to allow reconnecting to the same node (Cryptographically safe).
- Adds MeshManager class that manages the proxy node, network state and related mesh network data through API calls.
- Adds ability to abort node provisioning.
- Adds Improved provisioning view with progressbar indication.
- Bugfix: AppKeyIndex values above 1 caused a failure to bind models to app keys due to a hardcoded value.
- Bugfix: NetKeyIndex and AppKeyIndex values were swapped in the AppKeyStatus message.
- Bugfix: Mesh connection button was too slow and sometimes malfunctioned.
- Bugfix: Scanner views were sometimes untapabble and scrolling was erratic when nodes advertise with low intervals.
- Bugfix: Main network view crashed intermittently after the network has been reset.
- Bugfix: Some input views where parsing freetext as hex, causing a crash.
- Input views can now robustly handle hex input format starting with `0x`.
- Subscription address types are now shown beside the subscription address.
- Empty scanner views will now have an empty state to avoid blank screens.
- Provisioning logs moved to a separate view.
- An improved UI and interaction across all views.

- **0.2**:
- TestFlight Release.
- Bundled sample firmwares for Light Server and Light client to ease the testing process.
- Minor fixes for copy in the model configuration view, Detail labels where left blank, now they show more information on what happens on selection.
- Added empty scanner view (Not yet implemented in UI).
- Added mesh save when mesh state is reset to fix the crash caused by mesh state not being present on main network view.
- Reset network text will now be red to alert the user of destructive action.
- Settings view copy improvements: capitalization fixes and better naming of rows.
- CBUUID log in the provisioner will now show the hex value instead of data size.
- Title on a provisioner will use the friendly name instead of BLE name.
- Display node name and unicast in the node's cell title label.
- Fixed a bug causing node friendly name to be forced into a hex value.
- Fixed a bug causing node friendly name not to be stored and used.
- Minor tweak to the node cell UI.
- Shortened company name/company id label text.
- removed 0x from placeholder input to avoid confusion.
- Fixed Bug causing key binding, pub/sub addresses to overlap on models with same identifier.
- Minor refactor to the composition element model to allow storing model related data within the element instead of the root object.
- Added activity indicator in the provisioning view to emphasise the progress, it stops at completion or any failures.
- Minor cleanup in log messages during node identity verification, all lowercase.
- Used CBUUID as a node identifier to avoid duplication and to avoid the mistake of using advertisement data as it's not a node identifier.
- Minor log fixes to avoid double logging of disconnection, etc..
- Disconnecting of current proxy when provisioning a new node, this is to avoid having multiple proxies connected simultaneously.
- Removed commented out code line.
- Node Identity validation.
- Added node identity advertisement parsing when reconnecting to a node to configure after provisioning.
- Added ability to overwrite the unicast address in case the user doesn't want to use the automatically incremented space.
- Added automatic unicast address incrementing in mesh state struct.
- unicast will automatically increment according to number of elements coming from the composition data of a provisioned node.
- This allows simply tapping provision button instead of having to type in the address manually.
- Minor tweak to tint settings.
- Color improvements on Node cells.
- Renamed Display name to nRF Mesh.
- Updated LaunchScreen Storyboard.
- Added missing image assets.
- Added 1-second delay after provisioning succeeds to allow the user to see the message.
- Provisioning view will set the main tab to the network view instead of the scanner view before popping to root view, to give a better context.
- Renamed Product Vendor Identifier to Product Version as it was incorrect.
- Updated Composition status struct and NodeEntry struct to reflect the VendorId->ProductVersion change.
- Added an improved settings' icon.
- Fixed a broken icon in the node configuration view.
- Added Settings icon to settings tab bar item instead of the list icon.
- Added an improved icon to the add tab bar.
- Added option to reset the mesh database, this is a destructive/non-reversible action and regenerate new NetKey and mesh state.
- Added Mesh rejoin functionality to connect to a proxy node.
- Reconnection to Proxy node functional, also displaying advertisement data on the scanner view with RSSI.
- Enabled Mesh disconnection form the main view.
- WIP: Added proxy scanning mode.
- Added Reconnect button on the main network view when there's a configured network, but no connected proxy node.
- Display SIG model identifiers as subtitle even if they're parsed into a human readable string.
- Created an improved scanner node item cell.
- Display RSSI values (Will grey out when RSSI is not available, displaying the last known RSSI.
- Display Provisioning advertisement data when present.
- Added a network icon to cells.
- Extracted status code alerts to clean up code duplication.
- Added hex parsing validation to address value inputs.
- Fixed Default TTL Configuration message implementation.
- Default TTL status message is now implemented and callbacks are forwarded to it's designated delegate.
- Added subscription lists support for the Example application's UI.
- Added Subscription Add message operation, Subscription status operation and dependencies.
- iOS10 data compatibility and Segmentation / Acknowledgement messages bugs resolved.
- Fixes related to segmentation and reassembly, This fixes the acknowledgement messages failing when they're longer than MTU size and are not segmented.
- This also adds Default TTL Get message support (Not accessible currently, but functional).
- Fixes a bug that caused an invalid state when a segmented message arrives over only one segment I.E: SegN=0x00 and SegO=0x00 causing the ack timer to have an unknown state.
- Re-enabled app key state switch after composition data is received.
- Copy Data objects to preserve 0 indices on iOS versions <= 10.
- Added GATT Bearer SAR checks to assure that segments that are out of order are dropped.
- An added segment caching to assure that incomind lower transport segments are not appended to the current segment being Reassembled upon retransmission.

- **0.1**:
- Initial release.
For change log see [Releases](https://github.com/NordicSemiconductor/IOS-nRF-Mesh-Library/releases).
6 changes: 3 additions & 3 deletions Example/Podfile.lock
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
PODS:
- CryptoSwift (1.4.0)
- nRFMeshProvision (3.1.4):
- nRFMeshProvision (3.1.5):
- CryptoSwift (= 1.4.0)

DEPENDENCIES:
Expand All @@ -16,8 +16,8 @@ EXTERNAL SOURCES:

SPEC CHECKSUMS:
CryptoSwift: 7cc902df1784de3b389a387756c7d710f197730c
nRFMeshProvision: 4b3e185fd13b077c997aadca6f54806f5c577cd7
nRFMeshProvision: 8d93e5827501f166f1511c89a5540a610844ccf2

PODFILE CHECKSUM: 69a81463322ef34ca0a20b98e90da2701d94e4ec

COCOAPODS: 1.10.1
COCOAPODS: 1.10.2
12 changes: 7 additions & 5 deletions Example/Pods/Local Podspecs/nRFMeshProvision.podspec.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions Example/Pods/Manifest.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 50c596c

Please sign in to comment.