summaryrefslogtreecommitdiffstats
path: root/watch-library/shared/watch/watch.h
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'usb-improvements' into advancedMatheus Afonso Martins Moreira2024-03-081-0/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
| * USB ImprovementsEdward Shin2024-01-071-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* | annotate TRNG erratum, address review commentAlex Maestas2024-01-221-6/+2
| |
* | fix simulator build by declaring Trng type as a void pointerAlex Maestas2023-12-171-0/+4
| |
* | work around silicon erratum in TRNGAlex Maestas2023-12-171-1/+5
|/
* only include watch_main_loop.h in simulator buildsjoeycastillo2022-10-111-0/+4
|
* add watch_reset_to_bootloader function (resolves #81)Joey Castillo2022-08-141-0/+4
|
* simulator: add USB serial input fieldJoey Castillo2022-05-091-0/+4
|
* add ability to read from USB serialJoey Castillo2022-05-081-0/+8
|
* add support for a small filesystem on the watchJoey Castillo2022-05-061-0/+1
|
* move pins.h include to watch.hJoey Castillo2022-02-171-0/+1
|
* remove obsolete low battery checkJoey Castillo2022-02-131-8/+0
|
* add SPI to the indexJoey Castillo2022-01-271-1/+2
|
* watch library: implement SPIJoey Castillo2022-01-261-0/+1
|
* Sensor Watch Simulator (#35)Alexsander Akers2022-01-251-0/+83
* Put something on screen * Use the 32bit watch_date_time repr to pass from JS * Implement periodic callbacks * Clear display on enabling * Hook up watch_set_led_color() to SVG (green-only) * Make debug output full-width * Remove default Emscripten canvas * Implement sleep and button clicks * Fix time zone conversion bug in beats-time app * Clean up warnings * Fix pin levels * Set time zone to browser value (if available) * Add basic backup data saving * Silence format specifier warnings in both targets * Remove unnecessary, copied files * Use RTC pointer to clear callbacks (if available) * Use preprocessor define to avoid hardcoding MOVEMENT_NUM_FACES * Change each face to const preprocessor definition * Remove Intl.DateTimeFormat usage * Update shell.html title, header * Add touch start/end event handlers on SVG buttons * Update shell.html * Update folder structure (shared, simulator, hardware under watch-library) * Tease out shared components from watch_slcd * Clean up simulator watch_slcd.c inline JS calls * Fix missing newlines at end of file * Add simulator warnings (except format, unused-paremter) * Implement remaining watch_rtc functions * Fix button bug on mouse down then drag out * Implement remaining watch_slcd functions * Link keyboard events to buttons (for keys A, L, M) * Rewrite event handling (mouse, touch, keyboard) in C * Set explicit text UTF-8 charset in shell.html * Address PR comments * Remove unused directories from include paths