Recent comments

You are here

Alternative OS's for the HP Jornada 720

The HP Jornada is a handheld device running windows CE 3.0. the HP Jornada was released in the year 2000 here is some steps I took and the results I got. your results may vary and I am not responsible for anything that may occur do to using the steps I post here. I hope that it helps you but I cannot know nor can I cover all the different circumstances and your may be different than mine. However these are the steps and results I got.
The Specs
Introduction
OS overview
Installing JLime
Installing Debian



The Specs


32 MB of RAM
a Compact Flash slot
a PC card slot with only 16 bit support
a Smart card slot
56K Modem
640x240 16-bit display
a 206 MHz StrongARM CPU


Intoduction

This project is an exploration of different operating system choices. The jornada is a great system for on the go. It can be setup to let you do remote administration on the go and is muuch easier to pack around with you than a full sized laptop. The tutorials here dont use a flashboard so this means you have to load into Windows CE then launch the program which runs your OS choice over Windows CE. Once I find an OS that runs well enough on the system I plan on buying a Flashboard and then making tutorials on how to flash the Jornada 720 with some different OS's.
O.S. Overviews

This is an overview of how I thought the different OS's compared. This chart will help you locate faster the OS you want to install. Perhaps you are looking for a feature, or perhaps you just want the one that is easiest to install well looking at the chart below may help you decide on the OS you wish to install. I do not compare these properties to other systems, Installation of course will be different from a regular system with a CD drive. Performance will not be as good as a 2.8 Gig processor etc. The comparisions are of the OS not the system so if i give performance a 4 out of 5 star rating dont expect it to be the same as a 4 out of 5 star rating for a regular system.

JLime

installation:(3/5)
Installation is easy as expected on such a machine, no hangups, instructions are easy to follow on my site this eases installation for people new to linux
hardware:(3/5)
Hardware seems to all work okay I havn't tested the RJ45 socket yet nor the smart card port
networking:(3/5)
Well the system is limited to 16 bit cards this is hardware not software, despite that once you find a card that works networking was easy. It only supports Open networks and WEP networks as far as I know so this limits the networks one can connect to.
package managment:(4/5)
Once we change the repository to point to the right spot package management is easy and can even be updated to use apt such as on debian based systems
performance:(3/5)
Pretty good performance for the processor it has At times it spikes in the GUI when opening a program usually but give it a second or two and it will catch up the processor in this thing is slow so keep that in mind. Definitly not for web browsing or playing games online but it works well for such tasks as remote administration and monitoring maybe emailing on the go etc.
GUI:(4/5)
GUI runs pretty smooth has an excellent system monitor on the right hand side of the desktop. Many themes are available after issuing the command "ipkg upgrade" which updated all installed packages to their latest versions.
Logging:(1/5)
Logging I feel is very important for a system for troubleshooting and maintenance, this OS only has one log file in /var/logs called messages and it doesn't log very much info.

Have your own opinions? Vote on JLime

Debian


installation:
hardware:
networking:
package managment:
performance:


JLime


JLime is the first OS choice we will look at the developers website is http://www.jlime.com
Typically JLime does not replace windows CE but instead is loaded once inside of windows CE. In other words it runs over top of the Windows CE GUI. This makes it easy to install but decreases performance.If you buy an optional flashboard you can actually replace Win CE and linux will boot from the chipset instead of from your Flashdrive. Releases are unstable but we will explore fixing each release below. I will outline installation once but this article is directed towards the differences once the O.S. is installed. If you have troubles I am more than willing to help if you make a post I will typically respond within 24 hours and will do my best to help you with problems you encounter.
Installing from a harddrive
This process is for people whom have Linux installed on their harddrive and are installing JLime to a CF card attacked to it. If you are trying to install from a Live CD/DVD please see these instructions Installing JLime from a Live CD/DVD
Partitioning and Pre Setup
Ok the first thing we need to do is grab our compact flashdrive and partition it. For JLime you need 3 partitions on your drive the first is a FAT this can be 10MB in size or larger if you wish up to 32 MB this is the windows partition where the exe file and a txt file will be stored these files will let you start JLime once you are in Windows CE. The second partition needs to be a linux ext 2 partition this is the Linux filing system this holds the actual JLime operating system this partition should be the entire size that is left on your compact flash drive minus 32 MB's. The last partition is the 32 MB's you just saved this needs to be a linux swap partition and is used as virtual memory to increase system performance.
To partition your drive stick it in your *nix machine or connect it via a usb adapter. Now we make sure its there type

fdisk -l
this will list partitions of even devices that are not mounted YOU MUST NOW WRITE DOWN THE DEVICE NAME that is shown usually this will be a name like /dev/sda although it may be sdb or sdc or so on the list will show the partitions so if you have 3 partitions on the device it shows something like /dev/sda1 /dev/sda2 /dev/sda3 *MAKE SURE YOU REPLACE ALL OCCURANCES OF sda WITH THE NAME OF THE DEVICE ON YOUR SYSTEM FOR THE REST OF THIS TUTORIAL OR YOU MAY DAMAGE YOUR OS!!!
Now we know the device is there lets partition it type

cfdisk /dev/sda
REPLACE the sda with your drive and make sure its the correct one or you may lose data or your operating system now if there are any partitions already on the device then delete them now by using the up and down arrow to choose the partition then use the left and right arrows to choose "DELETE"
Now to make the partitions choose "New" using the left and right arrows
Now Choose "Primary"
Then for the size type in 10.0
and then choose "Beginning"
Now use the down arrow to choose FREE SPACE
Again move over to "New"
choose "Primary"
for the size now we want to type in the total amount it shows MINUS 32 MB
then choose "Beginning"
Again go down to FREE SPACE ( which should be now 32 MB left )
Choose "New"
Choose "Primary"
the size should be 32.0 MB so hit enter
and Hit Beginning again
Now the partitions are almost done
Move to the first partition sda1 ( 10 MB ) and use the left and right arrows to choose "Type" hit enter once then enter 04 then press enter. This changes the partition to a FAT 16 partition
Now we move down to the second partition sda2 and choose type then hit enter now type 83 then press Enter
It should have already been this type but we do it here just to make sure it should be type linux now
Now move to partition 3 sda3 and choose type again then press enter and type in 82 now press Enter The third partition should now be type "linux swap"

Now we need to move back up to partition 1, sda1, move to the choice "Bootable" and press Enter this partition should now be marked as bootable now navigate to "Write" type yes and press Enter
Sweet partitioning is done now use the left or right arrow to navigate to Quit
You should now be at the shell again no longer in the CFDISK utility
now we type the following lines

mkfs.vfat /dev/sda1
mkfs.ext2 /dev/sda2
mkswap /dev/sda3
Downloading and File Placement
The next thing you need to do is download JLime from the website or from the link below. you will need 4 files the bootloader, bootloader config file, kernel and userland file.Mongo is the 7xx distribution the files below are for Jornada 7xx series without the flashrom board. If you have a flashboard please download JLime from the developers site and follow their directions. For this project I used a Jornada 720 with no flashboard installed thus I will be runing JLime from the compact flashdrive.For the Jornada 720 I have found that the 2.6.25 kernel works the best so far.
Download theese files from http://www.jlime.com/downloads/releases/mongo/kernels
hp7xx-2.6.25-stable ( make sure its not the flashrom file )
hp7xx-modules-2.6.25-stable

Then these files from http://www.jlime.com/wiki/downloads/
jlinexec.exe (bootloader)
params.txt (bootloader configuration)
icewm-image-Mongo-08.07.08.tar.bz2 (userland)
Put these in your root folder for now to make things simple

OR DOWNLOAD ALL 5 FILES FROM MY SITE AT:
hp7xx-2.6.25-stable
hp7xx-modules-2.6.25-stable.tar
jlinexec.exe
params.txt see note (*) below
icewm-image-Mongo-08.07.08.tar

*WHEN YOU DOWNLOAD THE TXT FILE IT WILL OPEN IN THE BROWSER, YOU NEED TO USE THE MENU AT THE TOP AN CLICK FILE THEN CLICK SAVE AS, NOW SAVE THE FILE IN THE SAME LOCATION AS THE OTHER DOWNLOADED FILES
mount the partitions
now we need to make a couple directories to mount our cf card in navigate to the root directory of linux by typing

cd /
now you should be in your root directory type the following to get a directory listing.

ls
the results of an ls if your in the root directory should look something like this

etc                mnt                sbin
bin                home               proc               tmp
boot               lib                root               usr
dev                lost+found         root_fs_mips.ext2  var

Mine has a couple things you may not see on yours but most of these should be given
ok so now we are at the root folder lets type these commands

mkdir ce
mkdir jlime

This makes 2 new folders one called "ce" and another called "jlime" if you do another ls you should see the folders in the list
Lets also make these folders have full read and write access to avoid any problems

chmod 777 ce
chmod 777 jlime

now we mount the cfcard partitions into the folders

mount /dev/sda1 /ce/
mount /dev/sda2 /jlime/
This makes partition 1 available in the ce folder and the second partition available in the jlime folder there is nothing in them yet though thats next
The partitions should now look like this
/dev/sda1 10 MB type 04 *mounted at /ce/
/dev/sda2 Remaining space type 83 *mounted at /jlime/
/dev/sda3 32 MB type 82 *swap

file placement
lets navigate now to the folder we have the downloaded files in, wherever you may have downloaded them to.

cd /path/to/directory

lets now fix a configuration problem and patch the kernel
KERNEL PATCH
we will be using the 2.6.25 kernel to do this take the downloaded file hp7xx-2.6.25-stable and rename it to zimage

mv hp7xx-2.6.25-stable zimage

Now we need to move the zimage file to a couple different locations by issuing the following commands

cp zimage /jlime/boot/
cp zimage /ce/

We also must move the userland file to the jlime folder

cp icewm-image-Mongo-08.07.08.tar /jlime/

Next we navigate into the jlime folder, with this command:

cd /jlime

we extract the kernel to the cf cards 2nd partition which is the /jlime/ folder since it is mounted there. to do this we do this command

tar -xvf icewm-image-Mongo-08.07.08.tar

this may take a minute or two be patient!
this will extract the userland to the current directory which was /jlime/ if you followed along

Ok now its extracted, your jlime folder should be populated with a whole bunch of directories
next we need to copy two more files the bootloader and the bootloader configuration file over to the first partition which we have already
mounted to the ce folder. so go back to the folder where your downloaded files are located. ok now type

cp jlinexec.exe /ce/
cp params.txt /ce/

now to check we can do a "cd /ce" then an "ls" and the files should be listed
Now navigate to the boot folder type

cd /jlime/boot

There is now 2 zimage files in that folder one named "zimage" and another named "zImage" notice the capital I, we can get rid of the one with the capital I if we want so type this

rm zImage

NOTE: the extra file may be named differently just delete any files not called zimage again take note that the one we keep will be all lower case as long as you have followed my directions.

Ok kernel is patched now we need modules
modules
go back to the folder where the downloaded files are located
now do an ls and make sure you have the file "hp7xx-modules-2.6.25-stable.tar "
now we need to extract it but lets make a temporary folder for a minute


mkdir modules

now we extract to the folder

cd modules
tar -xvf /hp7xx-modules-2.6.25-stable.tar
cd lib
cd modules
cp -R 2.6.25-jlime /jlime/lib/modules/2.6.25-jlime/

sweet modules are all set up the system should now be bootable in the rest of this section we will talk about improvements and how this OS compares to the others
the final file arrangement
/ce/ jlinexec.exe, params.txt, zimage
/jlime/ the linux OS bin, boot, etc, home, lib, media, etc....

Installing from a Live CD/DVD
COMING SOON!!!!
This section of the tutorial explains how to install JLime if you are installing from a Live CD/DVD and do not have Linux installed to a Harddrive.

Running your new OS
The first thing we need to get past is every time we start the machine we are loaded into Windows CE, this cant be stopped, however when we do load we have to go through a whole setup process each time, this is irratating so to bypass it instead of going through each step just to load Linux we can instead hit the windows key, now choose run, and type in the text area

"\Storage Card"

make sure you use the capitals and the qoutes (")
This opens the storage card and we can choose jlinexec.exe, no more setup to go through :)
If you go through the setup then simply navigate to the storage card by clicking on "My Handheld PC" on the desktop then click on "Storage Card" and start the file jlinexec.exe the program should start give it a minute to go through the startup process login is
user:root

to start the GUI type:
startx

Problems!!!
if you are getting this error

Please append a correct root= boot option kernel panic - not syncing vfs unable to mount root fs on unknown block (0,0)

This is due to the fact that not all CF cards can be used with the Jornada this is not because the OS is stupid or because our card has problems, some cards simply won't work because we are using it as a harddrive and the OS doesn't want to let us. Infact it goes thru great troubles to make sure our harddrive is actually a harddrive. The developers of JLime have went thru mass troubles to get it to work with the CF cards that we can use. It has been reported that Kingston CF cards do not work well while Sandisk CF cards work well with TYPE I cards and some type II cards.

Know of another CF Card that works? Tell US
PC Cards
Don't forget the Jornada 720 only supports 16 bit cards. These are harder to find but I found a wireless network card on ebay that works great with my Jornada. I am successfully using a Cisco Aironet 340 Series Wireless card. But any 16 bit card should work, some may also require you install drivers to get it working. I have succesfully used these cards below.
Cisco Aironet 340 series wireless pcmcia card

Lantastic pcmcia 10/100 Dual Speed Network PC Card ( sold by CompUSA ) Wired only

Know of another PC Card that works? Tell US
Staying updated
There is a graphical package manager in Accessories in the start menu, this will let you download more programs for use with the jornada.
If you prefer shell you can use ipkg or even update to apt.
shutdown issues
because we are loading of of the CF card through Windows C.E. shutdown doesn't work, they are working on this issue but havn't to my knowloedge fixed this issue yet.
To shutdown you must remove your power cord, your battery, and your backup battery from under the CF card ( it is a watch battery thin and round ) the battery is of type CR 2032. To avoid having to remove the backup battery each time you could do as I do and just leave it out completely, however if you do this Windows CE will keep giving you an error message that the battery is low, this is fine if you are not going to be using Windows CE anyhow.

OS Improvement and additions
Well the first thing we should of course do is make a password, without a password connecting to any network makes our system vunerable. To make a password we can use shell and type


passwd

It will ask us to enter our new password twice in a row this makes sure we typed it correctly! The password is now changed, if we ever want to change it in the future it will ask for the old password before having you type a new one, it didnt do this the first time because there was no password set.
Now we need to change the repository path in the config file so we can use our package manager. The file we need to edit is the /etc/ipkg.conf file, we can use Leafpad text editor in the GUI or we can use vi or similar in shell. I suggest whenever you are modifying a file to make a backup file.
we need to change all the urls in this file since the repository has changed, every entry with http://repository.jlime.com/mongo/feed/SOMEPATH needs to be changed to http://www.jlime.com/downloads/repository/mongo/feed/SOMEPATH
So to show an example the first line is what a single entry looked like before and the second line is how it looks after we modify it. There are of course multiple entries in the file each must be changed

src/gz base http://repository.jlime.com/mongo/feed/base

src/gz base http://www.jlime.com/downloads/repository/mongo/feed/base


Make sure you leave the directory name on the end of each url such as base, charmap, jornada7xx, lib, libs locale, and the others if you dont understand this step or just want to do it an easier way then you can download ipkg.conf and replace the one on your system in your /etc folder with the downloaded copy.
Next we should make sure we have all packages available to us for installing to do this we run the command

ipkg update

If you would like to upgrade all your packages to the latest versions, which is recommended then issue the command

ipkg upgrade

NOTE: this will take a while be prepared to answer any questions it may have during this process and have plenty of time.
To see what packages are available we can look in the graphical package manager or type

ipkg list

And to install a package use the graphical package manager or type

ipkg install PACKAGENAME

Of course replace PACKAGENAME with the actual name of the package
If you would prefer using apt such as debian based systems have, install apt with this command

ipkg install apt

Vote on JLime
Let us know your opinion about JLime you can rate each of the catagories below or just see what other visitors think.



Debian

COMING SOON!!!

Conclusion

Hope this helps you get your jornada up and going. If there are any questions or problems let me know and Ill do my best to help you out.There will be some more OS reviews coming soon!

Please share your experience! Leave comments to let others know what you think of JLime.

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer