Menu:

MetaWatch

Project:MetaWatch
Purpose:Controlling Fossil's MetaWatch from Linux
Started:June 2011
Status:active
Maintainer:Nicole Faerber

For those unfamiliar with the MetaWatch, have a look at their website. The MetaWatch is an intelligent wrist watch based on a TI MSP430 microcontroller accompanied with a Bluetooth module. For some more details you can visit my Metawatch internals page.

This labs project is about developing a Linux based client software for the MetaWatch which can later on probably also be used with other similar devices. My current design gola is to create two major parts:

  1. A library providing an API to all watch functions plus some convenience functions to make life easier - abstract drawing and font rendering or Bluetooth connection bringup for example.
  2. A service daemon using the library, keeping up the communication channel with the watch and listening to events over DBUS. Events could be system generated events like messaging notifications. I also plan to implement on own MetaWatch DBUS service to control the watch over DBUS signals/messages.

Currently the protocol implementation is almost complete, as far as the protocol is implemented on the watch already. I have the library API structure implemented so that the architecture is clear but still some functions missing. The library also has the already mentioned convenience functions already implemented using an abtsract drawing buffer, drawing functions for the buffer and converter functions to convert the drawing buffer into a watch buffer for the LCD or OLED displays.

to make testing a little easier I started a GTK+ based GUI application which already uses the library, a glib mainloop (GTK) and GIOchannel for the I/O.

The GIT tree is available at http://git.kernelconcepts.de/?p=metawatch.git;a=summary

I will also at some point try to port this to mobile devices like Nokia N900.