Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BLE FS Access #750

Closed
geekbozu opened this issue Oct 16, 2021 · 1 comment · Fixed by #756
Closed

BLE FS Access #750

geekbozu opened this issue Oct 16, 2021 · 1 comment · Fixed by #756
Assignees
Labels
enhancement Enhancement to an existing app/feature needs more work This PR needs more work question/discussion This is just a question, for ex. not an issue or a feature request

Comments

@geekbozu
Copy link
Member

geekbozu commented Oct 16, 2021

Something looming on the horizon is to start getting assets and other files on the external memory and off the NRF52s internal memory is something we have wanted to accomplish for a while.

This brings the question of the best way to handle the FS access over BLE.
A few ideas have been talked about so far

Questions:

  • Are there other standards out there?
  • Which one seems like it will be the most easy to have companion applications implement?
  • Which ones might implement breaking changes to existing software?

I have looked into the DFU stuff done as including files as part of updates would be awesome...However doing so is likely to break compatibility with all current implementations of the DFU updater. This makes this not very well desired and FS updates will be much easier to handle through a separate channel. Which brings us to BLE FS in some form.

No matter what we have littlefs as a back end which makes this more of an exercise in how to expose the FS instead of implement one thankfully!

Updates

One of the major concerns here is handling updates. Once assets are not in internal flash anymore we have todo something to ensure they are available to the application. Modifying the DFU process would be ideal here for just that. However as above that is not the most convenient thing to do for anyone...
The current idea in my head is to make a new update package that just has the DFU zip internally, as well as the asset files. then gadgetbridge et al would just be updated to understand that package. Perform the DFU update then transfer the new files via BLE FS not ideal, but at least it would be transparent to the end users.

Lets discuss.

Obviously this is something that will have quite a few moving parts and effect how things are done internally for a while to come on this project. Lets discuss to make sure we pick something that will actually work for our needs now, And later.

@geekbozu geekbozu added enhancement Enhancement to an existing app/feature question/discussion This is just a question, for ex. not an issue or a feature request needs more work This PR needs more work labels Oct 16, 2021
@geekbozu geekbozu self-assigned this Oct 16, 2021
@geekbozu
Copy link
Member Author

I should note I'm personally leaning towards Adafruits BLE FS api. If only because it has documentation....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement to an existing app/feature needs more work This PR needs more work question/discussion This is just a question, for ex. not an issue or a feature request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant