goodwatch/firmware
2018-10-12 17:38:51 -04:00
..
apps Minor cleanup to the Morse app. Now use the Set button to exit raw mode. 2018-10-12 17:38:51 -04:00
libs Drops power consumption to 3.5µA by always running in fast mode. #103 2018-08-31 15:04:30 -04:00
.gitignore buildtime.h now contains the compilation time, fixing broken start times in JTAG-programmed boards. Close #106. 2018-10-06 20:23:29 -04:00
adc10.h Adds symbols and beginning support for the ADC10 unit of the CC430F6147. #76 2018-07-04 13:52:13 -04:00
adc.c Cleanup. 2018-07-23 18:20:30 -04:00
adc.h Adds symbols and beginning support for the ADC10 unit of the CC430F6147. #76 2018-07-04 13:52:13 -04:00
api.h int2bcd ROM table, eliminates all divisions in clock applet displaying the time. #96 2018-07-23 19:07:59 -04:00
applist.c Moved order of Shabbat app. 2018-08-03 17:48:50 -04:00
applist.h Shabbat applet; edit the Makefile to enable it. Close #101 2018-08-03 12:48:32 -04:00
apps.c Drops power consumption to 3.5µA by always running in fast mode. #103 2018-08-31 15:04:30 -04:00
apps.h Clock and Settime are now separate applets. 2018-07-29 15:40:05 -04:00
bcd.c int2bcd ROM table, eliminates all divisions in clock applet displaying the time. #96 2018-07-23 19:07:59 -04:00
bcd.h int2bcd ROM table, eliminates all divisions in clock applet displaying the time. #96 2018-07-23 19:07:59 -04:00
buzz.c Drops power consumption to 3.5µA by always running in fast mode. #103 2018-08-31 15:04:30 -04:00
buzz.h use Travis' buzz driver instead of mine, re-add alarm app to list 2018-02-10 12:28:12 -05:00
codeplug.c Functional VFO mode in Tuner applet. Close #51. 2018-04-15 18:21:30 -04:00
codeplug.h Functional VFO mode in Tuner applet. Close #51. 2018-04-15 18:21:30 -04:00
codeplug.txt Finishes codeplug support. Close #50. 2017-12-02 22:49:33 -05:00
configdefault.h Cleanup before Defcon. Minor warning in ook.c will be taken care of shortly. 2018-08-09 07:28:59 -04:00
configtemplate.h New OOK modes in the config template. 2018-09-02 11:56:54 -04:00
configure Configuration script and template. 2017-11-28 18:29:52 -05:00
descriptor.c Beginnings of a module to parse the descriptor tables. We don't investigate the TLV yet, but it's enough to read the model number. #75 2018-04-21 14:04:00 -04:00
descriptor.h Beginnings of a module to parse the descriptor tables. We don't investigate the TLV yet, but it's enough to read the model number. #75 2018-04-21 14:04:00 -04: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
energytrace-txt.gnuplot Better ranging on the text power plot. 2018-08-30 12:30:54 -04:00
energytrace.gnuplot Comments and cleanup. 2018-09-05 12:54:55 -04:00
keypad.c Saves ~250µA during button presses by fixing a bug that caused the GPIO interrupt to repeatedly trigger as long as the button was down. 2018-10-09 18:05:35 -04:00
keypad.h Moves the VCC code into a new module, adc.o. Battery measurement is now performed in the clock applet by pressing '1'. #76 2018-07-03 11:24:03 -04:00
lcd.c Comments and cleanup. 2018-09-05 12:54:55 -04:00
lcd.h Remaining doxygen headers and Doxyfile. Close #39. 2017-11-14 14:07:10 -05:00
lcdtext.c Counter now shows the RSSI of the selected channel. 2018-07-29 16:29:51 -04:00
lcdtext.h Counter now shows the RSSI of the selected channel. 2018-07-29 16:29:51 -04:00
main.c Uart no longer displayed on LCD at startup. 2018-09-23 13:17:30 -04:00
Makefile buildtime.h now contains the compilation time, fixing broken start times in JTAG-programmed boards. Close #106. 2018-10-06 20:23:29 -04:00
memory.x Dmesg can now be dumped by 'make dmesg'. Close #45. 2017-11-18 14:56:46 -05:00
monitor.c Codeplug frequency no longer set by monitor on every configuration. 2018-09-23 13:27:27 -04: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
optim.c Cleanup of the new BCD/HEX conversion. 2018-05-24 14:17:51 -04:00
optim.h Cleanup of the new BCD/HEX conversion. 2018-05-24 14:17:51 -04:00
packet.c Functional OOK emulation example. #85 2018-04-05 15:32:05 -04:00
packet.h Doubles packet buffer size, in anticipation of long packet support. #107 2018-10-08 21:19:47 -04:00
periph.x Adds symbols and beginning support for the ADC10 unit of the CC430F6147. #76 2018-07-04 13:52:13 -04: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 power consumption problem in devices without radios. Close #108. 2018-09-28 17:14:49 -04:00
radio.h Functional OOK emulation example. #85 2018-04-05 15:32:05 -04:00
README.md README for the firmware directory. 2017-09-29 15:39:05 -04:00
ref.c Now setting sampled mode. I expect that this was already the default. 2018-07-23 18:23:18 -04:00
ref.h VCC now properly measured in both CC430F6137 (ADC12) and CC430F6147 (ADC10) devices.) #76 2018-07-07 15:54:14 -04:00
rng.c Addressing #67 - RNG now has more uniform distribution 2018-02-12 01:57:10 +01:00
rng.h Cleanup to the new RNG, #63. 2018-01-27 14:50:28 -05:00
rtc.c buildtime.h now contains the compilation time, fixing broken start times in JTAG-programmed boards. Close #106. 2018-10-06 20:23:29 -04:00
rtc.h Workaround for the RTC3 errata. Close #47. 2017-11-28 12:54:30 -05:00
rtcasm.h Noted that the RTC bug is specific to the '6137. The '6147 is unaffected. 2018-07-29 11:03:15 -04: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 Minor cleanup, shabbat mode fixes. 2018-08-18 14:04:37 -04:00
sidebutton.h Remaining doxygen headers and Doxyfile. Close #39. 2017-11-14 14:07:10 -05:00
uart.c Fixes SET button and adjusts Makefile to flash codeplug with firmware over SBW. 2018-09-26 17:17:58 -04:00
uart.h UART buffer is now 256 bytes. 2018-09-23 13:57:49 -04:00
ucs.c Comments and cleanup. 2018-09-05 12:54:55 -04: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