goodwatch/README.md

98 lines
4.0 KiB
Markdown
Raw Normal View History

2017-04-12 00:03:23 +00:00
Howdy y'all,
This is a side project of mine to build a replacement circuit board
2017-11-02 21:48:12 +00:00
for the Casio 3208 module, used in the Casio CA-53W and CA-506
calculator watches. It is not compatible with the 3228 module used in
the Databank watches, which have four external buttons instead of two.
As a side project, it has no warranty whatsoever and you shouldn't use
it for anything.
2017-04-12 00:03:23 +00:00
In the rare case that you find this project to be useful, you owe me a
pint of good, hoppy pale ale. All license to use this project is
revoked if you try to pass off a pilsner instead.
2017-12-13 20:53:38 +00:00
In addition to the source code, there is handy documentation in the
[wiki](https://github.com/travisgoodspeed/goodwatch/wiki) and a
general interest website at [goodwatch.org](https://goodwatch.org/).
2017-09-01 17:48:08 +00:00
2018-07-07 20:31:05 +00:00
73 from Knoxville,
2017-04-12 00:03:23 +00:00
--Travis
2017-09-01 17:48:08 +00:00
## Software Status
Our firmware is freely available in this repository, compiling with
the standard MSP430 compiler packages that ship with Debian. It
consists of a
[Clock](https://github.com/travisgoodspeed/goodwatch/wiki/ClockApplet),
a Stopwatch, an RPN Calculator, and a [Hex Memory
Viewer](https://github.com/travisgoodspeed/goodwatch/wiki/HexApplet)
with Disassembler, all written in C. It compiles in Debian with all
of the MSP430 packages installed.
On watches with a radio, we have
[Morse](https://github.com/travisgoodspeed/goodwatch/wiki/MorseApplet)
and GFSK transmitters, as well as an [OOK
transmitter](https://github.com/travisgoodspeed/goodwatch/wiki/OOK_Example)
that will command cheap remote-controlled relays. It has a [frequency
counter](https://github.com/travisgoodspeed/goodwatch/wiki/CounterApplet).
The radio is accessible from a host computer over the UART for
building base stations and repeaters, or for rapidly prototyping radio
applications in Python. P25 and DMR support might come soon.
2018-07-07 20:31:05 +00:00
Additionally, we've written our own client for the CC430's BootStrap
Loader (BSL). You might find it handy for other projects involving
2017-11-02 21:48:12 +00:00
that chip, or other MSP430F5 and MSP430F6 chips without USB. You will
need to be a member of the `dialout` group to flash the firmware.
[Firmware documentation](http://goodwatch.org/doxygen/) can be built
with Doxygen.
2017-09-01 17:48:08 +00:00
## Hardware Status
Our replacement board is based around the CC430F6147, which combines
2017-09-01 17:48:08 +00:00
an MSP430 microcontroller with an LCD controller and a sub-GHz radio.
2018-07-07 20:31:05 +00:00
Thanks to pin compatibility, our fancy linker scripts produce a
firmware image that works just as well on the older CC430F6137
2018-07-07 20:31:05 +00:00
chip.
2017-09-01 17:48:08 +00:00
The
[GoodWatch30](https://github.com/travisgoodspeed/goodwatch/wiki/GoodWatch30)
is our current hardware revision, with filters that run from 300 MHz
to either 500MHz or 915MHz. The GoodWatch20 family had narrower
filters at 433MHz, but is still supported.
2017-09-01 17:48:08 +00:00
2017-11-02 21:48:12 +00:00
See `BOM.txt` in the hardware directories for a parts list, and the
wiki for an assembly guide.
2017-12-12 16:12:45 +00:00
## Related Projects
[Pluto](https://github.com/carrotIndustries/pluto) is a replacement
2018-11-11 16:24:26 +00:00
PCB for the Casio F-91W that is also based on an MSP430. We happily
use that project's [energy
monitor](https://github.com/carrotIndustries/energytrace-util)
utility for measuring our power budget.
2017-12-13 21:13:15 +00:00
[FaradayRF](https://faradayrf.com/) is a CC430 radio board intended
2018-11-11 16:24:26 +00:00
for amateur use, with a 500mW amplifier and GPS receiver. Their radio
chain is far more carefully designed than ours, but in time, we hope
that the two projects will communicate with each other.
2017-12-13 21:13:15 +00:00
[openchronos-ng-elf](https://github.com/BenjaminSoelberg/openchronos-ng-elf)
seems to be the most recently maintained firmware for TI's OpenChronos
devkit, which uses the CC430F6137. See Adam Laurie's
[ChronIC](http://adamsblog.rfidiot.org/2013/03/you-can-ring-my-bell-adventures-in-sub.html)
project for an early example of sniffing OOK traffic and replaying it
from a watch.
2018-11-11 16:25:02 +00:00
2018-11-11 16:24:26 +00:00
The [CharlieWatch](https://github.com/osresearch/charliewatch) from
Trammell Hudson is a nice little fork of the GoodWatch that uses a
2018-11-11 16:25:02 +00:00
charlieplexed array of LEDs instead of a Casio watchcase.
2019-05-05 00:44:31 +00:00
[iceSIO](https://github.com/icelord75/icesio) matches the same Casio
3208 casings as the GoodWatch, but uses a PIC16 platform with
accelerometer, compass and environmental sensors.