Important news about HackSpace

We have some important news to share about HackSpace: Issue 81 was the last issue of HackSpace as a standalone magazine, and HackSpace has become part of The MagPi, the official Raspberry Pi magazine. Starting with issue 145, We’ll be adding pages to The MagPi to make room for the stories and tutorials you’ve come to expect from HackSpace.

Bangle.js 2 smartwatch review

By Ben Everard. Posted

There are two sides to any bit of electronics: the hardware and the software. On the Bangle.js 2 (£76.80), both are worth a close look. There is no such thing as perfect hardware – especially on a device as constrained as a smartwatch. There is simply hardware that makes trade-offs – for some users, those trade-offs will be good, and for others, they won’t.

Any smartwatch has to find the right balance between features and power consumption. By far the hungriest bit of kit on a smartwatch is the screen. Producing light takes power. A 60 mA backlight might be insignificant to a mains-powered device, but it’ll kill a watch in just a few hours. However, a bright, crisp display needs these photons. The Bangle.js 2 keeps this part of the power budget low by using a 176 × 176 3-bit colour transflective display. Transflective means that it’s lit by reflected light rather than a backlight, and, in normal light conditions, you can read it without the backlight enabled. Having this display means that the battery life is measured in weeks rather than days. Exactly how many weeks depends on what you’re doing with it, but it’s likely to be in the range of one to four.

Strapped onto this screen is an impressive range of sensors, including GPS, heart rate, and barometric pressure. A 64MHz Nordic microcontroller with an Arm Cortex-M4 core pulls all the data together and keeps the screen ticking. This is a reasonably powerful microcontroller that should be able to keep up with most of your needs. There’s a bit of a delay in starting apps, but not enough to annoy us.

This reviewer is really impressed by the hardware, mainly because of how much software it keeps running and how little battery power it uses. However, there is another take – the screen isn’t as bright and crisp as some others. The heart-rate monitor is a little finicky, and the GPS can be slow.

For us, the trade-off of having good battery life is well worth these aspects, but others may prefer a different trade-off.

Apps are delivered to the Bangle directly from a Web Bluetooth-capable browser

A softer side While the hardware is a good proposition, it’s the software that brings this watch to the attention of this magazine. The entire software stack is designed to be programmable and is based on the open-source Espruino framework. This means that everything is written in JavaScript – a language that seems to delight as many people as it horrifies. JavaScript was originally a language used to add features to web pages, where it sat between two asynchronous and unpredictable things: people and web servers. The way it developed here – with a strong emphasis on event-based programming – means it’s a good fit for some other cases, including where low power use is essential. It can take a bit of time to get your head around event-based programming if you’re used to a more traditional paradigm, but it’s a good fit for watches (and web pages).

There is an app store for Bangle.js 2 at that can load apps directly onto your watch via Web Bluetooth. At the time of writing there were 543 apps available, but many replicated functionality. There are apps for most core functions of heart-rate monitors, GPS trackers, and phone notifications, but beyond this, it’s a little sparse. However, the point of an open smartwatch isn’t that there’s lots of apps available, but that it’s easy to create your own.

The software stack is open by design, so you can access all of the watch’s hardware without artificial limits, and there’s plenty of documentation to get you started. All of the apps in the store are open and linked via GitHub, so there’s a lot of code that you can look at for inspiration.

While many smartwatches are intimately linked to smartphones, the Bangle.js 2 is different. It can be linked to a smartphone – and has a companion app for both Android and iOS – but it’s fundamentally a standalone device and doesn’t need the phone for any of the core functions. The main thing you’d want the phone for is for receiving notifications, or transferring data. The latter can be done with a computer and web browser instead.

Less excessively 1990s clock faces are available for people whose tastes have progressed since Saved by the Bell

Overall, we think this is a great, hackable watch that many people will get a lot of joy out of. The part of the watch we dislike the most is the interface. There’s a single button on the side which can be used for short or long button presses. Additionally, there’s a touchscreen, but given the small size of the screen, we found it a bit clumsy. We wouldn’t say it was hard to use, but it never quite felt natural to us.

However, we absolutely love the battery life and daylight-readable screen. Coupled with the open-source software, this is definitely a smartwatch we can see ourselves using for a long time. We’ve played around with lots of hackable smartwatches over the years (including the original Bangle.js), and we can confidently say that this is our favourite by a significant margin.

Verdict

10/10

Open, hackable, lasts for ages on a single charge – that’s a great combination.


https://hsmag.cc

From HackSpace magazine store

Subscribe to our newsletter