#liste_articles {display:block}

Installer une Ubuntu 10.10 (et PyMT) sur une tablette Joojoo

jeudi 25 novembre 2010

 

Installer une Ubuntu 10.10 (et PyMT) sur une tablette Joojoo

Compilation de quelques infos trouvés ici et là pour installer une Maverick sur la tablette Joojoo.

Booter...

Le plus simple est un CD externe, sinon une clef USB créée avec usb-creator-gtk ou autre.

Commencer par poser l’écran à l’envers...

Pour démarrer la Joojoo, cliquer deux fois sur power à moins d’1/2 seconde d’intervalle, et dès que le backlight s’allume appuyer sur F11.

L’infâme bouton Power

Le sélecteur de média de boot doit s’afficher, on peut alors choisir de booter sur le CD ou la clef USB. On peut aussi appuyer sur Del pour aller dans le BIOS.

Il faut être patient et insister, le timing doit être parfait... Si par (malheur|hasard) on se retrouve sur l’OS de la Joojoo, il faut tenir appuyé sur power jusqu’à ce que l’écran affiche ’Powering off’, sinon on ne fera que mettre la Joojoo en veille, et là, pas de BIOS possible au redémarrage.

Faitez le poirier pour l’install ou retournez l’écran

Installer la distribution.

Redémarrer la Joojoo.

Au reboot, il n’y aura pas d’affichage : l’éteindre en tenant appuyé sur power.

Redémarrer en cliquant deux fois sur power à moins d’1/2 seconde d’intervalle, et dès que le backlight s’allume appuyer sur F11 et démarrer sur le disque SATA de la Joojoo.

Installer le driver nvidia.

Ensuite :

sudo apt-get update
sudo apt-get upgrade

Installer éventuellement openssh-server pour continuer l’install à distance :

sudo apt-get install openssh-server

Installer le driver pour l’écran tactile :

sudo add-apt-repository ppa:utouch-team/utouch
sudo apt-get update
sudo apt-get install hid-egalax-dkms

Pour le remettre l’écran à l’endroit, éditer /etc/X11/xorg.conf :

sudo vim /etc/X11/xorg.conf

et ajouter dans la section Device :

Option   "RandRRotation"   "True"

Ensuite dans Système/Préférences/Applications au démarrage, ajouter une entrée exécutant la commande :

xrandr -o 2

Avant de rebooter, si l’on souhaite utiliser PyMT, on ajoute une règle dans udev, ça économisera un reboot supplémentaire :

cat > /etc/udev/rules.d/80-joojoo.rules<<EOF
SUBSYSTEM=="input", ATTRS{name}=="eGalax Inc. USB TouchController", MODE="0644", SYMLINK+="input/event-joojoo"
EOF

Rebooter un petit coup, remettre l’écran dans le bon sens, croiser les doigts, et ça devrait aller.

PyMT

Installer PyMT :

sudo apt-get install python-pymt python-enchant

Mettre en place la règle udev pour PyMT si cela n’a pas déjà été fait :

sudo -i
cat > /etc/udev/rules.d/80-joojoo.rules<<EOF
SUBSYSTEM=="input", ATTRS{name}=="eGalax Inc. USB TouchController", MODE="0644", SYMLINK+="input/event-joojoo"
EOF
exit

Configuration de PyMT

python -m pymt.tools.demo

Une fois l’appli lancée, sortir avec Escape.

Editer /.pymt/config et modifier la section [input] :

[input]  
joojoo = mtdev,/dev/input/event-joojoo  
# mouse = mouse  
# default = tuio,0.0.0.0:3333

Remplacer aussi show_cursor = 1 par 0 dans la section [graphics] pour ne pas voir le curseur souris.

Tester

Deux applications pour tester :

python -m pymt.tools.demo -a
python /usr/share/pymt-examples/desktop/desktop-multi.py -a

Problèmes

Problèmes...

  • Parfois ne boote pas (passage par F11 obligatoire)
  • Le multitouch s’est mis à dysfonctionner, puis ne plus marcher du tout sur une de nos Joojoo (la joojoo-1). Problème hardware ?
  • L’appui sur Power ne provoque parfois pas la mise en route : il faut tenir appuyé environ 10 secondes pour que cela fonctionne (et pour attraper le BIOS dans ce cas, bon courage...)
  • Le chipset WiFi (rtl8192se) semble passer en mode veille après un temps (<1s) d’inactivité. iwconfig wlan0 power off n’a pas l’air de résoudre le problème.
    C’est surtout un problème pour recevoir (lag), mais si le trafic est initié depuis la Joojoo pas de souci.
    Pour tenir la carte en éveil, un script comme ci-dessous fait l’affaire :
sudo -i
cat > /usr/local/bin/pinger.sh<<EOF
#!/bin/bash

get_gw() {
	# get gw with some code
	# GW=<span class="base64" title="PGNvZGUgY2xhc3M9InNwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lIiBkaXI9Imx0ciI+L3NiaW4vaXAgcm91dGUgfCBncmVwIGRlZmF1bHQgfCBjdXQgLWYzIC1kJyAnPC9jb2RlPg=="></span>
	# or set a static host
	GW="192.168.100.240"
}


while true; do
	get_gw
	# sends 60 echo requests, and then recompute GW
	# in case GW is dynamically generated and network connections
	# changed	
	ping -c60 -i1 -q $GW &> /dev/null
done
EOF
chmod +x /usr/local/bin/pinger.sh
exit

Ensuite dans Système/Préférences/Applications au démarrage, ajouter une entrée exécutant la commande :

/usr/local/bin/pinger.sh

Si quelqu’un a une idée pour résoudre ce problème autrement que par un hack moisi, merci de transmettre !

Notes

La Joojoo (le driver ?) est bi-touch.

Crédits & liens

Cette procédure est en grande partie une compilation de l’article de Mathieu Virbel
et du thread sur TXZone.

Update

La joojoo-1 a pu être récupée en insistant pour retrouver le BIOS. Un fois dans le BIOS, F10 pour sauver (sans rien changer), et le l’écran tactile a refonctionné...

Documents :

par Michel Blanc