Commit graph

23 commits

Author SHA1 Message Date
James A. Jerkins 62dbcbfc95 Connect and bond with a passkey
This commit adds the following:
    Passkey pairing - passkey is displayed on watch
    Swipe down to clear passkey screen
    Connection encryption
    Connection bonding
    Automatic reconnects to a bonded peripheral
    Trusted device on Android

Note that persisting the bond between reboots is NOT included in
this commit. Therefore, rebooting the watch will cause reconnect failures.
You must delete the bond from the phone to reconnect/pair.
2021-12-09 21:14:16 +01:00
Avamander 40d45d923b Reformatted all the files according to clang-format style 2021-04-24 11:39:53 +03:00
Jean-François Milants 9ac4be8b75 TwiMaster is now based on the NRFX TWI driver, as it handles more edge cases and workarounds for errors on the bus.
Reset the TWI bus after the soft-reset of the motion sensor to workaround issues on the TWI bus.
2021-04-08 20:07:24 +02: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
JF a0b5cbbc1c Disable all logging 2020-06-19 22:10:01 +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 be1ad9b070 Disable logging once again... 2020-05-17 10:25:42 +02:00
JF dd6aecbf6b Integration of nimble, work in progress.
Advertising is working.
2020-04-19 20:44:59 +02:00
JF 26fb9ed1cd Disable logging (again...). 2020-04-04 17:43:30 +02:00
JF 9ad1f05bc6 Improved BLE logging
Do not consider service discovery as error
Remove dulicated BLE observer
2020-03-29 13:58:06 +02:00
JF 68240704c7 Add support for BLE notification (ANS client).
Work In Progress!!!
2020-03-25 21:23:40 +01:00
JF a91c68c931 Backup and restore vertical scroll offset when goind to sleep/wakeup to avoid scrambled display on wake-up. 2020-03-11 21:35:06 +01:00
JF 0a5cd60fe8 When a full screen refresh is done, apply a vertical scroll during the refresh. This makes the transition from one screen the another one smoother, even if the refresh rate is slow. 2020-03-08 21:46:25 +01:00
JF be7be86033 Improve clock accuraty and reduce clock drifting over time (before : 1/2h per day, now : 0 minutes in 24h). 2020-01-31 20:01:33 +01:00
JF bbe4e500c3 Improve power consumption and SLEEP mode :
- Disable IDLE hook (it would wake the device up as soon as possible).
 - Logger task sleep for 100ms (disable logging for better battery life)
 - Logging is disabled by default
 - Apply fix for ERRATA 87 (clear FPU interrupt before going to sleep). Ports files from FreeRTOS are now in the sources (they where in the SDK before)
2020-01-05 11:09:07 +01:00
JF ee530baaa0 Add basic touch panel driver.
Handle touch event in display app : draw a big square at the touch point coordinates.
2020-01-03 16:32:31 +01:00
JF 27d0e1e02f Add documentation about building a stub using NRF52-DK. 2020-01-02 15:19:28 +01:00
JF b5b3c4270b Measure and log battery voltage from SystemTask 2019-12-27 15:11:21 +01:00
JF 75e74904e8 Use push button to go to sleep/wake up.
Use a queue to transmit messages between system and display task (sleep & wake up for now).
2019-12-26 18:33:40 +01:00
JF ecf307c559 Add BLE and CTS client. Time can be retrieved from a CTS server (like NRFConnect) once it's bond.
WIP, the code is really ugly
2019-12-21 17:58:00 +01:00
JF adf405a230 Add support for LCD (ST7789) 2019-12-05 19:23:46 +01:00
JF 66182d15bc First code tested on the actual pinetime hardware 2019-12-02 19:42:10 +01:00
JF 2ea27e0cda Initial commit 2019-11-17 20:47:04 +01:00