I think I am misunderstand what it means for the characteristic to be "read only" I interpret this as meaning that my BLE firmware will "set" the characteristic by writing to it but to a client (Phone) it will be read only.
Buuuut, when I try to write to this read-only characteristic using CyBle_GattsWriteAttributeValue I get the error "CYBLE_GATT_ERR_WRITE_NOT_PERMITTED"
So clearly I am misunderstand how this works.
1 of 1 people found this helpful
I think I may have answered my own question.
I was updating the GATT with CyBle_GattsWriteAttributeValue, sending the CYBLE_GATT_DB_PEER_INITIATED parameter. This assumes a connection.
To update the database only, I use the CYBLE_GATT_DB_LOCALLY_INITIATED parameter and I get the results I expect.
I welcome any comments.