JF
5d3a974493
Add BatteryInformationService to expose the battery level to BLE host.
2020-09-27 20:02:47 +02:00
JF
6f92356873
Call SpiNorFlash::WakeUp() during initialization to ensure that the chip is not is sleep mode.
2020-09-20 14:31:26 +02:00
JF
d45cf23611
Rename Pinetime-JF -> InfiniTime
2020-09-20 11:09:50 +02:00
JF
20f5b0ffba
Fix race conditions during sleep/wakeup, where SPI/TWI could be disabled while transaction were in progress ( https://github.com/JF002/Pinetime/issues/60 ).
2020-09-13 21:26:44 +02:00
JF
d757344f1b
Docker post build : generate post build script with versions from the CMake project.
2020-09-08 22:15:10 +02:00
JF
4e8e52bf6e
Fix constness and set version to 0.8.1.
2020-09-02 21:36:13 +02:00
JF
1aa5b0a440
Fix firmware version reported by Device Information Service on BLE. It was previously hard-coded, it is now set by CMake accoridng to the project version.
...
Fix Manufacturer name, model number, sw revision according to https://wiki.pine64.org/index.php?title=Firmware_versioning_for_companion_apps .
2020-09-02 21:31:31 +02:00
JF
754918fda6
Fix bad formatting in SystemInfo.
2020-08-22 20:43:14 +02:00
JF
f7e40b1b58
Re-implement sleep/wakeup for touch panel, display, NOR Flash, SPI and TWI.
2020-08-22 17:59:59 +02:00
JF
ecbbeb6283
Fix Infinipaint that would crash when started.
2020-08-22 16:42:53 +02:00
JF
a664dec07f
Add paint application.
2020-08-21 11:55:59 +02:00
JF
7d3af600bd
Add TouchModes : in Gestures mode, only 1 event is processed for each touchevent. This allows to recognize gesture and handle them in Screens or in DisplayApp.
...
In Polling mode, X/Y positions are sent continuously to lvgl, allowing to scroll inside a dropdown menu for example.
2020-08-20 21:09:45 +02:00
JF
e6a1aff6ce
Docker build : split build.sh into 2 scripts : build.sh that always exists and post_build.sh that is generated by cmake build.sh
2020-08-20 09:38:10 +02:00
JF
f197a3fe88
All output files (bin, hex, image, dfu) contain the version of the project in their filename.
...
Update Docker build script accordingly.
Also fix permission issue with docker build (all files belonged to root).
2020-08-19 21:52:46 +02:00
JF
1e1bb1c6b7
Build lvgl, nimble and nrf sdk as static libs. This allows to specify custom build param and to remove warnings from these libs.
...
This also speeds up the build of the whole project as those libs are now built once for the 3 targets.
2020-08-17 16:48:12 +02:00
JF
83f6d7d81b
Fix most of the warnings. Remaining warnings come from nimble source code.
2020-08-17 16:31:00 +02:00
JF
41c36d3a42
Re-order apps in application menu on 2 pages.
...
Add firmware validation app.
2020-08-14 20:47:21 +02:00
JF
e6f5ab7b91
Merge develop and fix conflicts.
2020-08-14 19:54:43 +02:00
JF
6c678e872d
Screens::Label is now a subclass of Screen.
2020-08-14 10:05:44 +02:00
JF
f5328ec9eb
Refactor ScreenList to make it more generic : it can now contain any Screen type.
...
Integrate this new ScreenList in SystemInfo.
Add ApplicationList, which is a ScreenList of Tile. This allows to display a menu of more than 6 applications.
2020-08-14 09:46:37 +02:00
JF
bbfc20c3ff
Add new screen that allows the user to manually validate the new firmware he's just OTA'ed.
...
Still need to find a way to display this screen when needed.
2020-08-11 17:50:00 +02:00
JF002
3f72af1030
Merge pull request #40 from piggz/music
...
Music
2020-07-25 15:03:29 +02:00
frederic lesur LESUR Frederic
a9f0459626
correct include header
2020-07-21 08:56:12 +09:00
frederic lesur LESUR Frederic
504c2b3d5c
correct bad including of sdk files
...
(cherry picked from commit 8510e4436f6a2ac7b53fe8cb5010acb840c743b8)
2020-07-21 08:47:19 +09:00
Adam Pigg
5713eac104
Fully implement music app and service
...
SystemTask can return a reference to the nimbleController
The nimbleController can return a reference to the musicService
The musicService get a connection handle from the nimbleController
The musicApp communicated directly with the musicService
2020-07-20 21:28:21 +01:00
JF
6af5bbcbc8
New implementation of the I²C/TWI driver.
...
Fix reset timing and add dummy reading in Cst816S to fix init error on some devices.
2020-07-19 20:30:44 +02:00
Adam Pigg
686e826f4e
Rework characteristic handling
2020-07-15 10:02:01 +01:00
Adam Pigg
306aa25aad
Initial code for music app screena and service
2020-07-13 12:40:39 +01:00
Adam Pigg
789e06fdb7
Merge branch 'develop' of https://github.com/JF002/Pinetime into music
2020-07-11 21:41:20 +01:00
Adam Pigg
7a1e6e6e5b
Add start of music appliction
2020-07-11 21:37:28 +01:00
JF
6309719a62
Set version to 0.7.0
2020-07-11 20:53:04 +02:00
JF
09adb78b55
Fix/Workaround a memory leak each time a device connects to BLE.
2020-07-11 20:50:40 +02:00
JF
71842667a0
Remove debug (and bad) #includes.
2020-07-08 21:14:52 +02:00
JF
62de76ba99
Automatically switch the display on when receiving a notification
2020-07-04 18:10:30 +02:00
JF
4abbd7d0cf
Add doc : how to add new symbols.
2020-07-04 14:14:31 +02:00
JF
da39f402e5
Replace bitmap icons by font icons (provided by AwesomeFont and LVGL). These icons are smaller in memory and quicker to draw.
...
BLE and battery icon replaced in Clock screen.
Added heartbeat and step icons in Clock screen.
Replace all labels in Menu by icons.
Add doc to generate new font.
2020-07-04 13:58:15 +02:00
JF
bb11891b6e
Remove custom styles in Screens and define default style and "Big style" in LittleVgl during the initialization of LVGL.
2020-07-03 21:37:40 +02:00
JF
ca549bcfd8
Add doc about memory usage analysis.
2020-07-03 14:45:01 +02:00
JF
a83f067af9
Reduce RAM memory usage by tuning the stack of the stasks and the heap allocated for FreeRTOS.
...
Add Monitor to log the stack usage of each task.
2020-07-02 21:38:52 +02:00
JF
89e7033830
Fix buffer overflow opportunities in AlertNotificationService & AlertNotificationClient.
2020-06-28 11:59:14 +02:00
JF
4f9adb2372
Re-enable watchdog
2020-06-27 16:11:42 +02:00
JF
f8ffb405a2
Merge branch 'nimble_1_3_0' into develop
2020-06-27 16:10:17 +02:00
JF002
e86991284f
Merge pull request #37 from darnel/fix-include
...
Fix #include to relative paths
2020-06-20 16:36:36 +02:00
JF
3dfba0b90d
Update BLE status when BLE is connected.
2020-06-19 22:20:12 +02:00
JF
b8f9d70667
Use PRIMASK instead of BASEPRI for critical sections in FreeRTOS. This is needed by NimBLE to be able to mask radio interrupt (which has priority 0).
2020-06-19 22:11:21 +02:00
JF
238cda0b90
Apply fix for errata 87 (FPU issue).
2020-06-19 22:10:30 +02:00
JF
a0b5cbbc1c
Disable all logging
2020-06-19 22:10:01 +02:00
Vojtěch Jirkovský
34fd4c5cf3
Fix link error because of missing file "nrf_common.ld"
2020-06-17 23:32:56 +02:00
Vojtěch Jirkovský
064e77f05a
Fix #include to relative paths
2020-06-17 09:04:15 +02:00
JF
73e6cbde79
Fix builds that do not specify CMAKE_BUILD_TYPE during CMake generation. Apply Release by default.
2020-06-16 21:02:03 +02:00
JF
f133d1e9ea
Fix #include that were pointing to my own FS instead of relative paths to the SDK.
2020-06-16 20:44:11 +02:00
JF
9898fed806
Update to nimble 1.3.0 + WIP : debug BLE connection issue with android phones.
2020-06-16 20:36:24 +02:00
JF
fab220d0b9
Fix idle timer bug that would prevent the screen from waking up.
2020-06-13 17:33:49 +02:00
JF
47851fb3b4
Display BLE MAC address in sysinfo Screen.
2020-06-08 21:51:34 +02:00
JF
9115c49bba
Fix reset reason (it returns the actual reset reason instead of hard coded 'hard reset' value).
2020-06-07 20:31:13 +02:00
JF
421af9625b
Add build date and time in sysinfo screen.
2020-06-07 20:16:39 +02:00
JF
81a0ad73d9
Set idle timeout to 15s before going to sleep.
2020-06-07 20:05:04 +02:00
JF
e22c0609b5
Add uptime counter in DateTimeController and display it in SystemInfo screen.
2020-06-07 20:04:43 +02:00
JF
dbdb26ae1f
DfuService : fix Magic number : incorrect values were written in memory.
2020-06-07 14:10:17 +02:00
JF
46b8bf9fc1
Add new target (pinetime-graphics) that flash the bootloader logo into the spi flash memory.
2020-06-06 19:28:01 +02:00
JF
e7723598a6
Automatically go to sleep after 5 sec of inactivity.
...
Advertise for 3 minutes at startup and on wake-up. Disable automatic continuous StartAdvertising.
2020-06-01 20:40:11 +02:00
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
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
4154dae01a
Fix race condition in SpiMaster.cpp.
2020-05-24 17:46:43 +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
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
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
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
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
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
Adam Pigg
be67b5297d
Remove references to BLE Manager
2020-04-27 14:41:08 +01:00
JF
bdc10744fb
Add Nimble in libs directory
2020-04-26 10:25:59 +02:00
JF
032fad094c
NimbleController : CTS & ANS are now working together (even if the code is not as good as I would like).
2020-04-25 15:52:00 +02:00