Linux on the Zipit Z2

I’d like to thank Hunter Davis and Aliosa27 who literally did all the work to make this stuff. I’m just reproducing sections of it as a sort of clearer guide, and for my own reference.


This guide is basically hacked together from hunterdavis.com, from the varous coment threads and instructions that have been posted there, the files hosted by aliosa27 which I’ve mirrored here to not waste his bandwidth, and some photos/screenshots that I’ve taken on my own.


About This GuideThis guide is intended to step through the process of putting a barebones debian installation onto the Zipit Z2 Wireless Messenger, and implementing various hacks and drivers to emulate the functionality of a small computer, on what is essentially a toy for tweens.

There are multiple ways to do this, and there are multiple variants which will yield different results. This page is designed specifically to set up Debian, with a disk image on the MiniSD card that will allow both Windows and Linux computers to drop files into what is essentially the “hard drive” of the device.

Once the installation is complete, you may choose to install optional mouse drivers for the directional pad, and a keymap to emulate the functionality of a more complex keyboard. You will also be able to use apt to download packages from the debian repositories. Instructions on how to do so appear underneath the basic install instructions.

I am not a programmer. I am a nerd who likes to tinker with things. While I have gone through these steps myself and have tried to make sure that the steps are accurate and clear, we are still hacking a device to to something it is not intended to do, and I take no responsibility for you bricking your Zipit or encountering an unresolvable issue with the installation process.

The Setup

Using a Windows Computer for preparation.

To begin, you’ll need the following items:

  1. A Windows Computer
  2. A miniSD card or microSD with adapter
  3. A way to connect the SD card to your Windows Computer
  4. A Zipit Z2 Messenger
  5. The Internet!

You’re going to need to download several files:

  1. Either the 1gb or 2gb disk image from sourceforge (Created by Aliosa27)
  2. Aliosa27’s latest oe userland image
  3. Aliosa27’s keymap.map file and z2mouse-option file (Optional: For mouse emulation)
  4. phsydiskwrite  Either version, though the GUI version is easier to use.
  5. The autoflasher script
  6. Windows ext2 filesystem driver (If you can’t see fat partition from Windows)

Using a Linux Computer for preparation.

You will need:

  1. Your zipit z2
  2. A linux computer with an internet connection to download files and gparted installed.
  3. A miniSD card, or microSD in a miniSD adapter.

You will need to download these files:

  1. Either the 1gb or 2gb disk image from sourceforge (Created by Aliosa27)
  2. Aliosa27’s latest oe userland image
  3. Aliosa27’s keymap.map file and z2mouse-option file (Optional: For mouse emulation)
  4. The autoflasher script

 

The Installation

 

Using a Windows Computer to set up the Zipit

  1. First, flash the zipit. Extract the autoflasher bundle to a fat16 formatted memory card
  2. Open Aliosa27’s wireless+x+audio.tar.gz file, and copy out the /boot/linux-2.6.29 file to your memory card
  3. Rename this file kernel.bin
  4. Boot the zipit with the SD card inserted. If this does not start the linux flash, go to settings->reset to default and it should soft-reset
  5. Some SD cards are reported to not work, or not always be seen by the zipit. Try both with and without the power cable plugged in
  6. The z2 will boot linux and copy the wifi firmware to the sd card before flashing linux to the Z2.
  7. Copy off the 2 wireless firmware files gspsi.bin and gpspsi_helper.bin to a folder, you will copy these back to the memory card after we write the image
  8. IMPORTANT — rename helper_gspi.bin to be gspi8686_hlp.bin or it will not load later!
  9. Extract the 1/2gb image to a folder
  10. Extract phsydiskwrite to a folder
  11. Insert your microSD card into the computer (adapter, usb stick, etc)
  12. Run phsygui.exe from within the folder you extracted psydiskwrite to (requires .net framework)
  13. right-click on the drive letter for your SD card, select the first menu item, and then select the 1/2gb image you extracted earlier (.img)
  14. After it writes, safely remove the disk then plug it back in. if windows can see the fat partition copy the firmware files to it
  15. If windows cannot see this fat partition, dowload the ext2 filesystem driver, run it, then copy the firmware files over to /lib/firmware/notlibertas/ (yes notlibertas, the fat filesystem is mounted as /lib/firmware/libertas so you can’t use that)
  16. Insert the sd card into the Z2, and boot. Login as root, password debian. Congrats! You’ve got debian on the zipit!
  17. If windows couldn’t see your fat32 partition, copy the firmware files from /lib/firmware/notlibertas to /lib/firmware/libertas. You may need to run fsck if linux can’t see the files.
  18. Reboot, and you should have wireless device when you type iwconfig. Configure the wireless settings, and you’re ready.

 

Using a Linux Computer to set up the Zipit

  1. First, flash the zipit. Extract the autoflasher bundle to a fat16 formatted memory card
  2. Extract Aliosa27’s wireless+x+audio.tar.gz file, and copy out the /boot/linux-2.6.29 file to your memory card
  3. Rename this file kernel.bin
  4. Boot the zipit with the SD card inserted. If this does not start the linux flash, go to settings->reset to default and it should soft-reset
  5. Some SD cards are reported to not work, or not always be seen by the zipit. Try both with and without the power cable plugged in
  6. The z2 will boot linux and copy the wifi firmware to the sd card before flashing linux to the Z2.
  7. Remove the MiniSD card and connect it to your computer.
  8. Copy off the 2 wireless firmware files gspsi.bin and gpspsi_helper.bin to a folder, you will copy these back to the memory card after we write the image
  9. Rename rename helper_gspi.bin to be gspi8686_hlp.bin
  10. Extract either the 1gb or 2gb disk image from sourceforge, you will end up with an .img file.
  11. Write that .img file to the MiniSD with dd if=/<folder>/<filename>.dd of=/dev/<deviceid>
  12. Copy the two wireless firmware files gspsi.bin and gspi8686_hlp.bin to /lib/firmware/notlibertas
  13. Remove the MiniSD from the computer and insert into the Z2, then boot the Z2, the OpenZipit logo should appear, followed by a login prompt.
  14. Login: root      Password: debian
  15. Copy the firmware files gspsi.bin and gspi8686_hlp.bin from /lib/firmware/notlibertas to /lib/firmware/libertas, ane make them excecutable.
  16. Reboot the device and login, wireless should be working, use iwconfig to connect to an access point.

 

Mouse Emulation

To get the directional pad working as a mouse, you’ll need to download one of the mouse drivers from the files section

z2mouse-option

This driver works with the keymap.map file to make the directional pad act as a mouse, and the upper row of keyboard keys act as function keys when the Options button at the top of the keypad is pressed.

To install:

  1. Download the driver z2mouse-option and the keymap keymap.map to the device
  2. place z2mouse-option in /bin and chmod 777 it.
  3. place keymap.map in /etc, if there is a file there named keymap.map already, back it up before doing this.
  4. edit “~/.fluxbox/startup” and add “/bin/z2mouse-option &” in the startup section
  5. edit “/usr/bin/startfluxbox” and add “/bin/z2mouse-option &” in the startup section
  6. reboot the device and startx, wait until the desktop has loaded fully then hit the option key to toggle the mouse on/off

 

 


 

Screenshots/Videos


A cleared screen taking a framebuffer screenshot.


output of iwconfig after placing wireless firmware in libertas


Installing and then using fbgrab to take framebuffer screens


output of fdisk -l


links2 viewing google.com from CLI


output for pinging google.com


viewing reddit.com from CLI with Links2


Fluxbox desktop after startup.

The fluxbox menu in action using z2mouse-option


using dillo to view google.com from flux


using dillo to view reddit.com from flux


Another shot of reddit.com.

Leave a Reply