Go smartwatch toolkit
This is an attempt to build a toolkit for developing smartwatch firmware in Go (using TinyGo).
- Battery charge indication. Not yet properly calibrated.
This repository contains some example firmwares that run on all devices that have all relevant features implemented:
examples/hellodraws a yellow rectangle and some text, for quick testing of the smartwatch.
examples/batteryshows the current battery charge estimation and additionally also draws the voltage on the screen.
examples/digitalclockshows a very basic digital clock. It draws the current hour/minute on the screen. The time may be incorrect as TinyGo does not currently support setting the time on bare-metal systems.
Running on a real smartwatch
You can flash one of the examples to a real smartwatch. For example, to run the digital clock example on a PineTime:
tinygo flash -target=pinetime-devkit0 github.com/aykevl/go-smartwatch/examples/digitalclock
Note: as of this time (2019-11-07), you will need the development version of TinyGo (the
dev branch). Take a look here for information on how to build it from source.
All features of this toolkit have been implemented for Linux as well, returning
something that at least looks legitimate. This allows for quick edit/test cycles
go run. For example:
go run github.com/aykevl/go-smartwatch/examples/digitalclock
This toolkit has been licensed under the BSD 2-clause license.