Mcavity's Notes
From openzipit
The quick and dirty Zipit Z2 FAQ v2.1
Contents |
Preface
Congratulations! you have a Zipit Z2!
The Zipit Z2 is a small palm sized device designed primarily for Instant Messaging, SMS and playing music. Installing Linux on the Z2 transforms it from a simple MP3 player with Instant Messaging, SMS capability into a full fledged pocket computer.
Installing Linux on the Zipit Z2
Credits & Sources
Thanks to:
Choosing Linux Distribution
Currently there are two main Linux distros (distributions i.e. flavors) for the Zipit. They are OpenEmbedded (OE) and Debian. Each has their strengths and weaknesses and some slight differences in how some basic things work.
Debian is a full Linux Distro with many applications that can be installed via apt-get program.
Usage: apt-get install <package-name-goes-here>
However since Debian Linux was not built specifically for the Zipit Z2, it's not optimized for the Zipit as well as the OE distro.
The OE distro is optimized the Zipit Z2 and runs faster with a smaller memory footprint. However there are not as many easily installable applications available.
Linux Installation Method
For those following along at home, the required setup artifacts are below. You will need:
- Your zipit Z2
- A Linux computer with an internet connection (to download the packages below) and gparted installed. (I did this with a ubuntu live cd and gparted live CD)
- A miniSD card [or a microSD with miniSD Adapter]
Do you have everything ready? Let’s get to it!
- Head over to http://sourceforge.net/projects/openzipit and downloaded the autoflasher.
- Download Aliosa27’s new kernel image and userland here:
- This is the OE Linux version for the Zipit: http://aliosa27.net/projects/zipit2/zipit2-audio+x+mouse.gz
- Grab the latest mouse emulator from here: http://aliosa27.net/projects/zipit2/z2mouseemu
- Become the "root" user
- Using gparted: Format your miniSD to a FAT16 or FAT32 partition (I did 300 megs but you really need much less than 100)
- Extract the autoflasher to the FAT partition
- Extract the kernel and userland image somewhere on your PC
- Mount the miniSD FAT partition
- From the extracted files, copy out the ./boot/zImage-2.6.29 to the root of your miniSD as "kernel.bin"
- Unmount the miniSD FAT partition
- Move the miniSD to Zipit Z2
- Boot the Z2 and allow it to flash and reboot to the new Linux logo:
- This will also make a copy of your original kernel and wifi firmware, copy them off the miniSD somewhere safe. (Don’t Skip this! This contains the WiFi firmware drivers.)
- Power off the Zipit Z2
- Move the miniSD back to PC
- Using gparted: format miniSD into 2 new partitions, ext2 (the majority of the card) and swap (the remaining 256 megs).
- Using mkfs, format ext2 partition: mkfs -t ext2 /dev/sda1
- Using mkswap, format swap partition: mkswap /dev/sda2
- Mount the miniSD ext2 partition
- Copy the previously extracted files and directories from zipit2-audio+x+mouse to the root of your miniSD.
- In the backup of the zipit kernel you made in step 9 locate gpspsi_helper.bin [may be named helper_gspi.bin] and rename it to gspi8686_hlp.bin.
- Copy gspi8686_hlp.bin and gspsi8686.bin to /lib/firmware/libertas
- Unmount the miniSD ext2 partition
- Move the miniSD to Zipit Z2
- Boot the Z2
Windows Installation Method
This works for Windows XP. (Vista and Windows 7 untested.)
You’ll need
- Either Aliosa27’s 1GB or 2GB disk image posted to the SF page:
- Aliosa27’s latest OE userland image:
- physdiskwrite (I recommend the GUI version for ease of use)
- The AutoFlasher script:
- If Windows can’t see the FAT partition get Windows ext2 filesystem driver:
Ready?
- First, replace Zipit Z2 Linux kernel:
- Extract the autoflasher bundle to a fat16 formatted memory card
- Open Aliosa27’s wireless+x+audio.tar.gz file, and copy out the /boot/linux-2.6.29 file to your memory card
- Rename this file kernel.bin
- 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
- 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
- The z2 will boot linux and copy the wifi firmware to the sd card before flashing linux to the Z2
- 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
- IMPORTANT — rename helper_gspi.bin to be gspi8686_hlp.bin or it will not load later!
- Extract the 1/2gb image to a folder
- Extract phsydiskwrite to a folder
- Insert your miniSD card into the computer (adapter, usb stick, etc)
- Run phsygui.exe from within the folder you extracted psydiskwrite to (requires .net framework)
- 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)
- 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.
- If windows cannot see this fat partition, congratulations! Windows sucks! 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)
- Insert the sd card into the Z2, and boot. Login as root, password debian. Congrats! You’ve got debian on the zipit!
- 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.
- Reboot, and you should have wireless device when you type iwconfig. Configure the wireless settings, and you’re ready.
If all went well you should now have one of the two versions of Linux installed on your machine! If your familiar with Linux go have fun! If not this next section is for you.
Using Zipit Z2 Linux
Linux is a constantly evolving os but its roots go deep. If your only experience with computers is with Windows and fancy GUI’s well this will be a change.
For many tasks on the Zip-it We will be going “old school” and using the command line interface and using a text based terminal mode.
Here are some basic usage pointers on the Zipit.
Keyboard maps and mouse emu is ongoing. There are better configurations out there.
OE Linux Defaults
- Tab is the big “Z” button at the top middle of the keyboard.
- Prev/Next is mapped to pageup/pagedown
- The “…” key is Control key.
- In X the volume keys are "+" and "-"
- Happy face is ESC
- Currently Number buttons dont work in X
Mouse Emulation in X
- Hold smile down to use mouse.
- Left click is the stop button
Frequently Asked Questions
What is a Zipit?
The Zipit Z2 is a small palm sized device designed primarily for Instant Messaging, SMS and playing music.
However the Zipit Z2 happens to have some fairly powerful hardware inside that small package.
- ARM CPU at 300 MHz
- 32 Meg onboard memory (RAM)
- 320 x 240 color LCD display
- Sound chip
- 802.11 B/G wireless chip
- MiniSD card slot
With those specs it was only a matter of time before someone decided to try and install Linux on it. And the good news is: It works!
How do I get on my wireless network?
Depending On what version of Linux your running. These setting are for unencrypted networks.
OE Linux
- Connect to your router:
iwconfig eth0 essid "MY NETWORK SSID" - Acquire DHCP settings:
udhcp
Debian Linux
- Connect to your router:
iwconfig eth0 essid "MY NETWORK SSID" - Acquire DHCP settings:
dhclient
How do I play MP3 files
Once you have mp3 files on your zip it you can play them with mplayer.
Usage: mplayer <filename.mp3>
How do I adjust the volume?
Use Alsamixer. The important settings in Alsamixer are:
- Headphone
- PCM
- Speaker
- Arrows adjust the setting and “m” toggles various setting on and off.
- Ctrl+Alt+Q exits.
How do I access it over the network?
Use dropbear. It runs an SSH Server allowing you to connect to the terminal from an outside system.
I have also used "Winscp" to transfer files.
What Can I do with it?
Once Linux is installed on the Zipit Z2 it’s a fully functional pocket computer. Essentially you can do anything you want on it. Do to its small screen size and limited onboard memory there are some practical limitations. Many applications will run but may need to be modified to fit the small screen.
Here I will list my current favorite applications.
Favorite Applications
- Alpine – terminal based email client. Works with Gmail. Quit fast and lightweight.
- Mutt – also terminal based email client
Instant Messageing
- Pidgin – graphical IM chat program that runs under X. Very powerful but needs to be tweaked to fit small screen. Its hard to configure in X.
- Finch – terminal based version of Pidgin. It may be easier to configure. It shares settings with Pidgin.
Music Player
- Mplayer - default mp3 and video player. Plays mp3s from the commandline and can playback video from a terminal window in X
- Cmus – powerful terminal based music player. Great search functions. Takes a bit of getting used to.
Video Player
- Mplayer – run from a terminal in X for video playback.
File Manager
- MC – Midnight Commander. Powerful file manager with good built in editor. Run from within X terminal as it requires Z2mousemu to be running to get access to Function keys.
Text editer
- Nano – terminal based text editor.
- Leafpad – windows based text editor.
Web Browsers
- Links2 – A light browser that works both in Text mode and Graphical mode. Runs well under X. Recommend disabeling frames and adjusting menu font size to 9 or 10.
- Dillo - X based graphical Web browser. Needs some work to be usable on a small screen.
Games
- prboom – doom engine. Able to play Doom very well. Need to edit config to get 320x240
- fceu – nes emulator runs under X use string:
./fceu –opengl 0 –sound 0 –xscale 1 –yscale 1 romname.zip - Bomberclone – need to edit config file to get 320x240
