The BLE SPP server example sends up to "mtu-3" bytes using esp_ble_gatts_send_indicate().
Why mtu-3 and not the all the available mtu?
BLE SPP example magic numbers
BLE SPP example magic numbers
& I also believe that IDF CAN should be fixed.
Re: BLE SPP example magic numbers
Because 3 bytes are reserved for indication message OP code or something like that in lower layer driver. It can be found in bluetooth core specification if you really need it.