8ed6ffaaf8Add the possibility to the screen to handle a touch gesture. A default action is taken if the current screen doesn't handle it.
JF
2020-03-15 21:01:24 +01:00
2c55ab20b4Merge branch 'brightness-app' of JF/PineTime into develop
JF
2020-03-15 20:19:29 +01:00
2ed76ac556Encapsulate brightness controll into the class BrightnessController. Add a new app to configure the brightness.
JF
2020-03-15 18:03:11 +01:00
eabb54f15dWorkaround for a issue when the FDS (flash data storage for BLE softdevice)) memory is full (it prevent the app from running correctly and just display a black screen) : if the fds cannot init, erase the memory and try again.
JF
2020-03-15 18:00:41 +01:00
6c4afdc4f3Merge branch 'battery-icon' of JF/PineTime into develop
JF
2020-03-14 16:37:45 +01:00
4d2aacf863Display battery level and BLE connection status using icon on Clock screen.
JF
2020-03-14 16:33:47 +01:00
a91c68c931Backup and restore vertical scroll offset when goind to sleep/wakeup to avoid scrambled display on wake-up.
JF
2020-03-11 21:35:06 +01:00
b279c99488Set version 0.4.0
JF
2020-03-10 20:22:47 +01:00
4de22601f5Apply a "up" transition when an app is opened.
JF
2020-03-10 20:21:41 +01:00
35e221078bAdd support for gestures and integrate it with the vertical scrolling transition.
JF
2020-03-09 21:29:12 +01:00
0a5cd60fe8When 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.
JF
2020-03-08 21:46:25 +01:00
d834f40c10Do not copy LittleVgl object in DislayApp, use reference instead. Make Cst816s, SpiMaster and St7789 not copiable and not movable
JF
2020-03-08 21:38:11 +01:00
bfecc8118eSet version 0.3.1
JF
2020-03-06 21:54:43 +01:00
3f80a3debdRemove not needed code.
JF
2020-03-06 21:54:36 +01:00
4ffd8d1c91Call ble_manager_init_peer_manager() _after_ the scheduler has been started. This fixes an issue that would prevent the firmware from running correctly after a full reset or after the flashing of the firmware.
JF
2020-03-06 21:50:29 +01:00
6089a1c0d1Add hires pictures of v0.3.0
JF
2020-03-06 19:55:24 +01:00
fd45746b8cAdd doc in README.md : how to flash using gdb
JF
2020-03-03 20:51:42 +01:00
d2f725ec9bUpdate README.md with up to date picture.
JF
2020-03-02 21:30:45 +01:00
d88ec8c2f0Workaround for the first touch that is taken twice into account.
JF
2020-03-02 20:48:58 +01:00
43ffeb15d1Remove TODO as they are not needed anymore
JF
2020-03-02 20:48:35 +01:00
262336afa5Fix Type in sdk_config
JF
2020-03-02 20:19:50 +01:00
6b5b0112e3Re-Enable BLE
JF
2020-03-02 20:13:42 +01:00
64014f03eeFix date/time conversion from CTS to internal date/time representation.
JF
2020-03-02 20:13:30 +01:00
824b8a7ebdMove version display from Clock screen to the modal window (accessible from tile menu)
JF
2020-03-02 20:12:46 +01:00
dccef16180Remove default lvgl font (roboto).
JF
2020-03-01 21:15:39 +01:00
6f1857c503Add debugPins module that provides functions to set and clear debug GPIOs. Disable logging once again.
JF
2020-03-01 21:00:59 +01:00
5bc0640b73Fix typo in the name of the font "jetbrains_mono_extrabold_compressed" + use it as the default font.
JF
2020-03-01 19:09:59 +01:00
21375eab81Set version 0.3.0
JF
2020-03-01 17:22:21 +01:00
a1d79e7eccFix Model that would crash when closing it.
JF
2020-03-01 17:20:27 +01:00
63c5725882Simplify Tile to improve refresh speed (it's not a tile anymore...). Disable debug mode of lvgl.
JF
2020-03-01 16:01:53 +01:00
40bdbe503cInstantiate spi, lcd, lvg and touchpanel as global variables instead of unique_ptr (avoids dynamic alloc at run-time.
JF
2020-03-01 16:00:43 +01:00
6d288b905aConfigure lvgl theme and use 2*4lines buffers as video buffer (2 lines was not enough and caused perf issues)
JF
2020-03-01 15:59:17 +01:00
e285ba9972Fix double-buffering for spi display (it's actually using double-buffering, now)
JF
2020-03-01 15:57:58 +01:00
179b14f48cAdd new Screens (gauge, meter,...)
JF
2020-02-26 20:49:26 +01:00
0aa1803ea2Enable watchdog, and issue a WDT reset when the button is pushed for more than 7s.
JF
2020-02-23 21:09:11 +01:00
f07ffab4c1Re-enable BLE, BLE status on display and battery level on display.
JF
2020-02-23 16:14:03 +01:00
02772b996fDo not compile GFX and older fonts anymore. Refactor SystemTask in its own class. Refactor Screen to be able to close current screen and open a new one. Re-enable sleep/wake up and propagate button event to Screens.
JF
2020-02-23 13:44:39 +01:00
2bdff7ed2bRe-enable BLE display on Clock screen
JF
2020-02-20 18:17:53 +01:00
79b4f006bePrevent unnecessary refresh in Clock screen.
JF
2020-02-16 18:37:18 +01:00
167a0ffc87Add touch panel port to lvgl. PoC of user interaction with 3 screen (clock, menu and app).
JF
2020-02-16 18:32:36 +01:00
f30573a9b0Add support for hardware assisted vertical scrolling.
JF
2020-02-15 15:12:29 +01:00
52539a5ff1Log Touchpanel data (position + gesture!)
JF
2020-02-12 19:57:04 +01:00
e65c9fa181Integration of lvgl : continued...
JF
2020-02-10 21:05:33 +01:00
a97faf8e9eFirst quick'n'dirty integration of LittleVGL. Needs some cleaning.
JF
2020-02-08 18:01:02 +01:00
Merge pull request #19 from JF002/spi-dma
JF002
2020-01-26 15:44:26 +01:00
6491a7c3a0Remove test code
JF
2020-01-26 15:39:49 +01:00
640e8cd1feGFX : wait end of transfert using a task notification. Code cleaning in SpiMaster.
JF
2020-01-26 15:35:18 +01:00
5fa4f5abe0Better integration of SPI with DMA and IRQ. Using only 'End' IRQ. Perf could be improved by using 'Started' IRQ to prepare the next buffer while the current one is beeing sent.
JF
2020-01-26 13:37:10 +01:00
37d50ed62badded some inital support for flashing via openocd instead of gdb, for wider compatability
lucas
2020-01-26 01:38:06 +01:00
eb7a1b3ac9[WIP] Max SPI speed reached (119ms for a full refresh. Theo max : 240*240*16 = 115.2ms) using IRQ and DMA. Code needs some cleaning before integration.
JF
2020-01-22 21:08:53 +01:00
aa3e5c0c6f[WIP] Use IRQ in SPI driver to improve performances
JF
2020-01-22 19:45:53 +01:00
b4bd41cd56Implement the SPI driver using DMA.
JF
2020-01-19 19:47:49 +01:00
9dc4e32e36Remove all custom targets from the ALL (default) target. This will prevent from executing them when running "make".
JF
2020-01-19 12:36:09 +01:00
Merge pull request #17 from danielkucera/cmake-version
JF002
2020-01-19 12:29:39 +01:00
ffbeeba3e9downgrade to cmake 3.10
Daniel Kucera
2020-01-18 21:26:05 +01:00
2b3e6b1cdeRefactor ctor() and Ini() of SpiMaster.
JF
2020-01-18 20:53:32 +01:00
86d9f6e6c8Set minimum version of cmake to 3.10
JF
2020-01-18 20:52:33 +01:00
f049f382f0Encapsulate the drawing of the screen into Screens classes.
JF
2020-01-18 18:17:52 +01:00
f14ba4a7e3Add version (major.minor.patch) in CMake files. Display the version on the display.
JF
2020-01-18 14:53:36 +01:00
fb99520c98Add version (major.minor.patch) in CMake files. Display the version on the display.
JF
2020-01-18 14:50:24 +01:00
6ca081739eUpdate comment about system task
JF
2020-01-18 14:28:13 +01:00
b34ff32f76DateTimeController is now updated in the system task. It runs every 1s in Running mode, and every 1h in sleep mode. This should allow to keep the watch on time for more than 4 hours.
JF
2020-01-18 13:56:25 +01:00
8daa830ee0Apply Hardware reset on display during wake-up, as softreset might not be enough to wake the display up.
JF
2020-01-18 13:55:22 +01:00
c1f3a31b51Disable SPI, I²C, touch controller and display controller in sleep mode.
JF
2020-01-17 22:16:45 +01:00
69a14a2247Type again
JF
2020-01-17 15:03:34 +01:00
Merge pull request #11 from JF002/date-library
JF002
2020-01-11 17:16:52 +01:00
8253c099d9Add date library (https://github.com/HowardHinnant/date) to manage the date and time. The date is now properly processed (31 December 2019 23:59:59 + 1s => 1 January 2020 00:00:00)
JF
2020-01-11 17:14:12 +01:00
04c7b1429fIncrease configMINIMAL_STACK_SIZE to fix crash issue caused by freertos timers.
JF
2020-01-09 22:00:54 +01:00
1e25f51af7Fix typo in main CMakeLists.txt file.
JF
2020-01-05 19:55:01 +01:00
bbe4e500c3Improve 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)
JF
2020-01-05 11:09:07 +01:00
7688f46898Update doc (current state about touch panel)
JF
2020-01-03 16:35:34 +01:00
ee530baaa0Add basic touch panel driver. Handle touch event in display app : draw a big square at the touch point coordinates.
JF
2020-01-03 16:32:31 +01:00
27d0e1e02fAdd documentation about building a stub using NRF52-DK.
JF
2020-01-02 15:19:28 +01:00
16c7ce8929Send command DisplayOn/Off to LCD when enabling/disabling the display.
JF
2020-01-02 14:48:33 +01:00
e08cfe07c7Apply reset signal on pin P0.26 for LCD during init.
JF
2020-01-02 14:47:59 +01:00
6abe5d8db8Remove deleted files from CMakeLists.txt
JF
2019-12-30 17:44:43 +01:00
b744b96622Add DateTimeController to manage the time. Use messages in message queues to refresh the UI
JF
2019-12-28 14:34:50 +01:00
92985eb98bAdd picture in README.md
JF
2019-12-27 17:13:09 +01:00
46eeefb53aAdd BleController to manage the BLE connection status
JF
2019-12-27 17:05:49 +01:00
11aa5e3d88Replace pin numbers by constants
JF
2019-12-27 17:05:09 +01:00
fcbd341c1cImplement battery measurement in BatteryController. Update battery info on wake up (with button)
JF
2019-12-27 16:05:35 +01:00
11d5403558Add small font, display date, Ble connection and battery power in display app (hard-coded values for now).
JF
2019-12-27 15:12:09 +01:00
b5b3c4270bMeasure and log battery voltage from SystemTask
JF
2019-12-27 15:11:21 +01:00
75e74904e8Use push button to go to sleep/wake up. Use a queue to transmit messages between system and display task (sleep & wake up for now).
JF
2019-12-26 18:33:40 +01:00