Category Archives: ARM

Blender est utilisable sur ARMv7 (32 bits) sans acceleration 3D grâce à LLVMpipe.

blender-17:2.76-1.0001-armv7h.pkg.tar.xz (paquet pour Archlinux ARM). (version mise à jour par l’équipe blender par défaut en utilisant le PKGBUILD d’archlinux x86, compile tout seul maintenant et devrais être intégré dans le build automatique archlinux ARM : blender-17:2.76.b-3-armv7h.pkg.tar.xz cette version ne marche plus en raison de la mise à jour d’autres librairies, utilisez pacman maintenant)

J’ai proposé un patch, accepté (mais retravaillé) par la formidable équipe Blender qui permet de compiler sur des architectures non-x86 (non Intel). J’ai proposé ce soir un PKGBUILD et patch pour Archlinux ARM en attendant que sorte la prochaine version de Blender.

.Sur mon Chromebook ARM (Asus Chromebook C201, utilisant un Rockchip RK3288 : CPU=4*Cortex-A17@1.8 Ghz + GPU=Mali-T764, uniquement compatible OpenGL ES (vivement Vulkan)), ça tourne plutôt bien en pure rendu logiciel, grâce à LLVMpipe pour l’interface et à la puissance de la machine pour le rendu. Il n’y a pas encore d’optimisation SIMD ARM NEON (pour ARMv7) ou pour (ARMv8) pour Cycle.

C’est une machine que j’ai pris il y a 2 semaines qui à l’avantage d’être :
* pas cher (200€ 2Go RAM, 250€ 4Go RAM en France) / 150$ 2 Go RAM, 200$ 4Go RAM aux États-Unis, cherchez l’erreur).
* Avoir une bonne autonomie : 13heure sous chromeOS (installé par défaut), jusqu’à environ 3j (oui, 72 heures de marche !!!) sous GNU/LInux, si on coupe les modules Wifi/BT lorsque l’on ne s’en sert pas.
* Être malgré tout léger (900 grammes), la faible consommation et grande efficacité du Rockchip permettant d’avoir cette autonomie avec une batterie 2 cellules/38 Wh, et évitant d’avoir à embarquer radiateur et ventilateur.
* Bien carburer malgré ces caractéristiques.

Je vais faire un autre article ou une page pour expliquer comment l’installer.

Il reste à installer le support OpenCL, pour utiliser l’accélération du GPGPU avec rendu 3d de Cycle (2e rendu en fin de vidéo).

En plus de son côté très léger et grande autonomie (introuvable sur les processeurs Intel, forcément plus lourds, avec pour les plus léger une autonomie moindre), J’aime bien le fait que ce soit une marque de République de Chine (Taïwan) et un processeur de République populaire de Chine (Chine continentale), parce qu’aucun de ce pays divisé en 2 n’est en guerre, je n’ai donc pas l’impression de participer à l’effort de guerre. De moins polluer (plus grande efficacité énergétique).

Tablette Wacom et autres périphériques USB sur système Android

J’ai fais quelques petits test sur un Galaxy Note III lite avec des périphériques USB via un cable µUSB <=> USB femelle. Comem Android utilise un noyau Linux, il est normal qu’au moins tous les périphériques reconnus par ce dernier soient reconnus. Qu’ils soient interfacés avec une application est un autre problème.

Dans les exemples que je site, j’ai eu un problème une fois lors d’une connexion, peut être problème d’alimentation USB après avoir branché la wacom, en essayant ensuite avec un câble deux prises (comme pour les disques durs externes), la Wacom ayant le même type de connecteur miniUSB (et non microUSB). le clavier ne fonctionnait pas après. J’ai du rebooter le téléphone, et tout fonctionnait directement ensuite.

Joypad type PSX2

Un joypad type PSX2 en USB à l’avantage d’avoir pleins de boutons, deux manches analogiques dont un peut être passé au choix en analogique ou digital), ce qui offre pas mal de possibilité pour l’interaction avec des tonnes d’applications.

J’ai un Saitek Rumble depuis un tas d’années, le retour de force ne marche pas pour ce modèle sous Linux, je me disais que je ingénierie-inverserais bien le pilote histoire de, ça a pas l’air compliqué, mais ça n’a pas réussi à franchir le cap de la TODO vaporeuse et du regard rapide de l’API bien foutu de Linux sur ce point. Il me sert pour quelques expérimentations de bidouilles et sur des jeux ou abandonwares émulés (bornes Mame/Mess ou vieilles consoles en abandonware comme GameCube/Wii, PSX2, etc…). Pour le simulateur de vol (Flightgear Flight Simulator), je préfère souris+clavier, sans doute à tort. Il est immédiatement. J’ai envie d’expérimenter un peu plus des applications interactives dans un futur proche, mais on en est encore dans le TODO à tendance vaporeuse. Bon, donc, j’ai testé sur Android, il est bien détecté, sous l’émulateur de terminal, terminal IDE, il permet de remonter à la ligne précédente de l’historique ^^). Testé avec l’émulateur PSP (PPSSPP, également disponible sur f-droid), ça marche impeccablement. Il faut penser à reconfigurer les boutons dans le menu commandes.

Clavier USB

bon, ben là presque rien à dire, ça marche directement. Par contre, autant sur les tablette chinoises, on peut choisir la disposition du clavier (AZERTY/QWERTY/Bépo…), autant là, rien pour le clavier physique.

Tablette graphique Wacom

Alors là, ça se gatte, elle est détecté comme une souris, mais ne semble gérée par aucune application, et encore une fois, comme pour le clavier, rien dans les préférences. J’essairais de la brancher sur une tablette/téléphone chinoise quand j’en aurais une sous la main.

Pour vérifier la détection dans Terminal IDE :

terminal++@172.0.0.1:-$ lsusb
Bus 001 Device 002: ID 1519:0443
Bus 002 Device 011: ID 056a:00ba <= Wacom
Bus 001 Device 001: ID 1d6b:0002
Bus 002 Device 001: ID 1d6b:0002
Bus 002 Device 001: ID 1d6b:0003

Au niveau du système, sur un Note III lite qui contient un stylet Wacom avec gestion de pression, on pourrait s'attendre à un éventuel fonctionnement de base (on peut toujours rêver), et bien non. Pourtant, Wacom fourni une API pour les senseurs intégrés et tablettes en USB ou bluetooth. Ça marche pas avec Markers, ni avec les applications de dessin fournis par Samsung. Il n'y a rien dans les préférences du système Samsung qui ne permette de le configurer non plus. Dommage. C'est pareil sur une tablette Galaxy Note.

Qemu pour Arch Linux ARM

Compilation personnelle de Qemu pour Arch Linux ARM, comme il n’est pas encore dans le dépôt officiel (il faudrait que je vérifie le Yaourt). Pour le moment j’ai du désactivé spice(Sur Wikipedia en français) qui permet d’avoir un contrôle visuel de la machine virtuelle. Il est toujours possible de se connecter en console.

Maintenant obsolete, préferer le dépot officiel.

C’est dans mon dépôt habituel, il faut installer les paquets suivants (avec dépendances) :

* libseccomp-2.2.3-1-armv7h.pkg.tar.xz
* iasl-20150408-1.1-armv7h.pkg.tar.xz
* leveldb-1.18-1.1-armv7h.pkg.tar.xz

Vous aurez aussi besoin de paquet SeaBIOS « any » (indépendant de l’architecture matérielle), que l’on peut trouver ici
https://www.archlinux.org/packages/extra/any/seabios/, cliquez sur Download From Mirror dans la boîte de droite.

J’ai fait une copie locale au cas où :
* seabios-1.8.2-1-any.pkg.tar.xz (seabios-1.9.3-1-any.pkg.tar.xz)

Et bien sûre du paquet Qemu lui même :
* qemu-2.3.0-3-armv7h.pkg.tar.xz

Pour installer ensuite, sous root ou en sudo :

pacman -U libseccomp-2.2.3-1-armv7h.pkg.tar.xz iasl-20150408-1.1-armv7h.pkg.tar.xz \
  leveldb-1.18-1.1-armv7h.pkg.tar.xz seabios-1.8.2-1-any.pkg.tar.xz \
  qemu-2.3.0-3-armv7h.pkg.tar.xz

Je ne les ai pas optimisé pour la 3e génération des Cortex-A (Cortex-A7/a15/a17), ils fonctionnent donc sur tous les Cortex-A, pas que sur Cubieboard2.

J’espère avoir bientôt un smartbook basé sur le Rockchip RK3288 pour d’autres expérimentations avec les ARM. Différents constructeurs fabriquent des modèles en 11″ avec environ 10 heures d’autonomie, vendus entre 150 et 250 $ en fonction des configurations (2 ou 4 Go de RAM, 16 ou 32Go de SSD). Ils sont largement utilisables comme pc de travail (web/terminal/bureautique, etc…) et différentes distributions Linux (dont Arch Linux ARM, Debian, Ubuntu, peuvent être installés dessus) :
* Asus (C201 11.6″ Chromebook et Chromebook Flip C100P (10″), ce dernier pouvant également être utilisé comme tablette)
* Haier Chromebook C11
* Hisense Chromebook C11
* CTL H4 Chromebook for education

Devant le succès de cette plateforme, MediaTek propose une solution similaire basée sur le MT8173, Quad-cœur 64-bits big.LITTLE.

Maral (Марал), méthode mongol cyrillique pour ibus et mise à jour de paquets archlinuxARM

Méthode de saisie du mongol cyrillique pour ibus

J’ai fais un paquet ibus-table-mongolian ou Maral (Марал), méthode de saisie du mongol cyrillique pour ibus pour archLinux (testé sur ARM avec ArchLinuxARM et x86_64 (avec Antergos), en fait c’est du any), par contre, j’ai quelque chose de bizarre. Il faudrait peut être un rapport d’anomalie.

Le clavier devrait être indépendant de la disposition du clavier, la disposition phonétique ne correspondant pas du tout à celle des claviers en écritures latines. Le clavier fonctionne très bien sur ARM, mais pas aussi bien sur x86, car il s’adapte au clavier local. Le même problème apparaît sur Ubuntu 14.04 pour x86_64 qui utilise une beaucoup plus ancienne version.

Par défaut dans les scripts de l’auteur Ochko, on voit la variable des version 1.3 d’ibus-table :

KEYBOARD_LAYOUT = US_Default

Sur les versions récentes, il faudrait :

LAYOUT = us

J’ai essayé tout les cas, j’ai toujours le même problème. Je suppose que la différence entre ARM et x86_64 est un problème subtile du type de l’Endianess ou quelque chose comme ça, sans vraiment trop voir pourquoi ? Vous pouvez tourours utilisez la disposition système mongol après avoir installé la langue, mais c’est moins souple qu’ibus.

Mise à jour de paquets archlinuxARM

J’ai profité de la sortie de Entangle 0.7.0, l’outil de contrôle à distance d’appareil photo réflexe numérique (et autre contrôlable) et de 0AD a18 (un logiciel ludique libre de stratégie temps réel) pour mettre à jour les paquet ArchlinuxARM.

Récupérer tout ça

Vous pouvez récupérer les paquets et les PKGBUILD dans mon dossier-dépôt dédié.