Device Profile: Aeronix Zipit instant messenger appliance
Jul 14, 2005 — by LinuxDevices Staff — from the LinuxDevices Archive — 17 viewsAeronix used Linux to build a $99 instant messenger appliance aimed at keeping kids from tying up the family PC while chatting with friends. Naturally, hackers soon appropriated the device for other duties, such as remotely controlling/monitoring Sony's Aibo robot.
(Click for larger view of Zipit)
The Zipit is marketed under brandnames that include ZipitWireless and K-Byte, and is currently available at Target and TigerDirect, priced at $99, in colors that include white, silver, blue, red, and pink. It includes an 802.11b WiFi radio, 16-color greyscale LCD with QVGA (320×240) resolution, and a thumb keyboard with rubber buttons. Also included is a stereo DAC (digital audio converter) connected to a speaker and headphone jack.
The Aeronix Zipit is available in five colors
(Click to enlarge)
Out of the box, the Zipit supports up to 99 concurrent AOL, Yahoo, and/or MSN chat sessions. An LED flashes when a new message is received, while another reflects the state of the WiFi connection. A “menu” button provides access to chat buddy lists, emoticons, and setup preferences. A “friends online” button shows buddies currently available for chat (no import is necessary to use this feature, Aeronix says). Favorite emoticons can be assigned to three programmable buttons.
The Zipit's look and feel strongly resembles that of mid-80s Macintoshes, complete with a boot-time smiley. Come to think of it, the phrase “look and feel” entered the popular vernacular when Apple sued Microsoft over Windows 95's user interface; perhaps a similar case will arise should the Zipit ever approach iPod-like popularity. Support for streaming audio is promised in a future firmware revision.
What's under the hood?
According to the AiboHack Project, a group of hackers devoted to Sony's robotic dog, the Zipit is based on a Cirrus EP7312-CR-90, an SoC (system-on-chip) with an ARM720T core that clocks up to 90MHz. This chip is supported by several Linux distributions, including FSMLabs's real-time RTLinux.
The Zipit boots from 2MB of Flash, reportedly, and has 16MB of SDRAM. David Anders is reportedly investigating a way to add an MMC memory card slot to the device, to expand its storage capacity, according to Tim Riker's Embedded Linux website, which hosts project pages devoted to the Zipit.
On the software side, the Zipit comes stock with a 2.4.21 Linux kernel with Russell King's ARM patches. The WiFi chip is powered by a patched version of Agere's Linux WiFi driver. Other open source software includes busybox, uClibc, glibc, and wireless tools. Proprietary software includes the bootloader, audio driver, and the monolithic native ARM application that provides the device's user interface and all its features, according to Aeronix's Zipit Linux page.
The AiboHack project has published several Web pages about the Zipit, including instructions on how to modify the device in order to expose a serial interface (soldering and a level-shifting chip required). The pages are available here.
An embedded Linux site run by embedded Linux technologist and former Lineo CTO Tim Riker, meanwhile, has documented reflashing the Zipit without resorting to soldering. We asked Riker for a brief explanation of the project's status and goals, and he replied as follows:
The Zipit is a nice little piece of hardware. It is an inexpensive embedded Linux platform and a great place to start learning about Linux on mobile devices.
The Zipit developers chose not to use a standard framebuffer in their kernel. This causes some grief to them and to developers as we in the community use a standard framebuffer driver but we need to unload it before starting the Zipit application.
Aeronix Inc. originally did not post any of the GPL and LGPL source code used in the Zipit. After we confirmed that they used Linux, we politely asked that they comply with the license terms. I am one of the copyright holders in the code they use. I am pleased to see that they have at least posted pointers to the tools they used. They are still in violation of the terms of the LGPL for glibc. The Zipit application is statically linked to glibc and no Zipit object file is available for relinking. This is an unfortunate design as they could save themselves flash space if the Zipit binary were dynamically linked to uClibc instead.
Ken McGuire, one of the Zipit community members, has developed an Open Source audio driver that appears to be more stable than the driver available from Aeronix. I'd recommend that they adopt that driver instead of their own.
It is unfortunate that Aeronix chose to use encryption for the firmware updates. It does not prevent community members from flashing custom firmware. It does make it more difficult for developers to work on the platform. Using encrypted firmware updates has hindered sales of Zipit units. Removing the pins for the serial ports has had a similarly detrimental impact on Zipit unit sales.
Aeronix does not have a subscription revenue from Zipit usage. They would benefit from making the platform as open as possible without incuring any additional expense. Leaving solder points for the serial ports and additional points for the unused GPIO pins would make enhancing the product much easier. The more things that can be done with the device, the more devices people will buy.
Additional details about hacking the Zipit may also be available from the Zipitwireless Yahoo Group. An extensive user review praising the Zipit's battery life and other features can be found here. Instructions about adding an LCD backlight are here.
Aeronix was unable to speak with us about the Zipit by press time. However, we caught up with Zipit creator Ralph Heredia a few days later. Find out what he has to say by clicking the link below.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.