Arduino

Creating a sensor or peripheral with an SPI (slave) interface
Creating a sensor or peripheral with an SPI (slave) interface

Designed to interact with a 16-bit I/O expander, the firmware was ready for testing.  Though I was still waiting on parts, I wanted to make sure it would all work as expected.  What’s an impatient developer to do?  Create his own SPI slave to replace the missing part, of course! If you’ve gotten anywhere beyond…

Read more

Druid4Arduino: developments and mystery bug

The vagaries of life and a few real clients got in the way of druid2 development until recently.  I was all set to get going when the angry and fickle 4-legged god I live with changed my plans a bit… Thanks, kittie.  I’d been thinking of a new laptop anyway and managed to get one…

Read more

Druid2: the quest for beta testers
Druid2: the quest for beta testers

Hallo all… An updated, more powerful and much improved versions of druid and SerialUI are on their way in the coming weeks.  I’m looking for a few people who’d be willing to act as beta testers for the new versions–the more hardware, and platforms, you have access to, the better but any supported combination should…

Read more

NanoKeys Released

As promised, the NanoKeys library has been made public and is now available on it’s own project page! One noteworthy change is a modification to the key send/key clear algorithm that allows for much quicker transmission of key strokes and a snappier user experience.  Here’s a short clip of the new functionality in action: And…

Read more

Painless handling of dates, times, events and calendars on embedded systems
Painless handling of dates, times, events and calendars on embedded systems

I do not enjoy dealing with the vagaries of calendar dates and times… Actually, I pretty much hate it. It’s mostly because I have little patience for arbitrary rules and convoluted systems, and anything as old as the notion of date-times is always filled with historical cruft: half-baked rules, a bunch of incompatible, random-looking, bases…

Read more

BLE Nano: Review, Tips and Workarounds
BLE Nano: Review, Tips and Workarounds

I’ve recently had to develop an application using the BLE Nano platform. The BLE Nano is a little module built around the Nordic nRF51822 SoC, along with a minimalist set of support components  including an on-board antenna for the bluetooth wireless connection.  The Nordic itself provides all the Bluetooth low energy functionality and hosts your…

Read more

Using the on-board Real-Time Clock
Using the on-board Real-Time Clock

So you’re programming for a platform with a built-in RTC… cool.  Now what? Most (all?) XMEGA‘s have an on-board real-time clock, some can even be backed-up by a distinct battery (like the xmega256a3bu, shown below) which can be a real time saver (oh, the pun-anity!). The question then becomes how to best use it. I’ve…

Read more

Sweet new features for Druid4Arduino and SerialUI
Sweet new features for Druid4Arduino and SerialUI

New versions of SerialUI and Druid4Arduino have just been released and include some neat new functionality. The two major improvements are: automatic variable/state tracking continuous streaming output Variable state tracking Using SerialUI, you may now specify and label a list of (global) variables.  Each of these will automatically be displayed and refreshed in the druid…

Read more

Why (and how) you should start using XMEGAs
Why (and how) you should start using XMEGAs

I love the Arduino platform, especially for prototyping, and have been playing with the Atmel ATmega chips for a long while.  Once you’ve designed your project, some of the smaller derivatives (like the Ardweeny I’ve mentioned before) are cheap enough to leave embedded everywhere and, in any case, you can always move from an Arduino…

Read more

SerialUI and Druid4Arduino updated

SerialUI, the Arduino serial/terminal user interface, and Druid4Arduino, the automatic GUI for SerialUI-enabled devices, have both been updated and are available for download. SerialUI SerialUI has been expanded to include new functionality, the most important of which are: A “user-presence” callback.  You can now specify a function which will be periodically executed while a user…

Read more