Case Studies : Blue Mug Creates Firmware for TypeSoft's Vera
Customer: Typesoft
Industry: Mobile consumer electronics
Solution: Low-cost textpad
Typesoft Profile:
Typesoft is a startup company founded by Rod Stambaugh, an
entrepreneur with the original Vera concept, in August 2001.
Technical Challenge:
Vera is a low-cost full-sized keyboard with text display. Users
may work on several different documents while on-the-go, then upload
them to their PC via USB.
Typesoft partnered with Blue Mug to design and implement the Vera
device firmware, PC client application, and PC driver. Another
partner, Frog Design, designed the form factor and hardware.
Typesoft required several rounds of working prototypes for iterative
cycles of design and user feedback. These cycles were timed
aggressively to target an early launch date.
Blue Mug Solution:
Blue Mug engineers quickly subdivided their task into three areas: low-level
firmware integration, device software, and PC software.
The firmware integration team worked closely with Frog Design on the
hardware design and helped iron out hardware bugs. It then wrote custom
drivers for the device hardware.
In parallel, the device software team developed a tiny and efficient
text editor. Starting pre-silicon, this team designed an emulation
environment which was later smoothly transitioned to the actual
device.
The PC software team pushed to get a working prototype application built,
which then went through iterative stages of UI design and feature integration.
In this way, Typesoft always had a working demo which kept getting better.
The device firmware needed to be as small as possible to keep costs
down. This required our engineering solution to be extraordinarily
space-conscious. Remarkably, our team managed to fit a full text
editor, memory manager, display driver, USB driver, and keyboard
driver into less than 8k of ROM.
Benefits to Typesoft:
- Rapid prototyping identified problem areas and allowed for feedback
- Typesoft able to focus on product goals instead of all design details
|