]>
git.earman.xyz Git - sensor-watch.git/log
Matheus Afonso Martins Moreira [Tue, 5 Mar 2024 04:05:31 +0000 (01:05 -0300)]
Merge branch 'usb-improvements' into advanced
- Change newline prints to also send carriage return
- Introduce shell module for serial shell with argument parsing
- Introduce shell command list for compile time command registration
- Refactor file system commands for shell subsystem
- Introduce new shell commands:
- 'help' command
- 'flash' command to reset into bootloader
- 'stress' tests CDC serial writes of various lengths
- optional delay parameter
- Harden USB handling
- Hangs less
- Drops fewer inputs
- Circular buffers for both reads and writes
Reported-by: Edward Shin <contact@edwardsh.in>
Tested-by: Edward Shin <contact@edwardsh.in>
Tested-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
Tested-on-hardware-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
Reviewed-by: James Haggerty <james@gruemail.com>
Reviewed-by: Wesley Aptekar-Cassels <me@wesleyac.com>
Reviewed-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
Signed-off-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
GitHub-Pull-Request: https://github.com/joeycastillo/Sensor-Watch/pull/344
Matheus Afonso Martins Moreira [Tue, 5 Mar 2024 04:28:12 +0000 (01:28 -0300)]
Merge branch 'silicon-errata' into advanced
Implements the recommended workarounds for numerous silicon errata,
reducing power consumption and preventing freezes and hard faults.
Tested-by: Alex Maestas <git@se30.xyz>
Tested-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
Tested-on-hardware-by: Alex Maestas <git@se30.xyz>
Tested-on-hardware-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
Reviewed-by: Wesley Aptekar-Cassels <me@wesleyac.com>
Reviewed-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
Signed-off-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
GitHub-Pull-Request: https://github.com/joeycastillo/Sensor-Watch/pull/340
GitHub-Related-Issue: https://github.com/joeycastillo/Sensor-Watch/issues/361
GitHub-Related-Issue: https://github.com/joeycastillo/Sensor-Watch/issues/359
Reference: https://ww1.microchip.com/downloads/aemDocuments/documents/MCU32/ProductDocuments/Errata/SAM-L22-Family-Silicon-Errata-and-Data-Sheet-Clarification-DS80000782.pdf
Matheus Afonso Martins Moreira [Tue, 5 Mar 2024 04:40:15 +0000 (01:40 -0300)]
Merge 'fix-sunrise-sunset-uninitialized'
Fixes a crash due to use of uninitialized buffer when setting location.
Reported-by: eshrh <esrh@gatech.edu>
Fixed-by: Wesley Aptekar-Cassels <me@wesleyac.com>
Reviewed-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
Tested-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
Tested-on-hardware-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
Signed-off-by: Matheus Afonso Martins Moreira <matheus.a.m.moreira@gmail.com>
GitHub-Pull-Request: https://github.com/joeycastillo/Sensor-Watch/pull/329
GitHub-Issue: https://github.com/joeycastillo/Sensor-Watch/issues/198
Fixes: https://github.com/joeycastillo/Sensor-Watch/issues/198
Max Zettlmeißl [Wed, 7 Feb 2024 19:02:41 +0000 (20:02 +0100)]
Change inactivity deadlines: add 10 minutes and remove 2 days. (#365)
I like to use the ten minute timeout on my watch and there are other
people who have similar interests in a lower deadline. The two day
deadline had to go to still accommodate the change within the three
bit index.
The default setting is still the one hour timeout.
Wesley Ellis [Mon, 22 Jan 2024 17:09:05 +0000 (12:09 -0500)]
Merge pull request #362 from Kistelini/fix
Revert "make the watch-face a global in movement.c, actually"
Alex Maestas [Mon, 22 Jan 2024 00:37:25 +0000 (00:37 +0000)]
annotate SLEEPCFG-register detail
Alex Maestas [Mon, 22 Jan 2024 00:31:27 +0000 (00:31 +0000)]
annotate voltage regulation erratum
Alex Maestas [Mon, 22 Jan 2024 00:31:04 +0000 (00:31 +0000)]
annotate SysTick erratum
Alex Maestas [Mon, 22 Jan 2024 00:30:25 +0000 (00:30 +0000)]
annotate TRNG erratum, address review comment
Christian Buschau [Sun, 21 Jan 2024 16:32:36 +0000 (17:32 +0100)]
Revert "make the watch-face a global in movement.c, actually"
This reverts commit
0e801ed505cb0c368bf1eb0473058efb6c275a3e .
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 07:35:32 +0000 (02:35 -0500)]
Merge pull request #337 from theAlexes/theAlexes/wyoscan-zero
make the zero in wyoscan a little more visually appealing
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 07:10:16 +0000 (02:10 -0500)]
Merge pull request #322 from WesleyAC/watch-face-save-load
Add save_load_face
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 07:08:28 +0000 (02:08 -0500)]
Merge branch 'main' into watch-face-save-load
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 07:06:14 +0000 (02:06 -0500)]
Merge pull request #319 from WesleyAC/watch-face-day-night-percentage
Add day_night_percentage_face.
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 07:04:20 +0000 (02:04 -0500)]
Merge branch 'main' into watch-face-day-night-percentage
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 07:03:41 +0000 (02:03 -0500)]
Merge pull request #318 from WesleyAC/watch-face-simple-coin-flip
Add simple_coin_flip_face
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 07:01:27 +0000 (02:01 -0500)]
Merge branch 'main' into watch-face-simple-coin-flip
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 07:00:51 +0000 (02:00 -0500)]
Merge pull request #315 from WesleyAC/watch-face-solstice
Add solstice_face
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 06:58:20 +0000 (01:58 -0500)]
Merge branch 'main' into watch-face-solstice
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 06:44:19 +0000 (01:44 -0500)]
Merge pull request #339 from theAlexes/theAlexes/cleanup
did a tiny bit of code cleanup, encountered a bug that might fix some sleep-mode issues
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 06:31:58 +0000 (01:31 -0500)]
Merge branch 'main' into theAlexes/cleanup
Wesley Aptekar-Cassels [Sun, 21 Jan 2024 06:21:32 +0000 (01:21 -0500)]
Merge pull request #360 from CarpeNoctem/compiler_warning_watch_face_index
template: fix compiler warning on watch_face_index as mentioned in PR269
CarpeNoctem [Wed, 17 Jan 2024 12:08:54 +0000 (23:08 +1100)]
template: fix compiler warning on watch_face_index as mentioned in PR 269
Wesley Aptekar-Cassels [Fri, 12 Jan 2024 00:53:51 +0000 (19:53 -0500)]
Merge pull request #325 from WesleyAC/fix-le-buzzer-default-tune
Fix buzzer in LE mode.
joeycastillo [Wed, 10 Jan 2024 14:38:33 +0000 (09:38 -0500)]
fix alternate firmware script
Wesley Aptekar-Cassels [Tue, 9 Jan 2024 22:46:48 +0000 (17:46 -0500)]
Merge pull request #342 from theAlexes/theAlexes/nanosec-profile-bug
delete stray line of code that messed with correction profile
Alex Maestas [Tue, 9 Jan 2024 21:24:11 +0000 (16:24 -0500)]
movement: Use LE mode code to keep buzzer awake, instead of sleeping.
Wesley Aptekar-Cassels [Thu, 16 Nov 2023 00:21:43 +0000 (19:21 -0500)]
buzzer: fix simulator build, refactor sequence_length.
Wesley Aptekar-Cassels [Mon, 13 Nov 2023 05:48:57 +0000 (00:48 -0500)]
Enable custom signal tones in LE mode.
This makes movement_play_signal synchronous when in LE mode, despite
using the underlying asynchronous API. It's a bit of a hack, but it
should work well enough for now.
This also moves the enabling/disabling of the buzzer into the
movement_play_signal function, so that watch faces no longer have to do
it.
Wesley Aptekar-Cassels [Mon, 13 Nov 2023 05:16:13 +0000 (00:16 -0500)]
Use legacy buzzer functions when playing default tune.
This allows the default tune to be played in LE mode.
Fixes: #275
Wesley Aptekar-Cassels [Mon, 13 Nov 2023 05:14:41 +0000 (00:14 -0500)]
Revert "Merge pull request #283 from neutralinsomniac/fix_hourly_chime_background"
This reverts commit
5c94111ea20e50cb9dab8f416603403185e933b3 , reversing
changes made to
bc9b4ce700d3f12adc0daceaa880e3d638df0c2b .
Jose Castillo [Tue, 9 Jan 2024 20:54:46 +0000 (15:54 -0500)]
Merge pull request #350 from pfmaggi/main
Handle visibility for tomato watchface
Pietro F. Maggi [Sun, 7 Jan 2024 11:40:42 +0000 (12:40 +0100)]
Handle visibility for tomato watchface
(cherry picked from commit
547e8248ba3538693ee8c587a92ffece7b40d1a2 )
Edward Shin [Sun, 15 Oct 2023 04:36:49 +0000 (00:36 -0400)]
USB Improvements
* Introduce shell module for basic serial shell with argument parsing
* Introduce shell_cmd_list module for basic compile-time command
registration
* Harden USB handling to hang less and drop fewer inputs
- Service tud_task() with periodic TC0 timer interrupt
- Service cdc_task() with periodic TC1 timer interrupt
- Handle shell servicing in main app loop
- Add a circular buffering layer for reads/writes
* Change newline prints to also send carriage return
* Refactor filesystem commands for shell subsystem
* Introduce new shell commands:
- 'help' command
- 'flash' command to reset into bootloader
- 'stress' command to stress CDC writes
Testing:
* Shell validated on Sensor Watch Blue w/ Linux host
* Shell validated in emscripten emulator
* Tuned by spamming inputs during `stress` cmd until stack didn't crash
Alex Maestas [Fri, 22 Dec 2023 22:35:46 +0000 (22:35 +0000)]
delete stray line of code that messed with correction profile while adjusting cadence
Alex Maestas [Mon, 18 Dec 2023 06:41:21 +0000 (06:41 +0000)]
make any unknown interrupts/faults reset the microcontroller
Alex Maestas [Mon, 18 Dec 2023 03:06:10 +0000 (03:06 +0000)]
make the HAL sleep function obey the chip documentation
the sleep mode doesn't get set immediately, and needs to be waited upon.
Alex Maestas [Mon, 18 Dec 2023 01:29:28 +0000 (01:29 +0000)]
address SysTick erratum, which can hard-fault the chip
Alex Maestas [Sun, 17 Dec 2023 22:40:04 +0000 (22:40 +0000)]
fix simulator build by declaring Trng type as a void pointer
Alex Maestas [Sun, 17 Dec 2023 17:40:19 +0000 (17:40 +0000)]
work around silicon erratum in SUPC/VREG
Alex Maestas [Sun, 17 Dec 2023 17:39:59 +0000 (17:39 +0000)]
work around silicon erratum in TRNG
Alex Maestas [Sun, 17 Dec 2023 03:23:26 +0000 (03:23 +0000)]
make the watch-face a global in movement.c, actually
Alex Maestas [Sat, 16 Dec 2023 22:23:32 +0000 (22:23 +0000)]
clean up trailing whitespace in movement.c
Alex Maestas [Sat, 16 Dec 2023 22:23:19 +0000 (22:23 +0000)]
use a pointer to the watch face in the app loop instead of indirecting through the index each time, and also recalculate can_sleep based on the timeout loop call.
Alex Maestas [Sat, 16 Dec 2023 22:08:10 +0000 (22:08 +0000)]
make it clear that the movement_state contains indexes
Alex Maestas [Fri, 8 Dec 2023 22:11:56 +0000 (22:11 +0000)]
make the zero in wyoscan a little more visually appealing
Wesley Aptekar-Cassels [Thu, 7 Dec 2023 02:49:58 +0000 (21:49 -0500)]
Merge pull request #336 from theAlexes/theAlexes/sanitize
fix undefined behavior found by clang's sanitize
The compiler isn't completely assured of the possible range of this variable. Probably harmless, but it clears up a clang sanitize error.
Alex Maestas [Thu, 7 Dec 2023 02:24:26 +0000 (02:24 +0000)]
fix undefined behavior found by clang's sanitize
PrimmR [Fri, 1 Dec 2023 20:33:38 +0000 (20:33 +0000)]
Kitchen Conversions Face
Wesley Aptekar-Cassels [Tue, 28 Nov 2023 04:24:04 +0000 (23:24 -0500)]
Merge pull request #281 from Kistelini/day_one_face
Improvements for Day One face
Wesley Aptekar-Cassels [Tue, 28 Nov 2023 04:08:28 +0000 (23:08 -0500)]
Merge branch 'main' into day_one_face
Alex Utter [Tue, 28 Nov 2023 04:06:19 +0000 (20:06 -0800)]
Fix missing documentation for many clock faces:
* Move from .c to .h as needed for consistency.
* When missing from both, copy from pull request or wiki.
* When missing entirely, infer functionality from source code.
Wesley Aptekar-Cassels [Mon, 20 Nov 2023 02:56:05 +0000 (21:56 -0500)]
Merge pull request #330 from hchargois/fix-simulator-keyboard-shortcuts
Fix simulator keyboard shortcuts
Hugo Chargois [Sat, 18 Nov 2023 01:22:03 +0000 (02:22 +0100)]
Simulator: Add keyboard arrows as buttons shortcuts
Hugo Chargois [Sat, 18 Nov 2023 01:29:44 +0000 (02:29 +0100)]
Simulator: Allow sending debug command with Enter
Hugo Chargois [Sat, 18 Nov 2023 01:21:23 +0000 (02:21 +0100)]
Simulator: Allow typing a, l & m in console input
These keys are the shortcuts to "press" the alarm, light and mode
buttons. However, they prevent these letters from being input in the
debug console to send filesystem commands. Strangely, there was already
some code to allow typing these letters in the console output, but not
in the input.
Wesley Aptekar-Cassels [Sun, 19 Nov 2023 16:44:11 +0000 (11:44 -0500)]
Merge pull request #305 from ekaitz-zarraga/couch-2-5k
Add Couch-To-5k training face
Ekaitz Zárraga [Sun, 19 Nov 2023 14:36:52 +0000 (15:36 +0100)]
Merge branch 'main' into couch-2-5k
Ekaitz Zarraga [Sun, 19 Nov 2023 14:31:56 +0000 (15:31 +0100)]
Resign when the entering LE
Ekaitz Zarraga [Sun, 19 Nov 2023 14:28:45 +0000 (15:28 +0100)]
Fit naming conventions
Wesley Aptekar-Cassels [Sun, 19 Nov 2023 06:07:31 +0000 (01:07 -0500)]
Merge pull request #308 from BrianBinFL/feat/minute-repeater-decimal-face
Add minute repeater decimal face
Wesley Aptekar-Cassels [Sun, 19 Nov 2023 05:56:33 +0000 (00:56 -0500)]
Merge branch 'main' into feat/minute-repeater-decimal-face
Wesley Aptekar-Cassels [Sun, 19 Nov 2023 05:10:19 +0000 (00:10 -0500)]
Merge pull request #262 from rieck/timestamp-fix
Fix for incorrect conversion from `watch_date_time` to Unix time.
Wesley Aptekar-Cassels [Sun, 19 Nov 2023 04:53:24 +0000 (23:53 -0500)]
sunrise_sunset_face: Fix use of uninitialized memory.
This was causing a crash in the simulator when setting the location.
Fixes: #198
Wesley Aptekar-Cassels [Sun, 19 Nov 2023 04:17:56 +0000 (23:17 -0500)]
Merge pull request #276 from hchargois/simulator-volume-slider
Simulator volume slider
Wesley Aptekar-Cassels [Sun, 19 Nov 2023 04:12:51 +0000 (23:12 -0500)]
Merge pull request #302 from LtKeks/Sensor-Watch-bugfix-timer_face-datatype
timer_face - Possibility to set seconds as default values
Wesley Aptekar-Cassels [Sun, 19 Nov 2023 04:11:56 +0000 (23:11 -0500)]
Merge pull request #270 from perw/tuning_tones
new face: Tuning tones
Victor Graf [Sun, 19 Nov 2023 04:10:45 +0000 (20:10 -0800)]
Fix simulator and hardware divergence in callback handling (#252)
When using the simulator, I encountered cases where the light would become stuck on, and the watch
would be unresponsive. In particular, this would occur when pressing the light button on the
sunrise sunset watch face.
I appears that this is caused by a divergence in out the callback mask is interpreted by the
hardware interface, and in the simulator in the following function.
void watch_rtc_disable_matching_periodic_callbacks(uint8_t mask)
In particular, a mask of 0xFE is intended to disable all except the 128hz callback at index 0,
but instead disables all except the 1hz callback at index 7 in the simulator.
Wesley Aptekar-Cassels [Sun, 19 Nov 2023 04:09:17 +0000 (23:09 -0500)]
Merge pull request #273 from hchargois/atchar-pos-0
Turn on the funky segment of pos 0 for char '@'
Wesley Aptekar-Cassels [Sun, 19 Nov 2023 04:08:30 +0000 (23:08 -0500)]
Merge pull request #267 from navan93/print-memory-percentages
Print memory percentages
Hugo Chargois [Fri, 17 Nov 2023 23:28:54 +0000 (00:28 +0100)]
Improve simulator page design
Jose Castillo [Fri, 17 Nov 2023 17:31:40 +0000 (12:31 -0500)]
Merge pull request #292 from WesleyAC/error-when-no-color
Don't allow building without setting board color.
Christian Buschau [Tue, 19 Sep 2023 22:55:51 +0000 (00:55 +0200)]
day_one_face: show set date on short alarm button press
Christian Buschau [Tue, 19 Sep 2023 16:31:56 +0000 (18:31 +0200)]
day_one_face: enable quick cycle through settings
This allows the alarm button to be held down in the date settings and
quickly cycle through the dates instead of having to push for each
single increment like in other faces.
Christian Buschau [Tue, 19 Sep 2023 15:53:07 +0000 (17:53 +0200)]
day_one_face: allow years until 2080
This is the same limit introduced in commit
7fd51ca
Christian Buschau [Tue, 19 Sep 2023 13:21:00 +0000 (15:21 +0200)]
day_one_face: cleanup
Wesley Aptekar-Cassels [Fri, 10 Nov 2023 03:22:40 +0000 (22:22 -0500)]
Add save_load_face.
Wesley Aptekar-Cassels [Fri, 10 Nov 2023 01:31:56 +0000 (20:31 -0500)]
day_night_percentage_face: Clear seconds digits when entering LE mode.
Wesley Aptekar-Cassels [Thu, 9 Nov 2023 22:33:43 +0000 (17:33 -0500)]
day_night_percentage_face: Use PM indicator instead of DA/NI.
This allows for use of the weekday digits for displaying the weekday.
Wesley Aptekar-Cassels [Thu, 9 Nov 2023 22:21:35 +0000 (17:21 -0500)]
day_night_percentage_face: Calculate rise/set/daylen only once per day.
Wesley Aptekar-Cassels [Thu, 9 Nov 2023 05:03:28 +0000 (00:03 -0500)]
Add day_night_percentage_face.
Wesley Aptekar-Cassels [Thu, 9 Nov 2023 00:22:03 +0000 (19:22 -0500)]
Add simple_coin_flip_face.
Wesley Aptekar-Cassels [Fri, 3 Nov 2023 09:34:56 +0000 (05:34 -0400)]
Add solstice_face.
Brian Blakley [Tue, 24 Oct 2023 22:20:54 +0000 (18:20 -0400)]
Add minute repeater decimal face
Ekaitz Zarraga [Sat, 21 Oct 2023 13:47:26 +0000 (15:47 +0200)]
Add sound to pause/resume button
Ekaitz Zarraga [Wed, 18 Oct 2023 21:29:25 +0000 (23:29 +0200)]
Add Couch-To-5k training face
joeycastillo [Thu, 19 Oct 2023 19:49:27 +0000 (15:49 -0400)]
new standard firmware for october boards
LtKeks [Sun, 15 Oct 2023 15:35:36 +0000 (17:35 +0200)]
Update timer_face.c
Corrects the data type of the standard values in order to be able to configure seconds as well.
Wesley Aptekar-Cassels [Thu, 5 Oct 2023 16:42:43 +0000 (12:42 -0400)]
Set default board color for GH workflow.
I've chosen blue arbitrarily.
Wesley Aptekar-Cassels [Thu, 28 Sep 2023 22:29:32 +0000 (18:29 -0400)]
Don't allow building without setting board color.
Fixes: #288
Jose Castillo [Sun, 24 Sep 2023 17:06:19 +0000 (13:06 -0400)]
Merge pull request #283 from neutralinsomniac/fix_hourly_chime_background
fix signal tunes not firing in background, and move buzzer disable/enable logic into movement
joeycastillo [Sun, 24 Sep 2023 16:41:18 +0000 (12:41 -0400)]
use movement_play_signal for default tune (fixes background signal)
Jeremy O'Brien [Sat, 23 Sep 2023 14:54:49 +0000 (10:54 -0400)]
move buzzer enabled detection logic into movement for movement_play_signal/tune
this way watch faces don't have to disable/enable the buzzer themselves
before calling movement_play_signal() and movement_play_tune()
Jeremy O'Brien [Fri, 22 Sep 2023 11:29:04 +0000 (07:29 -0400)]
fix signal tunes not firing in background, and split out foreground/background chime functions
Hugo Chargois [Sat, 16 Sep 2023 00:39:00 +0000 (02:39 +0200)]
Save the selected skin of the simulator in local storage
Hugo Chargois [Fri, 15 Sep 2023 23:39:52 +0000 (01:39 +0200)]
Add a volume slider in the simulator
joeycastillo [Wed, 13 Sep 2023 18:08:52 +0000 (14:08 -0400)]
update alternate firmware for new board color
joeycastillo [Wed, 13 Sep 2023 15:39:58 +0000 (11:39 -0400)]
add new COLOR flag
Hugo Chargois [Sat, 9 Sep 2023 00:22:08 +0000 (02:22 +0200)]
Turn on the funky segment of pos 0 for char '@'
Per Waagø [Sun, 19 Mar 2023 20:46:21 +0000 (21:46 +0100)]
new face: Tuning tones
Add a new face that plays out tones that can be used as a
reference when tuning musical instruments.