Standards based File Transfer support in mobile/desktop platforms?

I have a potential client with a low cost product that is currently USB based.  They are interested in adding support for wireless, so I am investigating the landscape for basic file transfer over BLE. 

Am I correct that there is no common protocol for file transfer and that this STILL requires developing a custom app on the various platforms?  

File transfer seems to be a simple and common feature.  Bluetooth Classic had File Transfer Protocol as well as Object Push Profile.   It would be amazing if Nordic provided a basic app that implemented the server side for a Object Transfer Profile device instead of every company re-inventing the wheel with proprietary GATT services.  Currently the cost of developing a good/stable mobile app adds a huge barrier to developing otherwise simple products.  Furthermore the end-user must install yet another single purpose app on their mobile device, which adds friction to the initial user experience.

Additionally in the current market, BLE devices generally only work with mobile devices, even though desktop platforms also support BLE.  After the expense of developing a mobile app, very few companies have any interest in also developing a Windows or OSX app as well.  

I believe that BLE market could grow significantly faster if cost of developing new products was reduced.  NCS/Zephyr's KConfig system has greatly reduced the expertise required to develop BLE devices, but the central devices (mobile and desktop) still present a major impediment.

Parents
  • Hi,

    I don't have a lot of experience with this but did want to mention that if you're using Zephyr then the "smp_server" example has the option for filesystem support over bluetooth. You can test it by having a file on flash and using the "NRF connect Device Manager" android/IOS app to download your file to the phone or to send a file from the phone to your flash. That'd be a proof of concept, but any platform that has an SMP library should be able to support moving files via this method.

    It's kind of a lot to set up just for moving files though - the main purpose for it (in my understanding) is to allow for firmware updates etc.

Reply
  • Hi,

    I don't have a lot of experience with this but did want to mention that if you're using Zephyr then the "smp_server" example has the option for filesystem support over bluetooth. You can test it by having a file on flash and using the "NRF connect Device Manager" android/IOS app to download your file to the phone or to send a file from the phone to your flash. That'd be a proof of concept, but any platform that has an SMP library should be able to support moving files via this method.

    It's kind of a lot to set up just for moving files though - the main purpose for it (in my understanding) is to allow for firmware updates etc.

Children
Related