Accéder au contenu principal

Test de l'Olimex A13 SOM 512

Ca y est, j'ai reçu mon kit A13 SOM d'Olimex + LTE après m'être inscrit sur le site d'Orange https://4gkit.orange.com.
Ce kit est né de la collaboration entre StreamZ de Bell Labs, Orange et Olimex pour l'innovation dans l'Internet des objets. Il est fourni complet, avec une carte Olimex A13 SOM, une carte fille Olimex A13 LTE, une batterie LiPo, une antenne, une carte SIM Orange pré configurée (abonnement 4G inclus sous condition Friendly Usage) et un cable mini usb.
La documentation sur le site d'Orange est pour le moment assez minimaliste, mais l’intérêt de ce type d'opération est justement de faire naître une communauté autour de cette carte et de l'alimenter.

Premières impressions

La carte dispose de 512 Mo de mémoire et d'un processeur à 1,2 Ghz, c'est autant qu'un Rpi B, mais moins qu'un Rpi 2. Elle ne dispose que d'un port mini usb et pas de sortie HDMI ou Video Out, comme le RaspBerry. Il existe d'autres modèles A13 Olimex qui incluent toutes ces caractéristiques. Le port USB supporte cependant l'OTG (On The Go) et est reconnu par Windows comme un périphérique USB Ethernet. Avec un adapateur mini-USB->USB femelle, il est possible de connecter des périphériques tels qu'un clavier, une souris ou une caméra. Il n'y a pas de sortie audio. Des connecteurs de 40 broches sont prévus pour brancher un écran LCD.
La carte est fort heureusement pré-assemblée. Heureusement, car les connecteurs latéraux sont très rapprochés. Une fois la carte fille enfichée n'essayez pas de la retirer au risque de tordre ou de casser des Pins. Le connecteur de la batterie Lipo n'est également soudé qu'en 2 points. Évitez de le manipuler trop souvent. Si vous en avez la possibilité, imprimez un boîtier de protection. Un modèle à découper avec une découpeuse laser est disponible sur le site d'Orange.

Quel usage?

Accès distant

Bien que ressemblant fortement à un Raspberry Pi, l'Olimex A13 SOM est plus petit et un peu moins puissant (CPU et RAM plus faibles).
Il est fourni de base avec une carte SD Debian et le langage Lua pré-installé. Dès l'allumage, le module se connecte sur le site d'Orange. Après vous être identifié, vous pouvez ainsi avoir accès à une sorte de shell en ligne. Aucun mot de passe n'est requis pour pouvoir passer des
commandes. C'est pratique pour modifier le mot de passe root par défaut (olimex pour ceux qui n'ont pas lu la documentation), mais pas très sécurisé. Le site affiche également l'adresse IP de la machine ainsi que l'espace disque occupé). Il n'est cependant pas possible de se connecter directement en utilisant l'adresse IP affichée car les opérateurs mobiles bloquent généralement l'accès externe. L'accès distant permet également d'installer des modules à distance et d'éteindre proprement la machine

Accès local

La machine étant vue par Windows comme un périphérique Ethernet, il est possible de se connecter en utilisant le câble USB. Bizarrement, Windows ne trouve pas de driver à installer bien que que le Driver Microsoft/Ethernet RNDIS fonctionne parfaitement.
Voir la procédure décrite ici : https://github.com/ev3dev/ev3dev/wiki/Setting-Up-Windows-USB-Ethernet-Networking
L'adresse IP par défaut est 192.168.7.2. Il est possible de se connecter en ssh (ssh 192.168.7.2 ou via Putty) ou en Vnc (Ultra VNC Viewer ou autre) pour avoir une interface graphique de taille réduite). X11Vnc est installé par défaut.
En mode graphique, vous pouvez lancer le browser Internet et vous connecter sur www.Google.com pour vérifier que vous avez bien l'accès à Internet. On peut ainsi voir que lua et luarocks sont installés. Tiens, ça me rappelle l'ESP8266. Ca me semble évident maintenant. Cette carte va être mon ESP8266 Like en LTE à la place du Wifi. En clair, je vais l'utiliser comme un micro-contrôleur en Lua en profitant de 14 GPIO accessibles, de 3 ports I2C et d'un port série.
Comme on est en terrain complètement vierge, il y a tout à faire.

Accès aux ports GPIO

Sur le forum d'Olimex, une vidéo montre un exemple d'utilisation des ports GPIO en Java. Ainsi donc, Java peut tourner sur cette machine. Il y a déjà Python, Lua, un compilateur gcc, rajoutons y donc Java. Après avoir essayé en vain un "apt-get install oracle-java8-jdk", j'ai finalement téléchargé une version pour Arm sur mon PC windows que j'ai poussée en WinSCP sur le A13 avant de faire l'installation.
Pour une raison qui m'échappe encore, la machine a une facheuse tendance à redémarrer lorsque l'on fait un "aptitude install" ou un "apt-get install". Parfois ça marche, et parfois, c'est instable.
L'installation de Java 8 peut cependant se faire via un download et installation manuels.
Il faut ensuite modifier le PATH dans le fichier /home/root/.profile pour donner l'accès à Java.
L'application client/serveur qui accompagne la vidéo est livrée en code source et on peut voir comment l'accès au ports GPIO est fait.
Utilisation des ports GPIO
"/sys/class/gpio/export"
"/sys/class/gpio/"+file.getValue()+"/direction"
"/sys/class/gpio/"+file.getValue()+"/value"
"/sys/class/gpio/unexport"
"WHITE", "gpio1_pe6"
"YELLOW", "gpio2_pe7"
"RED", "gpio3_pe8"
"BLUE", "gpio4_pe9"
"GREEN", "gpio5_pe10"

Les fichiers spéciaux situés dans /sys/class/gpio permettent d'activer les ports GPIO et de faire les lectures écritures : export  gpio15_pc19  gpio16_pc7  gpio2_pb4  gpio3_pb10  gpiochip1  unexport
Le principe est le même pour l'utilisation de l'I2C.
Les ports GPIO sont décrits sur le site : https://www.olimex.com/wiki/A13-OLinuXino

Pour commencer à utiliser un port GPIO, il faut d'abord l'exporter avec la commande.
   root@A10:~# echo 1 > /sys/class/gpio/export

Cette commande va créer le fichier spécial /sys/class/gpio/gpio1_pb3. Il faut ensuite indiquer si le port est utilisé en "in" ou "out".

   root@A10:~# echo out > /sys/class/gpio/gpio1_pb3/direction

Pour mettre le GPIO à HIGH :

   root@A10:~# echo 1 > /sys/class/gpio/gpio1_pb3/value

Pour mettre le GPIO à LOW :

   root@A10:~# echo 0 > /sys/class/gpio/gpio1_pb3/value

La liste complète des ports GPIO supportés est la suivante :
gpio1_pb3 gpio2_pb4 gpio3_pb10   gpio4_pe4   gpio5_pe5   gpio6_pe6  gpio7_pe7
gpio8_pe8 gpio9_pe9 gpio10_pe10  gpio11_pe11 gpio12_pg9  gpio13_pg10 gpio14_pg11
On retrouve les mêmes informations sur la carte fille A13-SOM-WIFI, bien que dans notre cas, ce soit une A13-SOM-LTE.             

Je continue les expérimentations et vous en dirait plus sur l'utilisation avec le langage Lua.

Commentaires

Posts les plus consultés de ce blog

Supprimer les partitions Raspberry sur une carte SD sous Windows 7 avec Diskpart

Si vous souhaitez récupérer une ancienne carte SD utilisée pour démarrer un Raspberry pour un autre usage (appareil photo, etc), il vous faudra supprimer les deux partitions créées au moment de l'écriture de l'image sur la carte SD. Vous pouvez voir les partition en sélectionnant Menu Windows/Ordinateur/bouton droit "Gérer". Voici un exemple du résultat final. Vous pouvez supprimer la partition Unix de 7 Gb (ou 4Gb en fonction de la taille de votre carte) en sélectionnant la partition puis en faisant "bouton droit Supprimer". Laissez juste une partition pour pouvoir faire les autres manipulations avec DISKPART. Démarrez l'outil DISKPART en ligne de commande. Une nouvelle fenêtre s'ouvrira. Microsoft DiskPart version 6.1.7601 Copyright (C) 1999-2008 Microsoft Corporation. Sur l'ordinateur : FRVILN0H305806 DISKPART> list disk   N° disque  Statut         Taille   Libre    Dyn  GPT   ---------  -------------  -------  -------  ---  ---   D

Comment lire son écran de téléphone Android sur PC (2)

Voici une nouvelle manière d'accéder à votre téléphone depuis votre PC. Cette méthode utilise le câble USB et Google Chrome. Elle fonctionne donc sur Windows, Mac et Linux. Les pré-requis sont les mêmes que ceux du billet précédent : Téléphone configuré en mode Développement Drivers USB installés sur le PC Google Chrome installé L'application Vysor s'installe comme une extension de Google Chrome. Cherchez dans le Webstore et lancez l'installation. Une fois installée, l'application apparaît dans les extensions. Vous pouvez la lancer de différentes manières. La manière la plus simple est d'ouvrir la fenêtre des applications : chrome://apps/ Une autre manière est de créer un raccourci en cliquant sur « Détails ». Ensuite créez un raccourci sur le bureau, le menu démarrer et/ou la barre de tâche. Vous pouvez également cliquer sur afficher dans la boutique et lancer l'application depuis la boutique. Une fois

Serveur d'impression CUPS sur Raspberry Pi

Je possède une très vieille imprimante laser HP Laserjet 6L noir et blanc de 12 ans d'age qui a survécu à plusieurs imprimantes jet d'encre couleurs tombées en désuétude pour obsolescence programmée. J'envisage tout de même sérieusement de les démanteler pour les recycler en CNC, graveur ou autre.   Je continue donc a utiliser cette bonne petite imprimante parallèle qui me rend bien des services (en 12 ans, j'ai changé le toner 3 fois pour un coût de 20 € la cartouche). J'ai donc dû m'équiper d'une adaptateur USB/Parallèle pour pouvoir la connecter sur un PC récent. Le problème principal est que le driver de cette imprimate n'est reconnu que par un seul de mes PC sous Windows 7. Les autres PC sous Windows 8 ou Windows 10 reconnaissent bien l'imprimante, mais sortent des feuilles avec le code Postscript. L'impression depuis une tablette ou un téléphone Androïd est également tout simplement impossible. Pour remédier à ce problème, j'ai don