An Open-Source Wearable Electronics Board
- Hardware design and software code are available for download at SquareWear’s Github Repository.
- SquareWear v1.1 coin version, li-po version, starter pack, and LED badge are available at Rayshobby Shop.
- SquareWear basics, learning from examples, and programming reference are available in the User Manual.
- Blog post about the release of SquareWear.
• What is SquareWear?
SquareWear is an open-source microcontroller board specially designed for wearable electronics projects. It is small in size, low-cost, simple to use, and provides an all-in-one solution for wearable electronics projects. It builds on Microchip’s PIC18F14k50 mcu, and comes with a few different colors and two battery options. The coin version has a built-in 20mm coin battery holder and measures 1.6″x1.7″ in size; the li-po version uses an external li-po battery and measures only 1.6″x1.6″ in size.
All SquareWear boards have built-in USB connector, which is used for programming, for charging, and for USB serial communication. No external programmer or USB serial cable is required, saving you money. It uses Microchip’s HID class bootloader, which means your system can automatically recognize it without the need of installing any driver. Also, SquareWear has four digital outputs connected to on-board MOSFETs, making it suitable for switching high-current components such as a string of parallel LEDs. In addition, it has a general purpose push-button (not just for reset) and an on-board LED. Finally, the coin version has built-in coin battery, which makes it especially suitable as a low-cost, all-in-one board for education, school projects, and wearable computing workshops.
The SquareWear software library is open-source and provides high-level functions to meet common prototyping needs, such as digital/analog pins functions, interrupts (including timer, button, and external interrupts), pulse-width modulation (PWM) (including one hardware PWM pin and eight software PWM pins), USB serial, I2C, EEPROM etc. The software builds upon Microchip’s peripheral library and the cross-platform MPLAB X IDE. While the programming interface is not based on Arduino, it is designed to be as simple as Arduino, abstracting away low-level details. Take a look at the programming guide and demo programs to find out. One advantage of using MPLAB X is that it is a powerful and fully-featured programming IDE. If you have some experience with Arduino programming and is ready to move on to a more technical level, this is a good way to get you started.
• What can I use it for?
SquareWear is primarily used for wearable electronics projects, such as reading sensors, controlling LEDs sewed onto fabrics, and sending data to a computer through its USB port. It is low-cost and particularly suitable for beginners of wearable electronic projects or school workshops. I have personally organized several wearable electronics projects at my school in the past, and the design of SquareWear is based on my experience, my wish list, and the expected cost I had in mind. For example, it has:
- Large pin pads suitable for sewing onto fabrics.
- Software PWM support on most pins because you want to control the LED brightness on as many pins as possible.
- Four MOSFET output pins suitable for driving high-current load, because you want your LEDs, especially if you have many parallel LEDs, to look as bright as possible!
- On-board USB, general-purpose push-button, battery holder (coin version) and li-po charger (li-po version) are all designed to save you money and trouble on having to buy and connect external components.
Beyond that, you can also use SquareWear as a low-cost general-purpose microcontorller board. Use it for hacking or interfacing with other devices. Its compact size and built-in battery (coin version) makes it easy to squeeze into small places. Also, the HID class USB bootloader makes it easy to reprogram the microcontroller without needing any external programmer or even installing a driver.
• What is the difference of coin vs. li-po version?
The coin version (1.1c) has on-board battery holder and comes with a CR2032 lithium coin battery. It’s good to get you started right away and saves you trouble on having to connect external battery component. The battery is inexpensive and easy to find at your local retail stores. It’s especially suitable for beginners of wearable electronics. On the other hand, it won’t be able to drive high-current load, such as many parallel LEDs: the battery will drain quickly and will not last very long.
The li-po version (1.1p) uses an external li-po rechargeable battery. It’s suitable for driving high-current load, and you can get high-capacity batteries to make your project run longer. SquareWear has built-in li-po charger to recharge the battery through its USB port. On the other hand, the li-po battery is expensive, requires hours to charge, and difficult to find in local stores.
• How is SquareWear different from LilyPad Arduino and Adafruit’s Flora?
LilyPad Arduino and Adafruit’s Flora are two wearable electronics board based on the Arduino. Here is a summary of the main differences:
While SquareWear’s program memory space (16KB) is smaller than the Arduino (32KB), it is still more than sufficient for a lot of wearable electronics projects. For example, blinking or fading LEDs require less than a few hundred bytes. The SquareWear demo pack has several complex examples involving pulse sensing and USB communication. Even those take no more than 10KB. In many cases you will be bottle-necked by the number of pins and the available functionality of pins, instead of the program memory space.