Commit Graph

939 Commits

Author SHA1 Message Date
JF
de822cc3a2 Encapsulate DFU Image buffering and writing into spi flash in DfuImage.
Add some const in SPI driver.
2020-06-01 18:32:46 +02:00
JF
f6aa41c214 Encapsulate notification send (sync/async) into DfuService::NotificationManager; 2020-06-01 17:35:28 +02:00
JF
07f74cee63 DFU : add timeout detection : abort dfu procedure after 10s without any data from the host. 2020-06-01 16:30:24 +02:00
JF
b41a856b9d Add python script to DFU from a linux PC to the Pinetime 2020-06-01 15:21:58 +02:00
JF
dca559aad5 Improve DFU procedure :
- correctly write all bytes to flash
 - check CRC
 - Fix bug in notification : they cannot be sent from the control point handler (because it seems you cannot send a notification and a write acknowledge at the same time) using a timer (quick'n'dirty implementation to be improved)
 - Improve dfu screen
 - Reset if dfu image is correctly copied into flash and crc is ok.
2020-06-01 09:22:54 +02:00
JF
4717cf0a1d Add driver for writing into the internal flash.
Write the OK flag for mcuboot using this driver.
2020-05-24 20:30:06 +02:00
JF
00451ef05b Add example scripts to generate mcuboot image, dfu file and program them with openocd. 2020-05-24 17:47:07 +02:00
JF
4154dae01a Fix race condition in SpiMaster.cpp. 2020-05-24 17:46:43 +02:00
JF
84b996bf3f Typo in file name.
Set version to 0.6.0.
2020-05-24 17:02:45 +02:00
JF
82b4ddc25b Merge branch 'nimble-ota' of JF/PineTime into develop 2020-05-24 16:58:29 +02:00
JF
073717980f Merge develop 2020-05-24 16:51:50 +02:00
JF
331481cd0c Refactor CMake files to allow building 2 binaries : one standalone and one compatible with mcuboot bootloader (the offset in memory is different).
Add documentation about mcuboot image generation and OTA.

Re-enable watchdog
2020-05-24 16:36:04 +02:00
JF
3cc76d7673 Working demo of OTA using MCUBoot https://github.com/lupyuen/pinetime-rust-mynewt/releases/tag/v4.1.4 2020-05-24 09:15:59 +02:00
JF
ce32863693 Fix offset issues in OTA procedure.
CRC verification : work in progress (not fully working for now).
2020-05-20 18:39:25 +02:00
JF
8a94750e30 Merge branch 'develop' of JF/PineTime into master 2020-05-17 10:29:13 +02:00
JF
be1ad9b070 Disable logging once again... 2020-05-17 10:25:42 +02:00
JF
79131f4fe3 Improve SPI driver (use a mutex to prevent race conditions). 2020-05-17 09:35:01 +02:00
JF
9753967d8a Update LittleVGL from 6.1.1 to 6.1.2. It fixes a memory leak when a screen used 2 lv_img objects (occured in Clock). 2020-05-17 09:27:36 +02:00
JF002
d58f57b1b5
Merge pull request #30 from JF002/nimble
Nimble
2020-05-16 16:15:38 +02:00
JF
d6c6ac4cf5 Remove reference to NRF Softdevice in CMake and documentation.
Update documentation.
Remove Asserts when starting advertising to prevent crash (known bug).
Set version 0.5.0.
2020-05-16 16:13:22 +02:00
JF
56fba1c242 Merge branch 'nimble' of git.proxmox3:JF/PineTime into nimble 2020-05-16 15:30:54 +02:00
JF
ee05577dd6 Fix race conditions on SPI and integrate the SPI NOR Flash driver into DFUService (WIP) 2020-05-11 18:50:37 +02:00
JF002
c55dd06f1a
Merge pull request #27 from piggz/pinetime-service
Basic time setting and notification service
2020-05-11 18:24:55 +02:00
Adam Pigg
7e3ac35710 Merge branch 'pinetime-service' of github.com:piggz/Pinetime into pinetime-service 2020-05-07 20:10:49 +01:00
Adam Pigg
ca0ef77368 TODO is done 2020-05-07 20:06:50 +01:00
JF
0b8e6c3fa2 Add SPI NOR Flash driver, WIP. 2020-05-07 19:53:51 +02:00
Adam Pigg
b4e82dd11f Add support for reading the current time 2020-05-05 20:58:15 +01:00
Adam Pigg
206bdbf5eb Move PinetimeService to CurrentTimeService witha view to implement CTS
for time handling
2020-05-05 20:58:15 +01:00
Adam Pigg
d33be52bc9 Run the alert notification service and simplify trhe pinetime service
initialization
2020-05-05 20:58:15 +01:00
Adam Pigg
49a9a93cef Add a very basic alert nofification service 2020-05-05 20:58:15 +01:00
Adam Pigg
b760b3f98c Add a simple service to allow setting the time from a controlling
application
2020-05-05 20:58:15 +01:00
Adam Pigg
a9a5bd0358 Add support for reading the current time 2020-05-05 20:53:31 +01:00
Adam Pigg
9935fb193c Move PinetimeService to CurrentTimeService witha view to implement CTS
for time handling
2020-05-04 21:43:51 +01:00
JF
f96c048deb Read and log info from Start and Ini packets. 2020-05-03 15:48:42 +02:00
JF
59287e518c Improve dfu state machine 2020-05-03 14:27:48 +02:00
JF
66caada0d2 Merge branch 'nimble' into nimble-ota 2020-05-02 17:48:59 +02:00
JF
ed168716b5 Add Asssert & debug messages. 2020-05-02 17:42:26 +02:00
JF
40e3ac61bd Update syscfg.h 2020-05-02 14:18:57 +02:00
JF
e20fdfa494 Add new screen that is displayed during the OTA transfert. 2020-05-02 14:16:57 +02:00
JF
87c6556ad0 Defer the discovery of services using the system task. 2020-05-01 21:58:31 +02:00
JF
56b527925c Clean code of DfuService 2020-05-01 17:58:10 +02:00
JF
0195ece317 Working DfuService with quick'n'ugly code 2020-05-01 15:36:48 +02:00
JF
332b51464a Fix random crash caused by bad implementation of ble_npl_hw_enter_critical(). 2020-04-30 20:47:28 +02:00
Adam Pigg
5df4c1016a Run the alert notification service and simplify trhe pinetime service
initialization
2020-04-28 18:39:26 +01:00
Adam Pigg
423a956d8f Add a very basic alert nofification service 2020-04-28 18:31:58 +01:00
Adam Pigg
f201c9afdc Add a simple service to allow setting the time from a controlling
application
2020-04-28 11:21:35 +01:00
JF
833c53424a Re-enable watchdog 2020-04-27 20:46:25 +02:00
JF
5291bcc7de Nimble OTA : work in progress 2020-04-27 20:16:03 +02:00
JF
746c164c59 BLE : Display the actual status of the connection on the screen. 2020-04-27 20:13:27 +02:00
JF002
557e8fa19f
Merge pull request #25 from piggz/nimble
Remove references to BLE Manager
2020-04-27 20:01:24 +02:00