Controlling Glass via Bluetooth with a Bluegiga WT12

Controlling Glass via Bluetooth with a Bluegiga WT12

Here we are, one step closer to my ultimate goal of using the Keyglove as a wireless input device to control a wearable computer. For this installment of progress, the milestone is Bluetooth control of Glass, using a Bluegiga WT12 module and the custom HID descriptor that I wrote about earlier. I won’t go into detail about what that descriptor does, since it’s all documented in the other post, but the short version is that it provides a keyboard, consumer page control (e.g. media), mouse, and raw bidirectional 16-byte packet transference.

Read more

Complex Bluetooth HID Input with iWRAP and the Bluegiga WT12

Complex Bluetooth HID Input with iWRAP and the Bluegiga WT12

Thanks to Bluegiga’s workhorse of a class 2 Bluetooth module and the latest iWRAP5 firmware with custom HID descriptor support, I have now been able to achieve the wireless capabilities I always hoped the Keyglove would have. Keyboard, mouse with scrolling support, consumer page reports, and raw HID packets for arbitrary data transmission. It isn’t fully integrated into the Keyglove code yet, and I’ve only tested it with manual control so far, but the firmware setup is solid. It’s now just a matter of translating the manual control I’ve already done into my codebase.
Read more

VIDEO: Prototype D Autodesk Inventor COM API Demo

VIDEO: Prototype D Autodesk Inventor COM API Demo

Keyglove #10 – Prototype D Autodesk Inventor COM API Demo from Jeff Rowberg on Vimeo.

This video demonstrates Keyglove Prototype D and the Keyglove Kit v0.4 PCB (v0.5 still pending design completion) along with the alpha Keyglove Manager app integrated with Autodesk Inventor using the COM API for true 3D input. This is just a sample of the kind of thing that can be done with the Keyglove. And, honestly, this isn’t even a very good demo due to the early stage of development of the Manager app and the loose mounting of the older revision of the PCB on the glove.
Read more

ATTiny44 I2C Slave Feedback Module

ATTiny44 I2C Slave Feedback Module

Some time ago, I made the decision to move all of the feedback elements of the prototype Keyglove design to a separate I2C-controlled module, instead of using direct I/O pin connections. I did this because I also added three new touch sensors and better Bluetooth link and mode detection, and I simply didn’t have enough I/O pins to satisfy everything at the same time. The I2C bus was already being used by other modules anyway, so adding an additional slave device didn’t reduce the number of available pins anywhere else. At the same time, I freed up five whole pins for other functionality (Red, Green, Blue, Vibe, and Piezo). Not bad.
Read more

Actually, Here’s Keyglove Kit v0.4

Actually, Here’s Keyglove Kit v0.4

So, after extolling all of the electronic virtues of the v0.3 Kit PCB only a few days ago, I’ve gone ahead and created a new revision of the board already. It turns out that it can indeed be smaller, without sacrificing any of the existing functionality. In fact, v0.4 is a full 25% smaller even than v0.3, giving us a PCB that is now a mere 46% of the original v0.1 board’s size.
Read more

Keyglove Kit Progress

Keyglove Kit Progress

Good news on the kit PCB! I think I’ve got a winning combination of size, layout, and functionality. I just posted Keyglove Update #17 on the Kickstarter project page yesterday which discusses some of what I’m going to explain here, but I’ll summarize that bit again for those of you who don’t follow those updates, and include a bit more technical detail here and there.
Read more

Improved WT12 Bluetooth UART GPIO Breakout

Improved WT12 Bluetooth UART GPIO Breakout

While working on the iWRAP code library for the Bluegiga WT12, one of the issues I’ve come across is trying to create a good way to detect and manage active Bluetooth links. The iWRAP firmware, controllable entirely over a simple UART connection, has three different possible modes. As I mentioned in my last post about the Keyglove Kit board, the most efficient solution is to avoid the high-demand MUX mode and instead rely on regular DATA/COMMAND mode switching and active link detection using two GPIO pins.
Read more

Keyglove Kit Initial Development

Keyglove Kit Initial Development

I’ve got quite a backlog of updates for you all, seeing as I’ve been quite busy but haven’t actually written any real blog posts here for over two months. Some of the updates may end up being bundled together, but my goal is to keep them each focused on a single subject to better explain what’s going on. We’ll see. Those of you keeping any eye on the @keyglove Twitter feed and/or the Facebook page have undoubtedly seen the steady stream of quick updates and photos that have been posted, but for those relying only on blog posts, I apologize for the apparent silence.

If you need a quick update without waiting for upcoming posts, check out the two links above—especially the Facebook page—and read through a bit of the history until sometime back around Christmas.
Read more

VIDEO: Wireless Mouse Movement Demo

Keyglove #09 – Wireless Mouse Movement Demo from Jeff Rowberg on Vimeo.

Finally! I have managed to incorporate the Bluegiga WT12 sufficiently into the current prototype hardware, along with the still-in-progress iWRAP code library to control it easily and transparently. This video demonstrates the first true combination of Bluetooth wireless functionality and the actual Keyglove code, rather than just a proof-of-concept Arduino sketch. This is a major milestone; wrapping up the remaining core Bluetooth functionality should be pretty straightforward now.
Read more