There are numerous boards on the market targeting Arduino users who want to integrate circuits into wearables with ease. This all kicked off with the introduction of the Lilypad Arduino 10 years ago (wow, how time flies). For many people, the problem with these boards was they were big and bulky and, for the most part, overkill for most wearables projects. In 2013 Adafruit announced the Gemma to help combat this. The Gemma was smaller, at only 1″ in diameter and featured fewer pins to keep the size down; best of all, it came at a price point of under $10. Now Adafruit is updating their line of boards, moving away from the traditional ATMega and ATiny chips used before to new, more powerful chips in their M0 or Express lines — and they brought the Gemma along for the ride.
The new Gemma M0 just might be the best platform for wearable projects! It features 3 GPIO pins, all of them capable of digital I/O, analog In, and capacitive touch. Two of the pins are compatible with PWM output, and one has true Analog output with a 10-bit DAC. In comparison with the old Gemma, which also had 3 Pins, only one could read Analog signals, one could do PWM, and the other was just a plain old digtial I/O pin. The Gemma M0 still has a JST battery connector with built in charging, and a micro-USB connector for charging and programming. There is even a user accessible RGB LED on board that is compatible with the popular NeoPixel libraries.
The Gemma M0 is part of Adafruit’s new line of boards that are trying to move away from being tied to the Arduino ecosystem. While you can still program the Gemma M0 with the Arduino IDE, the goal is to move users to their Circuit Python platform. This is where I think the Gemma M0 really stands out as a wearables platform. With Circuit Python, you don’t have to have a piece of software specifically installed to program the device. Simply plug the board in and it looks like any flash drive you would plug into your computer, edit the “main.py” file with any text editor, and when you save your changes you are done. This means that reprogramming your wearable project on the go is easy and can be done almost anywhere.
I recently helped a friend of mine out as he was making the latest version of Adafruit’s NeoPixel ring goggles for Halloween. Getting started with the Gemma M0 was easy for him and we were quickly able to make his goggles change patterns and his costume was complete. This was one of his first experiences with programming a microcontroller, and it was easy to tell he enjoyed it. The one problem he ran into, as a word of warning: in his windows settings he had “hide known file extensions” turned on. So when he saved his file as main.py in Notepad, it actually named it main.py.txt and would not run. If you run into problems, check for this.
With all the features packed into the same form factor and for the same price, the Gemma M0 basically makes the original Gemma obsolete. In the wearables world, the Gemma M0 is going to be hard to beat.