Pebble smartwatch review

I got some money for my birthday, so I decided to spend it on something frivolous. I bought myself a first generation Pebble smartwatch. I wanted to get the first gen instead of the recently released Pebble Time because I thought it would be the best way to see if I’d even use a smartwatch before investing that much money in it.

I ordered the watch last Monday. It got here a day early on Thursday. By nightfall Thursday, I had already created my first app for it – a daily Bible verse reader. After a few releases, the daily verse reader could get a daily verse as well as a random verse.

The source code to the daily verse Pebble app is on GitHub.

This weekend, I developed my first C language app for the watch. It is a moon phase app that shows the current phase of the moon. It uses location awareness to determine what hemisphere the watch is in so it can show the correct perspective of the moon (Northern and Southern hemispheres have the same phases, but they are “upside down” from one another as viewed from Earth).


As a watch, it is a great device. It has many watch faces available. It’s fun to try new faces. I’ve landed on two that I use the most – the Modern watch face and a Star Trek style watch face. They both show the current temperature along with the time.

One of the best features is the music control. I can be listening to my music and change songs and pause from the watch. It’s also cool when I get a call while I have my headphones on. All I have to do is hit the “answer call” button on the watch and start talking without pulling my phone out to see who it is and answer it. It shows who is calling on the watch.

I’ve also downloaded a great game called Jump! Chump! and a fitness/sleep tracker called Misfit. I’m getting a lot of use out of it. So far, the battery has lasted me a few days. I didn’t charge it all the way when I first got the watch, so I had to charge it today. I fully charged it, so I’ll get a better idea for how long the battery lasts. I’ve been using it a lot to test my apps as I make new releases, so I’m not sure if I’ve got regular usage patterns or not.

I’m definitely getting a benefit from the watch and I look forward to saving up for the new Pebble Time. I won’t be getting the more expensive Steel option, but I will get the basic Pebble Time in a few months. It has a new timeline feature that I think will be cool.

I was thinking of adding the moonrise and moonset times to the timeline, but I’m having trouble locating the proper formulas for calculating the values. I have everything I need, time, date, latitude, and longitude. It’s just a matter of finding (or writing) the code I need. The precision I’ve got on lat and long are to the nearest integer value as I am still learning how to convert a byte array to a double in C.

That has been the biggest challenge for me in all this. I don’t know the C programming language. I have been using “C like” languages for many years like Java, JavaScript, and C#, but I have never had to deal with manual garbage collection and pointers before.

I took an intro to C class in college back in 1992, but that was an intro, and it’s been a long time.

So, I’ve put Swift aside for now as I learn C. This will benefit me in that it is similar enough to Objective-C so that I can develop in ObjC, then switch to Swift in the future.

I’m having a blast writing watch apps. It’s a lot of fun.

I probably won’t get an Apple watch as the Pebble seems to be providing everything I need. I just hope Apple doesn’t cut Pebble off by not approving their app in the Apple app store. That would be a terrible move on their part.