adafruit / Adafruit_Mynewt

Apache Mynewt documentation and test project for the nRF5x family of BLE SoCs
MIT License
8 stars 3 forks source link

Generate Mynewt BLE images for test #27

Closed microbuilder closed 8 years ago

microbuilder commented 8 years ago

Runtime has a fork of nRF Toolbox from Nordic that includes support for Newtmgr (which saves us a lot of work figuring OTA updates out!): https://github.com/runtimeinc/IOS-nRF-Toolbox/commit/f14d52a6a8a1c3cfb0c362c1f253300cb07c2d99

To get OTA updates into Bluefruit LE Connect for iOS and Android we'll need to take this code and make a library for it, but I'll need to get some .img files to Antonio to test against.

JLinkExe should be used to generate a single .bin file that includes the bootloader and a valid image. This way if a device gets bricked, you can just connect and flash the .bin file from the JLink using the loadbin and savebin commands.

PS: We might need to create a development fork for this???

hathach commented 8 years ago

too many stuffs to follow, luckily you keep an eye on all of these :)

microbuilder commented 8 years ago

There isn't any development here on the firmware side they've done everything ... I just need to get that code into Bluefruit LE Connect as a library and then we can do firmware updates, and collect stats, logs, see mempools and task lists, etc., inside our apps without much extra work. I just need some binaries and .img files to test against.

I'm glad they pointed me to that library though ... I was afraid we'd have to do this ourselves, but they've done all the work for us (90% anyway).

microbuilder commented 8 years ago

I think sterly_refactor might be the right branch here not develop since develop doesn't contain the newtmgr BLE service: https://github.com/apache/incubator-mynewt-core/tree/sterly_refactor/libs/newtmgr/transport/ble

microbuilder commented 8 years ago

It looks like BLE support is already included in master in the newtmgr library in apache-mynewt-core, so there is nothing extra to do here. As long as the newtmgr dependency is included the newtmgr BLE services will be initialised at startup. I tested with BLEUART and see the service on my device:

DA2E7828-FBCE-4E01-AE9E-261174997C48 = Newtmgr Characteristic 8D53DC1D-1DB7-4CD3-868B-8A527460AA84 = Newtmgr Service

microbuilder commented 8 years ago

Closing this since master already implements the service for us, I just didn't notice at first, so current bleuart and throughput examples can be used.