goodwatch/firmware
Travis Goodspeed b7d6800ede
Merge pull request #65 from ea/master
Added command to export random integers as per suggestion in #63
2018-01-29 14:39:11 -05:00
..
apps Submenu applet and a bit of cleanup. Close #64. 2018-01-28 17:22:54 -05:00
libs Full alphabet in the Morse library. #46 2017-11-28 18:28:14 -05:00
.gitignore Full alphabet in the Morse library. #46 2017-11-28 18:28:14 -05:00
api.h Proper UCS driver. Close #20. 2017-12-09 07:34:21 -05:00
applist.c Submenu applet and a bit of cleanup. Close #64. 2018-01-28 17:22:54 -05:00
applist.h Submenu applet and a bit of cleanup. Close #64. 2018-01-28 17:22:54 -05:00
apps.c Submenu applet and a bit of cleanup. Close #64. 2018-01-28 17:22:54 -05:00
apps.h Submenu applet and a bit of cleanup. Close #64. 2018-01-28 17:22:54 -05:00
codeplug.c Decrement codeplug index, not memory base location. Fixes bug 2018-01-16 22:25:46 -05:00
codeplug.h Codeplug compiles, flashes, and loads. Not yet erasing properly, still needs UI. #50 2017-11-30 17:50:42 -05:00
codeplug.txt Finishes codeplug support. Close #50. 2017-12-02 22:49:33 -05:00
configdefault.h RSSI app works, so long as you pass through Morse first. I don't know why. #49 2017-11-29 20:20:06 -05:00
configtemplate.h RF power is now configurable. 2017-11-29 11:27:28 -05:00
configure Configuration script and template. 2017-11-28 18:29:52 -05:00
dmesg.c DMESG in the debug monitor. #55 2017-12-08 19:51:01 -05:00
dmesg.h DMESG in the debug monitor. #55 2017-12-08 19:51:01 -05:00
Doxyfile Remaining doxygen headers and Doxyfile. Close #39. 2017-11-14 14:07:10 -05:00
keypad.c The RPN calculator now uses key interrupts rather than polling. Close #25. 2018-01-27 17:08:55 -05:00
keypad.h The RPN calculator now uses key interrupts rather than polling. Close #25. 2018-01-27 17:08:55 -05:00
lcd.c Failed attempt at #56. 2017-12-10 12:27:40 -05:00
lcd.h Remaining doxygen headers and Doxyfile. Close #39. 2017-11-14 14:07:10 -05:00
lcdtext.c Finishes codeplug support. Close #50. 2017-12-02 22:49:33 -05:00
lcdtext.h Shows RTCDOW when holding '9' in the clock app. #43 2017-11-15 21:33:13 -05:00
main.c Implement RNG to be used as seed for PRNG 2018-01-26 13:09:18 -06:00
Makefile Submenu applet and a bit of cleanup. Close #64. 2018-01-28 17:22:54 -05:00
memory.x Dmesg can now be dumped by 'make dmesg'. Close #45. 2017-11-18 14:56:46 -05:00
monitor.c Added command to export random integers as per suggestion in #63 2018-01-28 14:36:40 -06:00
monitor.h Failed attempt at #56. 2017-12-10 12:27:40 -05:00
msp430.x Imported linker scripts, so we can force dmesg to a static address. #45 2017-11-18 14:29:58 -05:00
packet.c Cut some debugging messages from the radio driver to speed up responses. #53 #55 2017-12-10 14:32:00 -05:00
packet.h Beacon application works. First packets between devices! 2017-12-05 17:34:39 -05:00
periph.x Imported linker scripts, so we can force dmesg to a static address. #45 2017-11-18 14:29:58 -05:00
power.c Proper power management for the radio. #46 #44 2017-11-28 17:24:10 -05:00
power.h Power management and basics of the radio toward #44. 2017-11-16 12:53:12 -05:00
radio.c Fixes compatibility with watches that have no radio. Close #44. 2017-12-06 16:16:02 -05:00
radio.h Cleanup of iClicker application and raw morse mode. Closer to working packets, but not quite yet. #52 #44 2017-12-04 22:57:44 -05:00
README.md README for the firmware directory. 2017-09-29 15:39:05 -04:00
rng.c Cleanup to the new RNG, #63. 2018-01-27 14:50:28 -05:00
rng.h Cleanup to the new RNG, #63. 2018-01-27 14:50:28 -05:00
rtc.c Initial implementation of a UART monitor for firmware and client. #54 #55 2017-12-08 18:40:33 -05:00
rtc.h Workaround for the RTC3 errata. Close #47. 2017-11-28 12:54:30 -05:00
rtcasm.h Workaround for the RTC3 errata. Close #47. 2017-11-28 12:54:30 -05:00
rtcasm.S Restores alignment to rtcasm.S. I think this closes #47, but I've thought that before. 2017-11-28 19:00:47 -05:00
sidebutton.c Initial implementation of a UART monitor for firmware and client. #54 #55 2017-12-08 18:40:33 -05:00
sidebutton.h Remaining doxygen headers and Doxyfile. Close #39. 2017-11-14 14:07:10 -05:00
uart.c Failed attempt at #56. 2017-12-10 12:27:40 -05:00
uart.h Failed attempt at #56. 2017-12-10 12:27:40 -05:00
ucs.c Proper UCS driver. Close #20. 2017-12-09 07:34:21 -05:00
ucs.h Proper UCS driver. Close #20. 2017-12-09 07:34:21 -05:00

Howdy y'all,

The GoodWatch firmware is in this directory. You will find user-level applications in the apps/ subdirectory, while *.c in the root directory contain low-level drivers.

To add your own application, for one of the smaller examples, such as stopwatch.c. Your app must provide functions for _init() (to run at startup), _draw() (to run every quarter-second for rendering), and _exit() which should just return 0 unless you need to intercept the Mode button, in which case it may return 1 to delay the exit. Add these three functions to a line of the apps[] structure in applist.h.

In general, we try not to over-abstract the hardware because we don't intend the design to be portable away from the CC430. Include <msp430.h> if you need to access the CC430's IO registers or "api.h" for all the standard functions of the GoodWatch firmware.

Cheers,

--Travis