Hi Pritish, On Tue, Mar 07, 2017 at 03:15:49PM -0800, Pritish Gandhi wrote: > Hi All, > Disclaimer: I don't know much about Bluetooth so I might sound like a novice > > I've been thinking about writing an application to transfer an OTA image > over Bluetooth and am wondering what would be the best way to go about it. > I was looking at the generic Object Transfer Services in the Bluetooth Spec: > https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.service.object_transfer.xml > > And it seems to suggest that this service uses a separate L2CAP connection. > I wonder whether NimBLE supports this or any other file transfer protocol > over Bluetooth. > Has anyone tried this or some other means of doing an OTA over Bluetooth?
I'm not familiar with the object transfer service, but it looks like it would work pretty well for this. Łukasz has added support for connection oriented channels to nimble, so I think the required functionality is all there. This service looks rather complicated, though, so there may be a fair amount of work involved in implementing it. Alternatively, Mynewt already supports file transfer using the newtmgr protocol (NMP). NMP is a simple request-response protocol described in more detail here: http://mynewt.apache.org/latest/os/modules/devmgmt/newtmgr/ This works today, but it is not particularly well suited to large data transfers over BLE. The need to wait for a response to each file chunk prevents the kind of throughput that a BLE link can support. Chris