Some Reviews regarding devices running PalmOS.

Palm Centro

Recently I needed a new phone, and because I always loathed Windows Mobile, it had to be something with a decent mobile operating system.

The iPhone is a bit expensive, can't be extended (currently) and comes bundled with a very expensive T-Com contract. No go (for me).

So I went to a local electronics retail store (*cough* Media.. Markt *cough*) and bought a Palm Centro.

Because there are a ton of reviews about this device, I will only add stuff I think has not been mentioned elsewhere:

First look

Nice package, pretty small, although not really thin. The finish (black with some kind of cheap-looking metallic-effect) smudges pretty easily, but as most phones nowadays have a piano-lacquer finish and glossy screens, this is a must apparently. I wish they would offer a silver-colored version with a matte finish.

But anyway.

Startup

Pretty fast if you ask me. Compare that to a Windows Mobile driven device (Treo 500 comes to mind).

Software

The default setup consists of a lot of useful tools beside the standard phone/organizer programs, there is a Pocket Office app, a Web-browser, Email program, Google Maps, a world-time-clock and pTunes.

More to come...

Linux compatibility

More to come...

Badbads

Well, mostly the charger for now. Maybe someone should tell those guys THAT THE GODDAMN CHARGER SHOULD NOT -NEVER- BE TWICE THE VOLUME OF THE DEVICE IT IS SUPPOSED TO RECHARGE.

Have a look at this (and imagine the charger being twice as thick as the phone).

Palm and charger.jpg

Siemens got that right with their phones (but apparently, they got some other things wrong, so...).

Data transfer on Linux

Basic setup

To use J-Pilot, one needs to install a few things:

  • Copy /60-libpisock.rules to /etc/udev/rules.d/
cp /usr/share/pilot-link/udev/60-libpisock.rules /etc/udev/rules.d/
  • Add a group "dialout" which is needed by this rules set.
  • Restart udev (or your machine)
  • Configure J-Pilot to use usb: as connector.

Now you should be able to sync with your USB-Palm.

Data transfer from the m100 and my old Siemens S45 phone

To get a clean setup, I decided to export all neccessary data from the old Palm m100 and from my mobile phone (a ancient Siemens S45) and import them into my new Palm phone.

J-Pilot can export data in csv format, very convenient for the PIM and Phonebook (both neede some cleanup anyway).

To get the data from my phone, I had to install scmxx:

sudo yum install scmxx

for Fedora 8 Linux.

  • Get an overview of the memory stores of your phone
scmxx -d /dev/ttyS0 --mem-info
  • Export phonebooks (fixed and custom) to csv:
scmxx -d /dev/ttyS0 --get --pbook --mem=SM --out=sim_phonebook
scmxx -d /dev/ttyS0 --get --pbook --mem=ME --out=mobile_phonebook
  • Export addressbook as vcard-files:
scmxx -d /dev/ttyS0 --get --binary --mem=vcf --out=vcf

Now the problem is to convert a few hundred vcard entries to csv to merge them with the existing dataset before reimporting them to the new gadget.

One could have beamed the vcards directly to the Palm, but this would mess things up even more...

Very conveniently, there is a Python library, which could do that job: http://vobject.skyhouseconsulting.com/

Download and install as described on their web page (you need python-devel for that).

And here is the (very hacky) script, which did the final data extraction:

<python>

  1. !/usr/bin/env python
  1. Import libs

import vobject from vobject import * import os import csv

  1. This must be executed in the dir containing the exported vcard files

vcflist = os.listdir(".") vcard_keys = {} vcards = [] for file in vcflist:

   if file.split(".")[-1] == "vcf":
       print "Processing", file
       f = open(file, "rb")
       try:
           v = vobject.readOne(f)
           for i in v.contents:
               vcard_keys[i] = ""
           vcards.append(v)
       except vobject.base.ParseError:
           print file, "contains errors"    
       f.close()
   else:
       print file, "is not an vcard-file"

print "Finished" print "Processed", len(vcflist), "files" print "Found the following unique keys" for key in vcard_keys.keys():

       print key,

print "\nWriting to csv-flatfile"

out = csv.writer(open("vcard_out.csv","wb")) header = vcard_keys.keys() header.sort() print header out.writerow(header) for card in vcards:

   tmp = {}
   line = []
   for entry in card.getChildren():
       tmp[entry.name.lower()] = entry.value.encode("latin-1", "replace").strip()
   
   for key in header:
       try:
           line.append(tmp[key.encode("latin-1", "replace").strip("'").strip()])
       except KeyError:
           line.append("")
   print line
   out.writerow(line)

</python>

The final file was merged by hand with the existing phonebook export in Open Office Calc. Unfortunately, J-Pilot insists on a very arcane csv-format, in which every field must be escaped by double quotes (also the empty ones), whereas the first line with the header names must not contain quotes.

Here's another hacky Python snippet, which did that job (reading the OO-Export and rewriting it for J-Pilot):

<python>

  1. !/usr/bin/env python
  2. Fix broken csv output of OpenOffice for import into Palm (needs all empty fields quoted as well).
  3. Marc Saric 2008-03-21

import csv csv.register_dialect("jpilot", delimiter=",", quoting=csv.QUOTE_ALL)

f = csv.reader(open("Phonebook.csv", "rb")) w = csv.writer(open("Phonebook_ok.csv", "wb"), "jpilot") for line in f:

   w.writerow(line)

print "Please open and edit the outputfile 'Phonebook_ok.csv' and remove the quotes from the first line." </python>

RIP Siemens S45 and Palm m100.

Palm m 100

My old organizer. Now on a pension.

Useful programs for the m100

OK, this isn't really exiting -everyone knows http://www.palmgear.com or some other site like http://www.freewarepalm.com/ where you can get virtually every program written for the palm-pilot, including a review, screenshots and all info you need, but..

Due to the fact that my m100 has only 2 MB of RAM, which is really not much compared to the 8 MB of other models (and maybe even more in upcoming multi-media-enabled Palms) most modern programs are not really usable either due to the ammount of memory they use or their speed.

Therefore I was searching for some programs which have a small footprint while providing good performance and -yes- they should be free.

This page has not been updated for ages, and probably won't be in the future (although I am still using my m100 on a daily basis).

Cryptopad

Cryptopad.png

Need a safe place for all your passwords and bank-account transaction numbers??? Cryptopad is a freeware-replacement for the Memo-application which uses strong encryption to protect your data. Although it is not meant as a complete lock for the Palm it is very usable for encrypting passwords of all kind.

Feiertage

Feiertage2.5a.gif

Integrates all (german) holidays into the calendar, the holiday-list is editable. Quite nice.

GermanChars

Germanchars.png

A simpler way to write german "Umlaute". Instead of using the special-function, just draw a horizontal bar over the letter and it will be converted to the correct sign. Unfortunately this seems to be quite picky from time to time, i.e. the program does not always recognize a stroke as it should (or maybe my graffiti-abilities are too poor). You need Hackmaster installed to use it.

HappyDays

Happydays.png

A free birthday-calendar which integrates into the default calendar, THE killer-app on the Palm m100 (at least for me).

IndexView

Indexview.png

Lets you view all entries from the calendar in one long index-list. Very useful if you remember a date or event but can't really find it in your calendar.

Invaders

Invaders.png

A Space Invaders clone for the Palm. Nothing more to say.

IQ3D

Iq3d.png

Neither free (the demo is) nor very useful, but it remembers me of a certain game one could download and play in the 386-days (before Doom (sic!)). In fact this is pretty ugly and the scenery is really boring by all standards, but its fun to roam around a 3D-environment on a Palm-Pilot.

LR

Lrstd.png

A Loderunner-clone (anyone remember this from the C64?).

MiddleCapsHack

Middlecaps.png

Tired of doing the two-stroke-business all the time you want to write capital letters? You can choose which part of your graffiti-area becomes permanently assigned to capital-letters, i.e. every letter, which is started in this area is being capitalized. You need Hackmaster installed to use it.

MsgAgent

Msgagent.png

Due to the fact that the m100 comes without the default Mailtool, you need something else:
MsgAgent is a nice and quite small Email/News-Reader which can be synced via a Mobile or a fixed Internet-connection. This works really great with my GPRS-cell-phone.

ParensLite

Parens lite.png

The scientific calculator Palm Inc. should have included in the default setup (Handspring has).

Plucker

Plucker.png

A Offline-Browser published under the GNU Public License, see http://www.plckr.org .
Essentially this is an ebook-reader with some HTML-conversion-capability on the server-side (i.e. a spider/parser which can fetch and convert any HTML-page. I'm still searching for a small and free online Webbrowser which would be usable with my GPRS-phone (WebTogo and Eudora Internet Suite aren't an ption with only 2 MB RAM), but for the time beeing this is the best solution. Maybe someone could hack a direct connection to some server on the web like it is done with Avantgo or WebToGo (I can't)...

Reptoids

Reptoids.png

An Asteriods-clone which works quite nice and is fun to play. Like Loderunner and Space Invaders it isn't top of the notch in Palm-game programming, but it does not need all your memory and runs fine on b/w-screens also.

TrekSoundsHack

Treksoundshack.png

A absolute must for all fans of Star Trek: Converts your Palm into a gadget from the future which will emit small convenient beeps while being used. You need Hackmaster installed to use it. The commercial version has some more sounds, but the free version is also OK. Not to mention that this program is totally useless beside making noise and providing a fake startup and shutdown-screen, but...

Linux and Palm

Fortunately, Palm devices are quite well supported by Linux-programs. You can have syncing and backup-software, as well as integration with desktop-PIM-programs for Linux. Here comes my short and incomplete list of stuff I use to organize my calendar and address-data on my Linux-box (mostly at work) .

Jpilot

Jpilot.png

One very cool Linux-program which tries to recreate the Palm-Desktop for UNIX. Small, stable, useful. Anything more to say?