Matt Clark launching into Pebble Watch app programming
I’ve been monitoring the success of the Pebblewatch on Kickstarter.com, and last week I got mine. The Pebble is a smartwatch with an LCD display, vibrating motor, magnetometer, accelerometer, and Bluetooth 4.0 support to connect to iOS and Android devices.
It is pretty cool to get TXT messages and caller-id for incoming phone calls on my watch. I don’t always notice my phone vibrating, so being notified and receiving messages on my wrist is convenient (and fun!).
The included apps are simple, and I downloaded a few third-party apps from several online sources. It is exciting to see the creative apps that folks are making.
I saw a need for a custom app on my second day of ownership. My middle-aged eyes are just not good enough to read the stopwatch numbers easily, especially when running.
Thanks to the Pebble SDK samples and some other open-source projects available online, I was able to create a stopwatch app with big numbers in just a few evenings of work. I gave it a test drive (or run) this morning while exercising, and it worked great.
Unfortunately the Pebble SDK is fairly basic and missing several key components. The most glaring omission is the absence of data persistence – navigating away from the stopwatch app will lose the elapsed time. For other apps, this means that any settings or high scores will not be retained. The accelerometer functions are raw, and would benefit from higher-level gesture functions that could convey gesture intent at a high level.
Programming for the Pebble SDK is a throwback to my desktop application programming experience of years ago, when the cycle for testing a software change was edit-save-compile-link-execute-test. Nowadays in the web development world, it is usually a simpler process of just edit-save-refresh. So Pebble programming is inherently slower, and magnified by the lack of modern debugging tools. For Pebble, I think the best approach is to test often after making only one or a few simple changes to the program. Some API functions do not quite work as documented, and I also learned that I can “crash” the Pebble operating system!
In summary, the Pebble Watch is an exciting new product, especially for a hacker like myself. I know that other smart watches exist in the marketplace, but none with the ability for someone to customize the apps to this extent.
I’m an engineer and programmer. I am just waiting for a fun project on the Pebble Watch … anyone have any Pebble app ideas?
Chief Technical Officer