Commit Graph

1640 Commits

Author SHA1 Message Date
07bb4e33e0 bump gossamer commit 2025-07-06 15:08:12 -04:00
58ec374ffd Merge pull request #36 from neutralinsomniac/remove_close_enough_face_from_default_faces
looks like close_enough face was accidentally committed to the default set of enabled watch faces
2025-07-06 14:52:50 -04:00
23fe33abaa looks like close_enough face was accidentally committed to the default set of enabled watch faces 2025-07-06 14:36:59 -04:00
410d32f2d0 silence warnings 2025-07-06 12:40:06 -04:00
87448e6e44 remove tarot_face from legacy (is now in second movement) 2025-07-06 12:12:01 -04:00
73e62bbc18 New watchface: ish face (#21) 2025-07-06 12:00:56 -04:00
bdc6f98daa Port Breathing face to second movement, also add LED notification. General fixes. (#34) 2025-07-06 11:58:16 -04:00
b4da0defbe Port probability face to second movement (#30)
* Move out of legacy folder, add to build

* Ported probability face display functions
Added tap support

* Fix animation for custom LCD
2025-07-06 11:55:50 -04:00
55f8eaa257 Port close enough clock face to second-movement (#31)
* Port over close enough clock face

* Clean up the code and comments
2025-07-06 11:52:43 -04:00
d0f78aaa91 port tarot face to second movement (#28) 2025-07-06 11:48:56 -04:00
2e5e094bb3 Update Kitchen Conversions Face for Second Movement (#24)
* Basic second movement support

* Switch alarm and light button functionality
2025-07-06 11:47:12 -04:00
5864af1c56 Update Periodic Table Face for Second Movement (#23)
* Basic Second Movement support

* Basic support for custom LCD

* Full support for custom LCD

* Fix long press when face in first slot

* Rename to periodic_table_face

* Update header description
2025-07-06 11:45:26 -04:00
ece29d776c Add a Squash scoring face (#18) 2025-07-06 11:43:50 -04:00
fa84c27ee6 add .envrc/flake.nix for setting up automatic build environment under NixOS (#17) 2025-07-06 11:39:02 -04:00
ced820b60d chirpy: fix typo (resolves #8) 2025-07-06 11:34:06 -04:00
b5a457cd19 Fix text buffer overflow in sunrise_sunset_face (#22) 2025-07-06 11:31:45 -04:00
976fd3248b move git hash to end of settings 2025-07-06 11:27:23 -04:00
406e5a7f2b settings: title git hash 'build' for clarity 2025-07-06 11:26:09 -04:00
154bd54510 Set time on make (#35)
* Time can get set from makefile

* Added setting make time into simulator

* Added  Hash in settings

* Added default location

* Cuts the Githash to 6 characters in the settings in case the makefile didn't do that already

* bump gossamer commit

* remove automatic timezone setting

* automatic time set: rename MAKEFILE_ to BUILD_ to match gossamer

* Revert "Added default location"

This reverts commit c24f69450f.

* silence warning

* watch_get_init_date_time: explicitly initialize all fields to 0

---------

Co-authored-by: Joey Castillo <joeycastillo@utexas.edu>
2025-07-06 10:56:27 -04:00
7a6f7147ae Makefile: update comment for clarity 2025-07-04 11:04:13 -04:00
f64f1f4b2f tweak Makefile checks, no need for BOARD or DISPLAY to make install 2025-07-04 11:00:01 -04:00
8eaa9262ad Merge pull request #29 from EmilienCourt/main
bring totp_face into Second Movement
2025-07-04 07:22:43 -04:00
519d51d301 Merge pull request #32 from berdan/beats-face-refactor
Refactor: beats_face use movement_get_utc_date_time(), simplify clock2beats()
2025-07-04 07:01:52 -04:00
37a8a92f58 bugfix: maintain accelerometer background sampling rate after wake from sleep 2025-07-03 17:14:08 -04:00
49c31317c8 Merge pull request #25 from berdan/latlong-fix-sunrise_sunset_face
Fix longitude corruption bug in sunrise/sunset face
2025-06-30 19:41:38 -04:00
99b02ee0b5 Add support for custom display in the simulator (#26)
* Initial custom display SVG and display selection

* clean up SVG and add data-com and data-seg

* Fix signal's data-com and data-seg

* Revert "Fix signal's data-com and data-seg"

This reverts commit 82f8dc6a91.

* Update indicators mapping for custom display

* Align #ifs to the left
2025-06-30 19:34:16 -04:00
3ade4f766b Merge pull request #20 from berdan/better_makefile
Update Makefile to conditionally require BOARD and DISPLAY only for non-clean targets
2025-06-30 19:25:28 -04:00
9d71e43e9c Merge pull request #27 from berdan/emscripten-to-gossamer
Move emscripten targets to gossamer's rules.mk
2025-06-30 19:17:56 -04:00
0d5108cbc3 bump gossamer commit 2025-06-30 19:16:14 -04:00
fff73a8806 Update beats face to use UTC+1. Simplify clock2beats function. 2025-06-30 21:39:21 +02:00
67a1bfd661 bring totp_face into Second Movement 2025-06-29 19:25:42 +02:00
bca2fd396a Move emscripten targets to gossamer's rules.mk 2025-06-29 11:00:47 +02:00
1d9917c40d Remove stray spaces from sunrise_sunset_face.c 2025-06-28 18:50:58 +02:00
741e25db0d Handle hour overflow 2025-06-28 18:28:57 +02:00
e711fd3e60 Cut the corruption checks. When the user updates the location we should be writing correct values to file. 2025-06-28 18:17:34 +02:00
0234f7a391 Better hundreds handling 2025-06-28 17:50:08 +02:00
0b7f53f99d INCLUDES project root in a Windows friendly way 2025-06-28 14:29:05 +02:00
182db67aeb Stray lf 2025-06-28 12:08:42 +02:00
39ca51eeaa Fix handling of longitude data > 100, including longitude data recovery in sunrise/sunset face
- Added functions to detect and recover from corrupted longitude data.
- Updated the activation process to handle potential corruption by recovering and saving corrected longitude values.
- Ensured that longitude values are reset to zero when exceeding valid limits.
2025-06-28 12:07:04 +02:00
e3101749c9 Add info on sensorwatch_blue (#14)
Co-authored-by: Joey Castillo <joeycastillo@utexas.edu>
2025-06-26 17:10:23 -04:00
1c89baa8d1 Update Makefile to conditionally require BOARD and DISPLAY only for non-clean targets 2025-06-26 20:48:03 +02:00
65c15461b1 peek face: silence warnings 2025-06-25 17:55:34 -04:00
8fdcd78a44 acclerometer threshold setting: swap light and alarm button to match wider UI idiom 2025-06-25 17:28:19 -04:00
eeb31d6fd5 remove light meter face (did not work, could add back later) 2025-06-25 17:24:56 -04:00
b67867b7ef accelerometer status face: flash decimal when setting threshold 2025-06-25 17:23:31 -04:00
b1c67bea94 accelerometer: keep threshold across sleeps by tracking it in movement 2025-06-25 17:22:17 -04:00
7eef8d18e5 ir upload: time out by default 2025-06-25 17:18:37 -04:00
42997ff614 ir upload: display free space instead of 'no data' 2025-06-25 17:08:38 -04:00
7f9a00ef35 fix(lis2dw): Re-initialize accelerometer after waking from sleep (#16)
* fix(lis2dw): Re-initialize accelerometer after waking from sleep

The LIS2DW accelerometer was not being re-initialized correctly after the device woke from sleep mode. When entering sleep, `watch_enter_sleep_mode` disables peripherals and pins, including those for I²C, to conserve power.

Upon waking, the `app_setup` function was designed to re-initialize the hardware. However, the logic only performed the I²C device check once on the initial boot. On subsequent wakes, the `movement_state.has_lis2dw` flag would prevent the I²C bus and the LIS2DW driver from being set up again. This caused any watch face functionality that relied on the accelerometer, such as the countdown face's tap detection, to fail after a sleep/wake cycle.

This commit refactors the initialization logic within `app_setup`. It now uses a static boolean `lis2dw_initialized` to ensure the sensor is detected only once at boot time. On subsequent wakes, if the sensor was originally found to be present, the I²C bus is explicitly re-enabled and the driver is re-initialized with `lis2dw_begin()` before its configuration is reapplied. This ensures the accelerometer is reliably available after every wake-up.

* fix(lis2dw): only check for accelerometer presence once per boot

Previously, devices without the LIS2DW sensor would re-enable I2C and attempt to detect the sensor on every wake from sleep, wasting power and CPU cycles. This change introduces a static `lis2dw_checked` flag that is set after the first detection attempt, regardless of whether the sensor is found. Now, the presence check and I2C enable/disable only occur once per boot, ensuring that devices without the sensor do not repeatedly attempt detection, improving efficiency and battery life.
2025-06-25 09:18:33 -04:00
918549a462 accelerometer status: documentation update 2025-06-11 23:27:17 -04:00