Mise à jour d’un iPaq h3600 vers familiar OPIE 1.0

Mise a jour d’un ipaq h3600 vers familiar/OPIE1.0

I. Présentation :

Après 2 ans d’utilisation de mon ipaq sous linux en environnement Qtopia, j’ai décidé de mettre à jour mon PDA en installant la version, 1.0 d’opie, du fait de l’intégration de la synchronisation entre PDA et Pc en environnement KDE.
Histoire que cette expérience profite à d’autres, voici comment j’ai procédé.

Note : toutes les manipulations ci-dessous sont à vos risques et périls, je ne saurais être tenu pour responsable de quelque problèmes qu’il soit.

II. Environnement avant l’installation :

Le PDA est un compaq ipaq h3600 ayant dejà un bootloader Linux installé, je ne reviendrai donc pas sur son installation depuis un environnement WINCE, par contre,les informations sont accesibles plus bas dans l’article.
Mon Pc fonctionne sur Suse 8.1, pour réaliser l’installation certains packages doivent être installés :

  • minicom : terminal pour port série
  • ppp : protocole de communication point à point

III. Configuration de minicom :

Une fois installé, minicom doit être configuré, pour celà, passez root et lancez la commande :
root@host> minicom -s

Dans le menu “config du port série” vous devez mettre ceci :

  • A – Port série : /dev/ttyS0 (où /dev/ttyS0 correspond au com1, remplacez par ttyS1 pour le com2)
  • B – Emplacement du fichier de verrouillage : /var/lock
  • E – Débit/Parité/Bits : 115200 8N1
  • F – Contrôle de flux matériel : Non
  • G – Contrôle de flux logiciel : Non

Dans le menu “modem et appel” supprimez toutes les chaines de A à L.
Choisissez enfin “enregistrer config sous dfl.”
Minicom est pret être utilisé, lancez-le simplement par la commande :
user@host> minicom

IV. Téléchargement des fichiers nécessaires :

Nous devons télécharger les fichiers nécessaires à l’installation de familiar (v0.7) et d’opie. Pour celà, allez à l’adresse suivante : handhelds.org
Sélectionnez la version stable (à vous de voir) votre version d’ipaq et bootstrap, a bare-bones screenless system for developers sans quoi vous aurez la version 0.9 d’opie.

Le fichier récupéré est une archive n’intégrant pas de répertoire, par conséquant, le mieux pour la décompresser est :
user@host> mkdir familiar_07
user@host> cd familiar_07
user@host> tar -xvf ../bootstrap-v0.7-h3600.tar

V. Mise a jour du bootloader :

Dans le cas où vous n’auriez pas de bootloader installé (vous fonctionnez sous winCE actuellement), je vous renvoie vers le manuel à l’adresse suivante : handhelds.org

Pour les autres, voici la démarche à suivre :
Cette partie est la plus critique de l’installation, je ne la recommande qu’à des mains expertes et peu soucieuses de l’avenir incertain de leur PDA, la doc complémentaire à ce texte, que je vous conseille de consulter en parallèle est ici.
Note : à partir de là, vous allez perdre toutes les données actuellement dans le PDA…

  1. Rebootez le PDA : appuyez sur la fleche du bas et sur le bouton calendrier, en même temps. Pressez le bouton reset présent à droite du connecteur série/usb
  2. Branchez l’ipaq sur le courant et sur son câble série. Choisissez la console série dans le menu à l’écran.
  3. Lancez minicom et tapez espace, vous deviez voir apparaitre boot>
  4. Taper sur la console minicom la commande load bootldr
  5. Puis CRTL+A Z et l’option S et le type de transfert xmodem selectionner le fichier à transmettre qui doit etre bootldr-sa-2.20.4.bin.gz
  6. Si boot> réapparait tout va bien, tapez reset Sinon, c’est qu’il y a eu un problème (là vous êtes mal …) jetez toujours un oeil sur les forums et autre.
  7. Votre iPaq doit redemarrer avec un nouveau bootloader, choisissez la console serie pour la suite.

VI. Installation du système de base :

Nous allons maintenant installer le système Linux de base.
La doc de référence est ici.

  1. Pour ma part, le protocole ymodem n’a pas fonctionné, je vous propose donc de passer en mode xmodem en tapant la commande suivante sur le terminal minicom : boot>set ymodem 0
  2. Tapez ensuite la commande boot>load root
  3. Puis CRTL+A Z et l’option S et le type de transfert xmodem selectionner le fichier à transmettre qui doit etre bootstrap-v0.7-h3600.jffs2 selon le modèle de pda. Cette étape est un peu longue via port série, trouvez une occupation parallèle …
  4. Si tout est ok, vous devriez avoir à la fin verifying … formatting … done. Alors vous pouvez taper la commande boot>boot

Votre système Linux est en train de démarrer …

VII. Connexion via PPP :

Pour la suite, il est necessaire que votre ipaq puisse se connecter à Internet
Nous allons supposer que le PC utilise l’adresse 192.168.1.1, que votre routeur est à l’adresse 192.168.1.254 et que vous souhaitez configurer votre iPaq sur l’adresse 192.168.1.2.
Nous devons creer une connexion PPP sur le système Linux, pour celà, en tant que root, nous créons un fichier: /etc/ppp/peers/ipaq dont le contenu est le suivant.

        # Port série pour la connexion"/dev/ttyS0"
        # pour "COM1" ou "/dev/ttyS1" pour "COM2"
        /dev/ttyS0

        115200
        connect "/usr/sbin/chat -t3 ogin--ogin: ppp"
        asyncmap 0
        noauth
        nocrtscts
        local
        lock
        nodetach
        user ppp
        proxyarp
        192.168.1.1:192.168.1.2

Pensez à mettre a jour les adresses des machines si nécessaire.

La connexion ppp peut alors être lancée par l’utilisateur root au travers de la commande root@host>pppd call ipaq.

Testez la connexion à l’aide d’ifconfig et ping 192.168.1.2.

Si tout va bien vous pouvez lancer une connexion via ssh. Pour simplifier les choses, je vous conseille d’ajouter une entrée dans le fichier /etc/hosts : 192.168.1.2 ipaq par example.

Pour autoriser votre pc à router les paquets venant de l’ipaq, tapez la commande ci dessous :

root@host>echo 1>/proc/sys/net/ipv4/ip_forward

Pour que ceci soit tout le temps actif : modifiez le fichier /etc/sysconfig/sysctl en mettant IP_FORWARD=”yes”.

Pour que la connexion soit lancée automatiquement lorsque l’iPaq est branché sur son port, ajoutez la ligne suivante au fichier /etc/inittab :

ppp:2345:respawn:/usr/sbin/pppd call ipaq.

Puis, pour relancer l’init sur le runlevel actuel root@host>init q.
Ce systeme fonctionne à peut pret, si ce n’est quelque blocages, dans ce cas, tuez vous-même le processus pppd root@host>killall -KILL pppd et/ou réinitialisé le runlevel root@host>init q

La connexion avec l’iPaq se fait via ssh en tapant par exemple : user@host>ssh root@ipaq
Le password root par défaut est rootme

Il faut maintenant configurer l’adresse du serveur DNS pour l’iPaq, créez un fichier /etc/resolv.conf à l’aide de vi et recopiez ce qu’il y a dans le resolv.conf de votre PC.

Testez si tout fonctionne bien, normalement, vous devriez pouvoir faire un ping www.voila.fr par exemple.

VIII. Installation de d’Opie :

Connectez vous à la console ssh comme vu précédemment.

Editez le fichier /etc/ipkg.conf à l’aide de vi et ajoutez la ligne suivante sous celle débutant par src base … :

src opie http://opie.handhelds.org/feed/ipaq/1.0

Procédez à la mise à jour de la liste des paquets :

root@ipaq>ipkg update
Procédez à l’installation d’opie version 1.0 :

root@ipaq>ipkg install task-opie

Pour cette étape, assez longue, je vous conseille de maintenir votre iPaq eveillé en touchant de temps en temps l’écran, sinon, il se coupe tout seul et l’installation est rompue…
Pour ma part j’ai eu d’autre soucis, car certains fichiers ne semble pas présents sur l’archive d’Opie, du coup, l’installation s’arrête avec une erreur. J’ai relancé la commande ipkg install task-opie à chaque fois jusqu’à la fin… Au final, ca fonctionne.
Voila, normalement, votre iPaq est a jour …
Pour la suite,je vous conseille l’installation de package manuelle, mais attention, la place mémoire est limitée. Pour ces installs, je vous conseille d’utiliser la version Usb si vous avez le câble, ce sera plus rapide.

IX. Configuration de la connexion via USB:

Le système est un peu différent de PPP, car il ne s’agit pas de créer une connexion point à point mais un réseau utilisant USB comme moyen de communication.Du coup, nous devons configurer de chaque côté une carte réseau USB.
Conciderons que notre USB-PC prendra l’adresse 192.168.2.1 sur le nouveau réseau et l’iPaq l’adresse 192.168.2.2.

Coté PC :

Nous allons ajouter un fichier /etc/rc.d/usbipaq dont voici le contenu :

   #!/bin/sh
   PC_ADDR=192.168.2.1
   NM_ADDR=255.255.255.0
   DRIVER=usbnet
   INTERFACE=usb0

   if [ $# -lt 1 ]; then
     echo "Usage: $0 {start|stop|status}"
     break
   fi
   case "$1" in
     start)
       modprobe $DRIVER
       sleep 3
       ifconfig $INTERFACE $PC_ADDR netmask $NM_ADDR up
       echo 1 > /proc/sys/net/ipv4/ip_forward
       ;;
     stop)
       ifconfig $INTERFACE down
       modprobe -r $DRIVER
       ;;
     status)
       ifconfig $INTERFACE
       ;;
     *)
       echo "Usage: $0 {start|stop|status}"
       ;;
  esac

Notre Pc sera à même de router les informations vers Internet. Toutefois, si vous utilisez un routeur, il faudra que celui-ci sache comment joindre le réseau 192.168.2.0. Pour celà, il faut ajouter une route statique vers ce réseau, utilisant comme passerelle le PC (192.168.1.1 dans l’exemple) sur le routeur.

Pensez à rendre ce script exécutable (chmod u+x usbipaq).

Coté iPaq :

Allez dans l’onglet Setting/Network, choisissez usbf et clickez sur configure
Entrez les infos pour l’ipaq :

  • IP Adress : 192.168.2.2
  • Subnet Mask : 255.255.255.0
  • Gateway : 192.168.2.1
  • First DNS : (l’adresse de votre serveur DNS)

Cochez Automaticaly bring up.

Démarrage de la connexion :

Coté iPaq, selectionnez usbf et clickez sur Start/Stop, puis Start

Coté Pc, lancez le script par la commande /etc/rc.d/usbipaq start.
Vérifiez que tout soit ok avec ifconfig et à l’aide de ping.

Vous pouvez maintenant vous connecter à l’iPaq au travers de cette nouvelle liaison, je vous conseille d’ajouter un second alias dans le fichier hosts puisque l’ip est différente. Appelez le ipac_usb par exemple.

Alors, la connexion à l’iPaq se fait par la commande user@host>ssh root@ipac_usb.
Si tout va bien vous aurez une liaison haut débit sur votre ipaq, plus confortable pour les mises à jour et installation de packages.

X. Synchronisation avec KDE :

Je tente la méthode utilisant KitchenSync, le framework de synchro de KDE 3.1, bien sûre la Suse 8.1 a un peu de retard et le KDE installé est un 3.0. Du coup, il faut procéder à une mise a jour. Coup de chance, les packages tout pret sont disponibles dans un répertoire tout spécialement prévu pour. Je vous conseille ce mirroir dont l’accès est correct. A vous de télécharger le nécessaire.

Vous devez avoir installé les packages kpim3-3.1 et kpim3-organizer et kdebase3-devel-3.1 pour compiler les applications.

Il faut ensuite récupérer le tarball suivant

Décompressez l’archive puis lancez sa compilation :
user@host>./configure –prefix=`kde-config –prefix` –enable-debug
user@host>make -j 3
root@host>make install

Il faut maintenant lancer l’application kitchenSync :

user@host>kitchensync

  1. Dans le menu Settings puis Configure Connections ajoutez une entrée de type Qtopia
  2. Entrez le nom d’utilisateur (root) et le password (rootme). Puis l’adresse IP du PDA qui dans notre exemple précédant devrait être 192.168.1.2 pour la liaison via PPP, la distribution doit être Opie/Qtopia
  3. Note : si vous mettez a jour Opie vers une version 1.0.2, il faut veiller a ce que la synchro soit autorisée (voir menu securité sur l’ipaq) et le mot de passe de connexion est alors Qtopia
  4. Clickez Next et saisissez un nom, par exemple ipaq
  5. Cochez la colone activated présentée dans la liste des connecteurs.
  6. Dans le menu Settings puis Configure Profile ajoutez une entrée.
  7. Choissisez un nom Mon profil cochez ensuite les modules que vous souhaitez synchroniser.
  8. Il faut encore aller dans Settings puis Configure Current Profile pour indiquer quel est le fichier à synchroniser coté Korganizer. Dans le menu Organizer Il y a une place pour le chemin du type : /home/user/.kde/share/apps/korganizer/MyOrg.ics
  9. Vous pouvez vérifier que le profile matériel et de synchro est bien sélectionnés et cliquer sur l’icone de synchronisation ou Menu File – Synchronize
  10. L’ipaq doit afficher une fenêtre demandant l’autorisation pour la synchro, voilà, c’est fait.Ne vous attendez pas a ce que le système soit bien bavard, mais pour ma part, ca fonctionne bien ;o)

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.