0fcfae7d1c
Reworked the RTC driver to internally track the years from 2000 and not 1900 as there are only 7 bits for storing the years and this would overflow in 2028 ...
2023-10-22 09:02:38 +02:00
111ebd65c5
Did more code cleaning, integrated notification logic, a few things still needed to be fully functional
2023-10-22 09:00:33 +02:00
4107a5461f
Added new settings to the notification section of the settings (Vibrations duration and strength for the message notifications and for the call notifications), added switches to enable or disable notifications
2023-10-22 08:59:28 +02:00
77a87d401e
Added new functions to the API, work is almost done for the popup part of the notification, still need to design the notification history app
2023-10-22 08:57:23 +02:00
5b74ae2676
Added missing (void *) cast
2023-10-22 08:55:26 +02:00
ab08d61ee2
Fixed badly computed vibration strength, which could'nt reach 255...
2023-10-22 08:54:13 +02:00
24c3d8f397
Added missing stdio include file
2023-10-22 08:52:10 +02:00
e878184b5d
Added a few function around power management, work is still in progress aand the API might change
2023-10-22 08:50:19 +02:00
f7c66602e7
Minor clean
2023-10-22 08:48:41 +02:00
anschrammh
a89e0db18a
increased the available memory to lvgl from 30k to 35k of RAM
2023-10-19 08:32:27 +02:00
anschrammh
d796c4c0fa
Fixed a bug where on watch screen creation, depending on the current battery state, I paused a timer which was not yet created...
2023-10-19 08:32:26 +02:00
anschrammh
b19c7defc7
Added an event callback to know what setting category is opened and closed, reworked the way the side screen is cleaned (refactoring), added a background color on the selected item of the list
2023-10-19 08:32:25 +02:00
anschrammh
bf9816457b
Added the GadgetBridge notification popup (Work In Progress), removed the compass app update code from the loop, plus other ongoing code cleanup/rework of this file
2023-10-19 08:32:24 +02:00
anschrammh
af71c44af4
The compass app now updates it's azimuth and temperature by itself with a timer and doesn't rely on the main loop to do so. It also, through a callback, put the magnetometer in active or standby mode to save power when leaving the app
2023-10-19 08:32:20 +02:00
anschrammh
2fc99479c5
Updated the GadgetBridge parser to fix an issue where a double quote was added in the parsed data if we received a notification text with 35 characters, removed the const attribute of the parameter passed in the event callback
2023-10-19 08:07:26 +02:00
anschrammh
59a42c7309
Changed battery_unit_e enumeration values names to capital letters for consistency sake
2023-10-19 08:03:02 +02:00
anschrammh
73b0a6f2f3
Minor change trying to make the mmc_sdio driver more robust
2023-10-19 08:00:25 +02:00
anschrammh
43dc3ce89e
Cosmetic change
2023-10-19 07:58:42 +02:00
anschrammh
8f53359cb8
Added the folder for a new module which work is still in progress : the power management block
2023-10-19 07:57:48 +02:00
7af7c7f95d
Minor watch settings renaming
2023-10-15 11:04:49 +02:00
5cd5080fc9
Removed a potential memory leak in the GadgetBridge parser state machine
2023-10-15 11:02:55 +02:00
anschrammh
5b0dea4cd7
Remapping the accelerometer axes when changing the display's orientation so that the wakeup gesture continues to work as expected
2023-10-11 13:30:05 +02:00
anschrammh
34bf170dee
Minor changes : added the static keyword to some global variables to at least limit their scope to the file
2023-10-03 20:46:38 +02:00
1e1cb3e459
Updated firmware version number
2023-10-01 19:48:25 +02:00
1f43db8e18
Updated the watch's settings screen so that the selected item in the list on the left side is highlighted.
2023-10-01 19:45:12 +02:00
d1f1481f13
Commented the functions of the API and corrected a last issue (I hope) with an integer overflow causing some sync issues. Music player should be perfect now !
2023-10-01 19:43:19 +02:00
1a425cce58
Now vibrating the watch on a menu item click if it is configured to do so
2023-10-01 19:40:05 +02:00
72ddebfb8b
Minor update to function comment
2023-10-01 19:38:58 +02:00
0bb9c1fe7e
Removed the touch_panel_feedback_cb callback function which vibrated the screen every time the touch screen was used
2023-10-01 19:36:48 +02:00
5deafc767d
Added a new function which should be called on every item click. It will vibrate the watch to give some user feedback if the watch is configured to do so
2023-10-01 19:35:26 +02:00
07e5867d21
Updated the watch_peripherals_vibrate_with_pattern function sighature, the parameter is now a const
2023-10-01 19:34:08 +02:00
anschrammh
50b12e4548
Reworked the way the music player is keeping track of the play time of the current playing song so it doesn't desync when closing the player app or when the screen goes off
2023-09-27 23:07:20 +02:00
f5d3e33dab
Fixed the date shown in the about section of the settings, months were off by one ...
2023-08-08 20:42:25 +02:00
Anatole SCHRAMM
ece0d08ae7
Added more documentation comments
2023-07-06 15:28:18 +02:00
Anatole SCHRAMM
8af4e2467e
Now updating the battery percentage sent by the BLE battery service
2023-07-06 15:14:38 +02:00
anschrammh
10cb049ab1
Changed the logic of the music player when clicking on the next and previous buttons, now, a short click goes to the next/previous track and a long click forwards/rewinds the song by X seconds
2023-05-30 19:12:05 +02:00
anschrammh
5a62e05e0e
Automatically centers the date number in the date windows of the watch's face
2023-05-30 19:10:39 +02:00
anschrammh
bc37beb5c0
Added a new function to the watch peripherals API to vibrate the watch with a custom pattern
2023-05-30 19:09:26 +02:00
Anatole SCHRAMM
5276ce1664
Added a timer to update the playing's music current position, will have to do a minor rework for it to be flawless.
2023-05-16 13:45:41 +02:00
c9f84fd5c1
Added missing strcasecmp function prototype in the include file
2023-05-14 22:17:55 +02:00
fa574d0baa
Added some new words translation for the music player screen
2023-05-14 22:16:44 +02:00
47e31a1210
Rephrased some API comments
2023-05-14 22:15:14 +02:00
17164c722e
Integrated the music player screen to the watch's firmware + minor other things
2023-05-14 22:14:38 +02:00
cf7c52c1eb
Commented the API
2023-05-14 22:13:26 +02:00
df4ab1f790
Proper comments format
2023-05-14 22:12:26 +02:00
6df9ab5aad
Added the music player icon + saving the menu list scroll position when leaving an app
2023-05-14 22:11:47 +02:00
edb127e626
Updated the gadget bridge parser
2023-05-14 22:10:13 +02:00
23f592bcc1
Finally added the music player used to control the music playback of the phone through the BLE connection. It works great, some minor adjustements to do though.
2023-05-14 22:09:43 +02:00
2f50aa50c6
With the current driver state, it is possible to detect heart beats and thus compute the current heart rate. More things to come.
2023-05-12 15:24:59 +02:00
880dd9cb0e
MAX3010X driver continued and to be continued ...
2023-05-12 12:31:01 +02:00
61d8f80551
Renamed MAX3010X.h/c driver files
2023-05-11 21:57:20 +02:00
anschrammh
dc2f1dcecc
Replaced lv_color_make(0xFF, 0xFF,0xFF) with lv_color_white().
2023-05-11 07:22:56 +02:00
anschrammh
42c01e1d08
Continued to work on the MAX3010X driver, setup function is complete, still a lot to port/implement
2023-05-11 07:18:11 +02:00
3ae5bb9bdf
Continued to implement/port the MAX30102 using the sparkfun library. Still work to be done !
2023-05-08 21:30:58 +02:00
ee5a466666
Renamed register name define to be easier to understand
2023-05-08 21:29:15 +02:00
3cfbfdc843
Moved registers defines of the various I2C drivers I wrote from the header file to the source file because they do not need to be exposed. Started to write/port the Heart Rate Sensor (MAX30102) driver
2023-05-07 08:50:23 +02:00
anschrammh
dba1a5182d
Did some renaming
2023-05-03 22:52:17 +02:00
anschrammh
fdc8eb4c99
Removed warning due to missing header files and unused variable
2023-05-03 22:50:36 +02:00
b435687e33
Added the find my phone app/feature source files
2023-05-01 21:05:26 +02:00
6936eb2a0e
Minor change : removed the capital letter at the front of some parameters
2023-05-01 21:02:26 +02:00
99263462ad
Added the find my phone app/feature with it's related translation in english, french and german
2023-05-01 21:01:28 +02:00
8a636a238c
Added a new icon used for the find my phone app
2023-05-01 21:00:30 +02:00
30a841227b
Quickly calibrated the compass to check if it worked with the PCB in the casing and with the magnetic connector nearby, and it does
2023-04-23 21:02:27 +02:00
7a6810a56e
Added BLE pairing security when this is the first time the watch is paired to a phone. Depending on the capabilities of the device, it might be required to enter a pass key for bonding.
2023-04-22 22:40:41 +02:00
41febe5fef
Added missing include to get rid of the explicit declaration warning
2023-04-22 22:37:54 +02:00
ebf7f07789
Implemented a few new callbacks
2023-04-22 13:23:20 +02:00
e698dfb274
Now displaying the BLE device MAC address in the connectivity tab
2023-04-22 13:21:35 +02:00
3fe41b0971
Added new functions to the API
2023-04-22 13:20:44 +02:00
a550c52c39
Added a function to generate a random 6 digit number, this number could be used as the bluetooth pairing code
2023-04-22 13:20:15 +02:00
2206b6f2fb
Added enum to string utility function for the IO action
2023-04-22 13:16:39 +02:00
anschrammh
13b3ecfacf
Changed log write frequency
2023-04-20 13:16:03 +02:00
anschrammh
17d8c9949d
Added new data to save to flash and new accessor functions, work is still in progress !
2023-04-20 13:15:15 +02:00
anschrammh
ef0abe0ab7
Added new informations in the about section (raw magnetometer data, raw pressure and temperature and more).
2023-04-20 13:14:05 +02:00
anschrammh
fcc152f64d
Changed some core logic, now sending the watch's battery information when connected every 5 minutes to the phone so that gadget bridge can draw and update the battery graph. Added annd implemented a few callbacks used by the watch_settings screen
2023-04-20 13:13:06 +02:00
anschrammh
552644a412
Minor date number placement rework
2023-04-20 13:09:51 +02:00
anschrammh
5ea4d8fb38
Re enabled the tick hook function in FreeRTOS used by the millis function
2023-04-20 13:09:28 +02:00
anschrammh
5f7ac5a1d1
Introduced a new event which can be passed to the calling application : BLE_SERVICE_MODE_UNSUBSCRIBED, added a function to the API allowing to set the battery service level (still need to check if a device is subscribed to the characteristic to send the new value ot it).
2023-04-20 13:08:23 +02:00
anschrammh
03f86ea483
Finished to implement the millis api? It uses the FreeRTOS tick hook function to keep track of running time.
2023-04-20 13:01:50 +02:00
anschrammh
2df2f332bf
Exposed the magnetometer's internal temperature sensor reading. It is not precise and not accurate, but interesting
2023-04-20 12:57:44 +02:00
anschrammh
8ea47fb03c
Added description comment
2023-04-20 12:56:05 +02:00
anschrammh
e2fb8b3822
Reworked the watch's sleep feature and internal workings, added a new sleep mode when BLE is enabled, now sending the watch's battery level, voltage and state to the GadgetBridge app when it connects to the watch
2023-04-13 13:41:42 +02:00
anschrammh
9f241454c6
Finally reworked the way date and time are set so that they have the expected value and behaviour
2023-04-13 13:40:00 +02:00
anschrammh
0789cc62ad
Commented debug traces out so that they are not diplayed on the serial port anymore
2023-04-13 13:38:50 +02:00
anschrammh
82ad6d16ba
Added a function in the lvgl input device binding file to be able to know if the touch screen was touched or not
2023-04-13 13:37:50 +02:00
anschrammh
c885568e34
Wrapped and added new functions to the watch_peripherals module to be able to prepare the watch for different sleep modes, and being able to detect different wakeup sources. Changed the function used for the BMA456 driver required micro seconds delay
2023-04-13 13:36:48 +02:00
anschrammh
92de986dba
Added a new event to the ble_service_state_change event callback function to be able to detect when a BLE master device subscribed to a particular characteristic. Also reworked the allocated buffers for the BLE stack, because of a strage issue, where it is hard for the phone to reconnect to the watch.
2023-04-13 13:34:38 +02:00
anschrammh
cfc42779dd
Added new app_utils module/lib containing miscellaneous utility functions like blocking delays and such. Still need to fully implement the elapsed_ms function.
2023-04-13 13:31:54 +02:00
anschrammh
4184be2763
Changed the way the lvgl tick is handled, it was previously called from
...
the FreeRTOS vApplicationTickHook function and is now called by a timer
interrupt every ms. This permits to stop the timer and thus lvgl when it
is not needed.
2023-04-13 13:27:07 +02:00
8c1627b9b2
Officially added the gadget bridge parser I developed to the W800_Smart_Watch firmware
2023-04-10 21:26:25 +02:00
dea34c70e8
Added a persistency setting : the Activity one, which will be used to save the step counter feature (Enabled or not) as well as other activity related parameters
2023-04-10 21:21:59 +02:00
288a64d1ce
Did some cleanup by removing direct access to the watch sensor for initialization, added the gadget bridge parser I coded, and other minor stuff
2023-04-10 21:20:38 +02:00
22621219f3
Corrected a potential bug, made the date and time rollers disabled when set automatic time and date is enabled. Added the set automatic time and date feature which time and dates, if enabled, are sent by the Gadget Bridge Android Application
2023-04-10 21:19:19 +02:00
1c39e02f11
Added new line at the end of the file
2023-04-10 21:17:01 +02:00
da59200c77
Minor changes, nothing major
2023-04-10 21:16:27 +02:00
92d3279eb9
Big refactoring and cleanup by removing sensors initialization code from the gfx_task.c file and moving it to the watch_peripherals.c source file. This is way more logical IMO. This change also allows to enable or disable the wrist tilt wakeup with a function call
2023-04-10 21:15:47 +02:00
b8a11a8a79
Renamed QMC5883L_Mode_Control enumeration values to make it clear they are to be used in the magnetometer API
2023-04-10 21:13:18 +02:00
efae9a917e
Added a function to the pressure sensor API to be able to know if a measurement is currently being made
2023-04-10 21:12:01 +02:00
3bd772837c
Minor change
2023-04-10 10:02:22 +02:00
Anatole SCHRAMM
e67754b878
Minor work on the translation module, work in progress, more to be done
2023-04-05 14:47:00 +02:00
Anatole SCHRAMM
bd6d5fc6d1
Finally cleaned the wm_type_def.h file which was provided by WinnerMicro's SDK...
2023-04-05 14:27:22 +02:00