Le WikiReader – 2ème partie : le firmware

Note : Cette deuxième partie est un peu plus technique.

Le firmware de base du WikiReader ainsi que le Wikipédia intégré est en anglais comme je l’ai dit précédemment.
J’ai donc regardé le code source pour pouvoir compiler ma propre version française, du moins le firmware car un membre d’OpenMoko FR compilait déjà Wikipédia et la procédure est beaucoup plus longue.

Tout d’abord il faut préparer son système d’exploitation (de préférence GNU/Linux pour faciliter les choses.)
J’utilise personnellement Ubuntu 9.10 dans une machine virtuelle.

  1. Récupérez les sources (environ 25 Mo) en utilisant Git :

    git clone git://github.com/wikireader/wikireader.git

  2. Il faut installer les paquets nécessaires à la compilation :

    sudo apt-get install python-gd gawk gforth flex bison m4 netpbm qt4-qmake libqt4-dev wget python-serial sqlite3 php5-cli python-dev guile-1.8

  3. Il faut ensuite préciser la plateforme sur laquelle on compile :

    cp wikireader/samo-lib/include/config-default.h wikireader/samo-lib/include/config.h
    gedit wikireader/samo-lib/include/config.h

    (il faut dé-commenter  BOARD_SAMO_V1 qui correspond au modèle WR01, celui du 1er WikiReader)

  4. On peut ensuite compiler !

    make all

  5. Une fois tout compilé, il faut créer un dossier qui recevra les fichiers du firmware du WikiReader.

    mkdir carte_sd

  6. Puis on va recompiler uniquement les fichiers qui seront sur la carte microSD

    make DESTDIR=carte_sd install

  7. Et voilà ! Vous devriez avoir une cinquantaine de fichiers dont kernel.elf

Traduction française

Pour la traduction je me suis penché de plus près au code.
Dans les sources nous avons un dossier « wiki-app », c’est là ou se trouve le code principal de l’interface.

Parmi ces fichiers, certains contiennent des chaines de caractère à traduire :

  • search.h pour la partie recherche
  • history.h et history.c pour la partie historique
  • restricted.c pour la partie mot de passe

Pour le clavier virtuel AZERTY, j’ai cru qu’il fallait seulement éditer l’image « keyboard_abc_mono2.pbm » seulement elle est déjà générée par défaut dans le fichier « keyboard_all_image.h ».
Il faut donc compiler le firmware avec son image modifiée puis faire un copier-coller du contenu de « keyboard_image.h » dans « keyboard_all_image.h ». Il faut aussi penser à modifier les correspondances des touches dans le fichier « keyboard.c »

Edit : Les images en PNG sont utilisables directement, plus de problème !

Pour la configuration AZERTY, je part d’un clavier classique et j’interchange le « M » par le « Backspace » (je n’ai pas modifié les touches numériques et les caractères spéciaux)

Concernant la traduction il y a plusieurs limites :

  • La taille de l’écran est limité et on ne peut pas changer la taille de police, il faut donc réduire au plus le texte.
    Cependant, dans certains cas comme dans restricted.c ont peut ajouter des lignes.
  • Il m’est impossible pour le moment d’afficher les accents, ils provoquent un bug qui fait répéter deux fois le caractère précédent. Il faut que je re-contacte Open Moko pour savoir comment faire.

La version française du WikiReader devrait suivre rapidement une fois ce dernier problème réglé.

2 réflexions au sujet de « Le WikiReader – 2ème partie : le firmware »

  1. AAAh, merci GeekShadow pour le bidouillage high-tech. Je ne suis pas loin d’avoir envie d’un wiki reader, dès que le contenu wikipédien sera en français toutefois ;-) et probablement qu’une version à venir va rendre l’objet plus intéressant encore. Voilà un moment que je me dis qu’un jour il y aura des handhelds à usage pédagogique dans les classes (voir cet article du framablog http://www.framablog.org/index.php/post/2009/10/14/wikireader-wikipedia-education )

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *