In previous versions of BLE_API the GattCharacteristic initLen parameter is named minLen as well. When the characteristic is committed to the SoftDevice the value of initial length is also used as the minimum length of the characteristic value. Furthermore, the test (max_length == min_length) is used to determine whether the characteristic value has variable length. This is slightly confusing and also causes problems if the user wishes to use a characteristic with variable length but the initial length is equal to max length.
To solve this problem the characteristic is now always committed to the SoftDevice as variable. Furthermore, the API only maintains the current length and the max length i.e. the field initialLen in the GattAttribute is removed. In nRF5xGattServer all calls to getInitialLength() are removed and replaced with getLength().
NOTES:
This change requires updates to ble.
Ideally we would like the characteristics to be declared as 'variable' only when necessary, but this requires changing the signature of the GattCharacteristic and GattAttribute constructors. Therefore, it will be part of a separate pull request.
In previous versions of BLE_API the GattCharacteristic initLen parameter is named minLen as well. When the characteristic is committed to the SoftDevice the value of initial length is also used as the minimum length of the characteristic value. Furthermore, the test (max_length == min_length) is used to determine whether the characteristic value has variable length. This is slightly confusing and also causes problems if the user wishes to use a characteristic with variable length but the initial length is equal to max length.
To solve this problem the characteristic is now always committed to the SoftDevice as variable. Furthermore, the API only maintains the current length and the max length i.e. the field initialLen in the GattAttribute is removed. In nRF5xGattServer all calls to getInitialLength() are removed and replaced with getLength().
NOTES: