I have developed a BLE application for a RaspberryPI and a corresponding iPhone application. This was written based on the example-gatt-server from blueZ. It uses the dbus interface.
While the application seems to work just fine, /var/syslog is showing the following error message at an alarming rate (20+/second)
[ 9092.323282] Bluetooth: hci0: security requested but not availableThe continue until the Bluetooth is turned off on the iPhone.
EDIT: I've found that if I do a hciconfig hci0 reset on boot (or anytime?), the error messages stop and do not resume.
Here is the results of btmon:
> ACL Data RX: Handle 64 flags 0x02 dlen 9 #213 [hci0] 6.142424 ATT: Error Response (0x01) len 4 Read Request (0x0a) Handle: 0x0016 Error: Insufficient Encryption (0x0f) HCI Event: Number of Completed Packets (0x13) plen 5 #215 [hci0] 6.143344 Num handles: 1 Handle: 64 Count: 2 > ACL Data RX: Handle 64 flags 0x02 dlen 9 #216 [hci0] 6.202355 ATT: Error Response (0x01) len 4 Read Request (0x0a) Handle: 0x0016 Error: Insufficient Encryption (0x0f) ACL Data RX: Handle 64 flags 0x02 dlen 9 #218 [hci0] 6.262408 ATT: Error Response (0x01) len 4 Read Request (0x0a) Handle: 0x0016 Error: Insufficient Encryption (0x0f) HCI Event: Number of Completed Packets (0x13) plen 5 #220 [hci0] 6.263288 Num handles: 1 Handle: 64 Count: 2 > ACL Data RX: Handle 64 flags 0x02 dlen 9 #221 [hci0] 6.322406 ATT: Error Response (0x01) len 4 Read Request (0x0a) Handle: 0x0016 Error: Insufficient Encryption (0x0f) ACL Data RX: Handle 64 flags 0x02 dlen 9 #223 [hci0] 6.382385 ATT: Error Response (0x01) len 4 Read Request (0x0a) Handle: 0x0016 Error: Insufficient Encryption (0x0f) HCI Event: Number of Completed Packets (0x13) plen 5 #225 [hci0] 6.383242 Num handles: 1 Handle: 64 Count: 2 > ACL Data RX: Handle 64 flags 0x02 dlen 9 #226 [hci0] 6.442419 ATT: Error Response (0x01) len 4 Read Request (0x0a) Handle: 0x0016 Error: Insufficient Encryption (0x0f) ACL Data RX: Handle 64 flags 0x02 dlen 9 #228 [hci0] 6.502417 ATT: Error Response (0x01) len 4 Read Request (0x0a) Handle: 0x0016 Error: Insufficient Encryption (0x0f) HCI Event: Number of Completed Packets (0x13) plen 5 #230 [hci0] 6.503334 Num handles: 1 Handle: 64 Count: 2 > ACL Data RX: Handle 64 flags 0x02 dlen 9 #231 [hci0] 6.562415 ATT: Error Response (0x01) len 4 Read Request (0x0a) Handle: 0x0016 Error: Insufficient Encryption (0x0f) ACL Data RX: Handle 64 flags 0x02 dlen 9 #233 [hci0] 6.622434 ATT: Error Response (0x01) len 4 Read Request (0x0a) Handle: 0x0016 Error: Insufficient Encryption (0x0f) HCI Event: Number of Completed Packets (0x13) plen 5 #235 [hci0] 6.623311 Num handles: 1 Handle: 64 Count: 2 > ACL Data RX: Handle 64 flags 0x02 dlen 9 #236 [hci0] 6.682441 ATT: Error Response (0x01) len 4 Read Request (0x0a) Handle: 0x0016 Error: Insufficient Encryption (0x0f)3 Reset to default