anschrammh
d0c933c78c
Added new words to translate in the enum and started to translate some of them, work in progress
2023-04-05 08:13:38 +02:00
anschrammh
92a275dc1c
Slight improvement in the rf modem management for BLE
2023-04-05 08:08:15 +02:00
anschrammh
08b1b8de90
Added header with date, licence and author
2023-04-05 08:04:52 +02:00
c26a88d21c
Added a function to the API allowing to register a step count indicator callback used to refresh the step counter of the watch face twice or three time a second.
2023-04-02 21:14:57 +02:00
ad61388bf6
Now starting the rf modem in bluetooth mode
2023-04-02 21:13:14 +02:00
f2b17bffd3
Added the option to only set the rf modem in bluetooth mode when starting it, this makes the power consumption drop significantly
2023-04-02 21:12:45 +02:00
f040e22af7
Deleted unused function prototype
2023-04-02 11:25:32 +02:00
2bfddce356
Fixed bad library path in Makefile ...
2023-03-31 10:57:09 +02:00
2650cf85f9
Merge branch 'master' of http://82.64.196.164/git/Th3maz1ng/W800_Smart_Watch
2023-03-31 10:28:39 +02:00
a7dd2b6af0
Removed blank line
2023-03-31 10:27:53 +02:00
anschrammh
1ef9face5a
Updated lvgl simulated screen files
2023-03-30 13:27:24 +02:00
anschrammh
ea79af772b
Halfed the BLE prefered MTU size changing it to 256 instead of 512
2023-03-30 13:26:28 +02:00
anschrammh
6a9639700b
Added new functions to the watch face API such as watch_face_set_step_count_indicator or watch_face_is_in_use
2023-03-30 13:24:48 +02:00
anschrammh
61f7e21cb3
Added more information in the about section of the settings screen : battery voltage, factory reset button and other things
2023-03-30 13:16:35 +02:00
anschrammh
47753131d6
Added BLE support to the app, fixed a graphical glitch happening when
...
waking up the watch by touching the screen where the second hand was
jumping from the old time to the new time
2023-03-30 13:14:35 +02:00
anschrammh
3156976f7a
Removed the BLE device name from this header file
2023-03-30 13:11:19 +02:00
anschrammh
b5cc52df81
Commented a trace statement in the ble service in order to keep the serial traces clean
2023-03-30 13:09:55 +02:00
anschrammh
e8583254e6
Wrapped the SDIO MMC IO busy wait statement in a function such that it can be called by any API needing it
2023-03-30 13:08:57 +02:00
anschrammh
2b79a31165
Fixed an issue when sending commands to the LCD screen while a DMA
...
transfer is in progress causing graphical issues
Detail :
A DMA transfer may be in progress when trying to send single byte commands to the LCD screen. This could badly configure the display as soon as the data/command select pin was set to command while the DMA was still sending data bytes.
The fix : doing a busy wait in the lcd_set_data function to be sure the bus is free to use.
2023-03-30 13:05:53 +02:00
anschrammh
a58c453f58
Added a define to easily set the BLE advertised name of the W800SmartWatch
2023-03-30 12:56:32 +02:00
anschrammh
160a2f88db
Added new watch face background image with the steps counter icon
2023-03-26 23:30:50 +02:00
anschrammh
ef6e9c3779
Added new firmware_version.h file which will list all the changes with their associated version number. It also containes the firmware build time and date
2023-03-26 23:25:35 +02:00
anschrammh
fe94e2b896
Pushing updates done to the LVGL emulator project files
2023-03-26 23:24:39 +02:00
anschrammh
beb7a86af1
Added a lot of settings handling callbacks, added the code to test the BMA456 step counter feature and it seems to work just fine
2023-03-26 23:22:45 +02:00
anschrammh
721db527ce
Added the ble modem and service source files (at last)
2023-03-26 23:21:27 +02:00
anschrammh
85e5fec2cd
Updated the watch face background image
2023-03-26 23:19:08 +02:00
anschrammh
622681128c
Reworked the vibration duration when touching the screen
2023-03-26 23:18:14 +02:00
anschrammh
214e174ffc
Implemented the logic to detect and read the charge controller status pins using two different policies :
...
- the first one (also used right now) is using interrupts on the two lines
- the second one was doing some polling using a timer interrupt to check the controller status
2023-03-26 23:17:20 +02:00
anschrammh
9f574f0486
Added new features and graphics to the watch face :
...
Added a battery icon which is blinking when the battery is low
Addes a charging and charged battery icon
Added a step count counter widget with icon and count
Added a bluetooth status icon showing when ble is enabled,disabled and when a device is connected
Added the possibility to hide the hour and minute hands with a long press on the screen, this enables to see information which might be hidden by the hands ...
2023-03-26 23:13:30 +02:00
anschrammh
8a9b805b95
Added new persistency methods, reworked some old ones and added every settings set functions
2023-03-26 23:09:36 +02:00
anschrammh
9458948f59
Added support for new settings with their callbacks, adjusted vibration motor duration, added a factory reset button and now saving the settings to flash memory when leaving the settings screen
2023-03-26 23:07:43 +02:00
anschrammh
22805a4e54
Added the I2C clock speed parameter to the app_config.h file. Max working clock speed seems to be 300kHz
2023-03-26 23:04:43 +02:00
anschrammh
f1af0cd0d6
Adjusted rtc's year setting ...
2023-03-24 16:39:22 +01:00
anschrammh
f1e71bba67
Turned off a lot of functionalities related to TCP IP and WiFi to free some RAM, might be turned on back again later if needed and if RAM space left :P
2023-03-24 15:26:11 +01:00
anschrammh
d05aa72135
Updated all the settings callbacks to be compatible with the new setting system
2023-03-24 15:23:17 +01:00
anschrammh
4c1f1e168a
Updated a log trace to be more meaningful
2023-03-24 15:22:15 +01:00
anschrammh
f8dace1dc1
Reduced the main's task stack size from 4k to 2k
2023-03-24 15:18:07 +01:00
anschrammh
2761a53a49
Reduced FreeRTOS available heap from 12k to 4k
2023-03-24 15:17:04 +01:00
anschrammh
2481699356
Vibration settings are now taken into account at lvgl input device driver layer
2023-03-24 15:15:19 +01:00
anschrammh
b65ab1ad4e
Reduced LVGL allocated RAM by 10K. This RAM will be useful when running the BLE stack ...
2023-03-24 15:10:17 +01:00
anschrammh
b31cc96c10
Added the tls_is_rtc_running function which is not part of the official SDK. This allows to start the RTC after a reset and to know when it stopped running.
2023-03-24 15:10:16 +01:00
anschrammh
061fdb729b
Updated the menu to now use the translation module to display the selected language
2023-03-24 15:06:14 +01:00
anschrammh
7e11913535
Added new watch settings in the persistency layer, added flash read and write functions, work still in progress
2023-03-24 15:06:14 +01:00
anschrammh
185b7a7efa
Major rework of the settings screen :
...
- reduced RAM footprint by 10K :-)
- Added the new about category displaying infos about the watch's firmware
- Now widgets are reloaded with current parameters's values
- Almost all settings are taken into account
2023-03-24 15:06:14 +01:00
anschrammh
728394ff22
Reworked the compass screen to work for both possible platforms (breadboard and PCB)
2023-03-24 15:06:14 +01:00
anschrammh
86be55b404
Reworked the common screen header to add scrolling when the title is too long and to be able to update it's title after is has been created
2023-03-24 15:06:14 +01:00
anschrammh
5d3b5b5285
Added new wrapper functions to interact more easily with the watch's peripherals
2023-03-24 15:06:14 +01:00
anschrammh
beec1570c0
Reworked the orientation of the screen depending on the defined platform in app_config.h
2023-03-24 15:06:14 +01:00
anschrammh
f770a8e436
Added new parameter to be able to build the firmware for the breadboard platform or the PCB (latest) platform
2023-03-24 15:06:14 +01:00
anschrammh
6c4a186a19
Added the new translation module to the project by updating the include paths + makefile
2023-03-24 14:48:20 +01:00
anschrammh
323f1f2996
Added a translation module to implement multilanguage support
2023-03-24 14:45:55 +01:00
anschrammh
0874a24cb9
Added a new header file to track the version history of the firmware and to display the running version
2023-03-24 14:44:30 +01:00
anschrammh
099fe8cea7
Added an other charging state which wasn't an error : when both lines are high, this indicates that no charger is currently plugged to the watch
2023-03-22 08:24:20 +01:00
Anatole SCHRAMM
c97891d898
Added MCU pin definition for reading battery charge controller IC statuses
2023-03-20 17:55:01 +01:00
Anatole SCHRAMM
a752c9765d
Adding the battery controller IC charging, charged and unplugged status detection, work in progress
2023-03-20 17:53:38 +01:00
anschrammh
60cf47b142
Added the state of the FreeRTOS stack (free heap/total heap)
2023-03-14 07:32:27 +01:00
anschrammh
66a3c87131
Renamed some file's header guards to be more consistent, clean some useless object in the UI, renamed a watch settings which name could be misleading
2023-03-12 21:44:43 +01:00
anschrammh
6e2a3e88fa
Added a battery icon indicating if the watch is charging, charged or if the battery is running low, adde new bluetooth icon, work is still in progress for bluetooth
2023-03-12 21:41:03 +01:00
anschrammh
609b374f4b
Finished to design and implement the altimeter/atmoshperic pressure app screen
2023-03-06 20:47:42 +01:00
anschrammh
7e7b93c694
Altimeter screen continued but not finished
2023-02-23 06:22:50 +01:00
1602f01897
Increased application max size in the gcc_csky_bt.ld script as well, added WiFi hotspot scan routine to test antenna
2023-02-19 20:30:04 +01:00
50379bd2a9
Added libs needed with the SDK version 1.00.10
2023-02-19 17:51:03 +01:00
b0f7adb8b5
Merge SDK update into master
2023-02-19 17:14:13 +01:00
d2e15ac177
Minor changes
2023-02-19 17:05:58 +01:00
a5f923bb81
Continued working on the altimeter app
2023-02-19 17:05:13 +01:00
2bda5c0102
Updated all other files to be inline with version 1.00.10 of the SDK
2023-02-19 16:34:26 +01:00
1c6b25a74b
SDK V1.00.10 uses Lwip version 2.1.3
2023-02-19 16:24:35 +01:00
4ad5c98edb
Renamed SDK folder to prepare for update to version 1.00.10
2023-02-19 16:17:38 +01:00
bca44ed9ae
Updated codeblocks emulator project
2023-02-12 18:27:46 +01:00
cf87826a02
Started to design and code the altimeter application
2023-02-12 17:23:25 +01:00
172afb34d3
Adjusted header height
2023-02-12 10:47:51 +01:00
7cbec0bbde
Added new altimeter icon in prevision of the altimeter app
2023-02-05 18:36:00 +01:00
8b1b116796
Developed the battery indicator on the lvgl simulator
2023-02-05 12:17:12 +01:00
36aaafac13
Update the gfx task to make use of the battery indicator feature
2023-02-05 12:15:07 +01:00
3cee4efa91
Added the battery indicator to the watch face
2023-02-05 12:14:27 +01:00
17a52b75d6
Added the touch panel reset pin definition
2023-02-03 13:40:00 +01:00
ba9342e249
Updated source code because of changes done in the previous commits
2023-02-03 13:38:29 +01:00
1c51fc9710
Renamed and cleaned up the CST816D_sleep function + implemented the CST816D_hardware_reset function
2023-02-03 13:37:36 +01:00
90aac63257
Added a missing function description + minor description rephrasing
2023-02-03 13:34:19 +01:00
a3a5f65068
Mise à jour de 'src/W800 SDK v1.00.08/app/app_drivers/i2c/CST816D.h'
...
Added function prototype to issue a reset of the touch panel
2023-01-23 13:40:57 +01:00
efe0578ed9
Mise à jour de 'src/W800 SDK v1.00.08/app/app_drivers/lcd/lcd.h'
...
Corrected a few comments
2023-01-23 13:35:31 +01:00
0a1737591d
Added a simple implementation of adaptive MCU core clock to save power, displayed the current core clock in the main task, minor changes to the app_config file
2023-01-22 21:20:03 +01:00
c9d01ef022
Added new setting to choose the screen's orientation + some other modifications
2023-01-22 21:18:12 +01:00
562114814e
Added a function to set the orientation of the screen
2023-01-22 21:16:41 +01:00
7148e76115
Added new function to the touch panel API to put it in sleep or standby, WIP and not working yet
2023-01-22 21:15:59 +01:00
7f6c6c7cd1
Added the watch_peripherals folder to the include path
2023-01-15 20:40:45 +01:00
a8e1d0412e
Minor updates to the lvgl files used in the emulation
2023-01-15 20:39:59 +01:00
6f8ccb4f6a
Miscellaneous work
2023-01-15 20:37:46 +01:00
eb2c26d85f
Added new folder/module containing the API to interract with some of the watch feature like measuring the battery voltage or activating the vibration motor
2023-01-15 20:36:32 +01:00
41da436b93
Added the temperature reading on the compass screen
2023-01-14 14:47:32 +01:00
7117ac348c
Forgot to get rid of the first four LSB bits in the pressure raw data. Pressure reading is now correct !
2023-01-14 13:17:46 +01:00
0ec9b4246b
Added lcd off and lcd power down functions to the API. This improves sleep current which is around 4.5mA instead of 12mA
2023-01-08 22:16:37 +01:00
1fe8e03a13
Other important changes
2023-01-07 23:17:50 +01:00
5c7bfc223a
Some refactoring
2023-01-07 23:16:31 +01:00
a4b6ac5299
Moved uart TX for debug to PB_02 pin, letting the PB_19 pin free for the I2C SDA line
2023-01-07 23:15:53 +01:00
666a841026
Started the implementation of the persistency module allowing to save and retrieve settings
2023-01-07 23:10:44 +01:00
74d48ada96
Moved the display initialization code to it's own file as part of some code cleanup
2023-01-07 10:02:34 +01:00
af85b9b594
Disabled interrupts during an I2C transaction to make them atomic
2023-01-07 10:00:14 +01:00
f53ec9b5db
Created the watch settings persistency file containing the watch settings to save and retrieve
2023-01-06 19:32:42 +01:00
Anatole SCHRAMM
59bf4c98bc
Corrected a bad case where the return value could be void instead of the expected bool
2023-01-05 13:49:17 +01:00
Anatole SCHRAMM
526845e4f2
Listed the pin mapping here, subject to changes
2023-01-05 13:48:16 +01:00
Anatole SCHRAMM
2c854e2535
Cleaned the lv_port_indev c file to now use the CST816D chip driver
2023-01-05 13:47:39 +01:00
anschrammh
a01d3157aa
Added a new folder which will eventually contain persistent storage logic
2023-01-05 07:12:50 +01:00
anschrammh
4d1079be66
Added pressure related API functions
2023-01-05 07:11:21 +01:00
anschrammh
6187537a78
Minor updates the QMC5883L driver, implemented the softreset function for the BMP280 sensor and wrote the driver for the CST816D touch screen ic.
2023-01-03 08:32:02 +01:00
anschrammh
47dca73834
Renamed the drivers folder to app_drivers because of a library name conflict. Moved bad makefile lib linkage
2023-01-02 21:07:40 +01:00
a165e8a243
Added new function to the watch face api to force a RTC resync.
2023-01-01 19:03:44 +01:00
b088e585c5
Overwrote the old indev driver to make the touch ic work with lvgl. Code is dirty, needs to be cleaned.
2023-01-01 19:02:43 +01:00
b5fc007404
Test code to try the touch screen driver out (CST816D)
2023-01-01 19:01:37 +01:00
857cfef622
Added empty source files regarding the touch screen driver CST816D - work in progress
2023-01-01 19:00:35 +01:00
f4a2c59ab2
Reworked the way the pwm brightness works
2023-01-01 18:59:27 +01:00
0cd605e0a4
Added initialization sequence and support for the GC9A01 lcd driver
2022-12-28 14:00:23 +01:00
a19c3a68bf
Settings screen is being developed and more
2022-12-23 23:24:10 +01:00
dd0ebdfeb0
Added the pwm initialization code for the backlight
2022-12-23 23:22:18 +01:00
4ab0768ae5
Wrote part of the BMP280 driver, temperature reading is working, added bosch BMA456 driver with wrist tilt detection feature working, added missing burst write in the i2c driver
2022-12-23 23:21:38 +01:00
anschrammh
ba885b52b9
Renamed config_screen to settings_screen work in progress
2022-12-21 10:04:27 +01:00
anschrammh
1909fac7f9
Added missing comment part
2022-12-21 10:01:10 +01:00
anschrammh
eaf5473928
Reworked the compass graphics a bit and did some minor changes to the menu screen.
2022-12-17 20:45:22 +01:00
anschrammh
a636659a95
Commented the I2C API
2022-12-17 20:42:23 +01:00
anschrammh
4f65089b22
Commented the driver API and added a way to calibrate the temperature reading
2022-12-17 20:41:41 +01:00
anschrammh
9820b1ddb0
Updated lvgl simulator source files
2022-12-17 12:17:00 +01:00
anschrammh
748f7465e3
Added the compass app which needs a lot of refinement and corrections, reworked the way menu screen icon callback is handled and other minor changes
2022-12-17 12:13:30 +01:00
anschrammh
ca6a45f132
Enabled new font size needed for the compass screen
2022-12-17 12:08:32 +01:00
anschrammh
fc3c55d56d
Changed the memory layout to have more flash space allocated to the application, should now have 1.855 MB instead of the 1.152 MB
2022-12-17 12:07:44 +01:00
anschrammh
cc108584c2
Added spaces between comma and function parameter
2022-12-15 08:20:44 +01:00
anschrammh
4667ece5c8
QMC5883L magnetometer driver done
2022-12-15 08:19:30 +01:00
anschrammh
29d5f6ce74
I2C driver implementation done
2022-12-15 08:18:50 +01:00
anschrammh
5fb5c57495
Implemented more I2C functions and started to write the driver for the QMC5883L magnetometer
2022-12-14 08:20:47 +01:00
anschrammh
b90d14fb79
Continued i2c driver by implementing read and write reg, did some tests with i2c
2022-12-13 08:20:01 +01:00
65a1a5dd49
Clean project structure up, added some commented out functions to try make the ST7789 round lcd work (was a failure). Added the i2c.h and .c file, still work to be done on that side. The round LCD display is using a 3-line 9 bit serial interface ... This suck !
2022-12-11 21:20:29 +01:00
anschrammh
eeaf819b80
Minor changes
2022-12-08 07:32:29 +01:00
anschrammh
d13e201767
Converted all menu icons to chroma key transparency, added new makefiles to demos to test them
2022-12-08 07:31:59 +01:00
anschrammh
9c46eff761
Reworked DMA driver, it's working now with OK performance regarding screen refresh rate. Need to clean source files up now
2022-12-08 07:28:41 +01:00
0353e42482
Fighting with the MMC DMA, work in progress
2022-12-04 20:15:47 +01:00
2ca0d48258
Started to implement the lcd driver
2022-12-02 10:28:04 +01:00
9bf5c774cb
Reworked the watch_face screen and the menu screen so that they can be created and destroyed when needed
2022-12-01 20:34:18 +01:00
anschrammh
bfede27653
Started to clean up the POC(Proof Of Concept) code
2022-11-30 06:17:28 +01:00
anschrammh
fc3850b6f3
Updated the .gitignore file, started to organize the project source files, created a new task to handle the graphics and more
2022-11-29 21:24:51 +01:00
anschrammh
cd28f829cf
Added lvgl_win_sim folder containing a POC of the UI. The UI is in no way finished (code nor design)
2022-11-27 20:21:05 +01:00
anschrammh
b89cdab916
Removed build files which have nothing to do on the repository
2022-11-27 13:37:16 +01:00
anschrammh
fffb6bb567
Various modification to the SDK
2022-11-27 13:09:52 +01:00
anschrammh
7b56d964ab
Integrated LVGL 8.3.3 into the SDK, started to add some generic helper files in the app folder
2022-11-27 13:02:22 +01:00
1917897d6d
Added vanilla SDK, lvgl still needs to be added to the project plus other custom configurations
2022-11-20 20:24:17 +01:00