Skip to content

2.2.2

Compare
Choose a tag to compare
@philips77 philips77 released this 28 Apr 14:39
cc1c353

IV Index related Improvements:

  • IV Index object has been moved from Network Key to Mesh Network. This is a network property, not a subnetwork property.
  • IV Index updates fixed. The library will now handle the Secure Network beacon with updateActive flag set or high IV Index. The spec-defined time requirements are checked, so at least 96h need to pass in IV Index Normal Operation state and at least 96h in IV Index Update In Progress. The node will not execute more than one IV Index Recovery within a period of 192 hours.
  • IV Index Test Mode added: see MeshNetworkManager.ivUpdateTestMode flag.
  • A flag to disable limit of 42 when doing IV Recovery. This allows to connect to a network after IV Index changed by more than 42, which can happen at least in 48 weeks since last connection.

Note I: The IV Index changes only when a Secure Network beacon is received. This happens usually when you connect to a Proxy Node, but the Proxy may also relay a SNB sent by another Node.
Note II: To test IV Index Update enabled IV Test Mode. A switch has been added to Settings screen in the sample app. Test Mode allows you to transition IV Index by 1, or change the IV Index Update flag from true to false without the need to wait 96h. It will, however, not allow to transition to higher IV Index without passing the min-time requirement.
Note III: The library will not send Secure Network beacons. It fully relies on other Nodes to initiate the process of updating IV Index. In most applications it will not be a case, as other nodes will reach half sequence number before the app, unless it's constantly connected to the network and sends messages in a loop, which doesn't seem to be probable scenario.

Other improvements:

  • Methods to set and get the outgoing sequence number for local Elements have been added (#265) (649fc61).
  • Migration to Swift 5.2.
  • Disconnect button added in the sample app. Disable Automatic Connection to use.
  • Added Mac to podspec.
  • App icon refreshed.
  • Improved discovering new proxy connection.

Bugs fixed:

  • Primary Element's name is not overwritten anymore. What is set in localElements should be honored.
  • Synchronization in ProxyFilter and BaseGattBearer has been fixed (#246).