Arduino Playground is read-only starting December 31st, 2018. For more info please look at this Forum Post

Cet article est une traduction légèrement augmentée de l'article original : http://arduino.cc/en/Guide/ArduinoYun.
La traduction est actuellement en cours et vous pouvez participer efficacement à cette dernière en coordonnant vos efforts sur le fil créé à ce sujet sur le forum : http://forum.arduino.cc/index.php?topic=198248.0

Guide de démarrage de l'Arduino Yún

L'Arduino Yún est une carte Arduino comme n'importe quelle autre. Le processus de programmation est très similaire à celui de l'Arduino Leonardo? et l'Arduino Yún utilise le même processeur, l'Atmel ATmega32U4, il comporte aussi un processeur additionnel, un Atheros AR9331, sur lequel tourne la distribution Linux OpenWrt wireless stack. La programmation du 32U4 par le biais de l'interface USB est identique à celle de l'Arduino Leonardo. Une fois que vous avez configuré le Yún por se connecter à un réseau WiFi, Vous pouvez également programmer le 32U4 par le biais de la connexion WiFi. Pour connecter l'Arduino Yún à votre ordinateur, vous aurez besoin d'un câble micro USB de type B. Ce câble USB fournit l'alimentation de la carte et permet un échange de données avec cette dernière. Lors de la programmation du Yún, vous devez choisir Arduiono Yún dans le menu Outils > Type de carte de l'IDE Arduino. Le Yún n'est supporté qu'à partir de la version 1.5.4 et suivantes de l'IDE.


Table des matières

  1. Différences avec l'Arduino Leonardo
  2. OpenWRT-Yun
  3. Python
  4. Stockage externe sur le Yún
  5. Services web

Différences avec l'Arduino Leonardo

YunParts.png
Vue globale des composants du Yún.



En plus du processeur 32U4, le Yún dispose d'un processeur additionnel, un Atheros AR9331, sur lequel tourne la distribution Linux pour systèmes embarqués appelée Linio basée sur OpenWrt wireless stack. Une instalaltion complête de Python 2.7 est également incluse.

Le Yún a un nombre de caractérisqtiques physiques et de connecteurs différents du Leonardo. Il y a un connecteur pour cartes SD intégré, Une prise Ethernet RJ45 et un connecteur hôte USB de type A. Il n'y a pas d'embase d'alimentation sur le Yún ; il peut être alimenté par le biais du connecteur micro-USB de type B.

Il n'y a pas de régulateur 5V intégré. Si vous alimentez le Yún avec une tension supérieure à 5V, vous allez probablement l'endommager. Si vous n'alimentez pas le Yún par le biais du connecteur micro-USB, vous pouvez le faire par l'intermédaire des bornes Vin et 5V de la carte. Il est cependant recommandé d'alimenter le Yún par le biais de la connexion USB dans la mesure du possible.

Les interfaces SD, Ethernet et USB-A ne sont pas physiquement connectés au processeur 32U4, ils sont connectés à l'AR9331.Le 32U4 du Yún fonctionne de la même manière que celui du Leonardo, excepté que l'on ne peut pas utiliser le port Série1. Ce dernier est réservé aux communications avec le processeur AR9331.

Le Yún a aussi un module wifi intégré à sa carte, ce qui lui permet de se connecter à un routeur sans fil, ou se comporter comme un point d'accès. Les processeur 32U4, WiFi et AR9331 disposent tous de leurs propres boutons de reset.

Yun Reset illustration
Vue des différents boutons reset du Yún



Il y a plusieurs LEDs de statuts sur le Yún indiquant : l'alimentation (ON), la connexion WiFi (WLAN), la connection ethernet (WAN) et la connexion USB (USB). De plus, la pin 13 (L13) est connectée à l'une des led de statut.

Yun status leds
Detail des LEDs de statuts du Yún


OpenWRT-Yun

Le Yún fait tourner une distribution Linux appellée OpenWRT-Yun, basée sur OpenWrt. Même s'il est toujours possible de configurer le système en ligne de commande, il y a une interface web qui vous permettra de configurer un grand nombre des différentes options disponibles. L'interface, (appelée LuCi) vous donne accès à la plupart des réglages dont vous aurez besoin pour administrer l'interface WiFi.

L'accès à l'interface web est décrit plus bas.

Pour installer un logiciel additionnel sur OpenWRT-Yun, vous aurez besoin d'utiliser le package manager Linux opkg. Pour plus d'informations sur le package manager, reportez-vous à la page Yún package manager de la documentation arduino (EN).


Python

Une installation de Python 2.7 est incluse avec OpenWRT-Yun, grâce à laquelle vous pouvez écrire des applications et des scripts. Pour plus d'informations sur Python, visitez les pages de documentations Python 2.7.

Si vous débutez avec Python, il existe un multitude d'excellentes ressources en ligne. "Learn Python the Hard Way" (EN) couvrira tout ce que vous avez besoin de connaître pour vous lancer dans la création de vos propres scripts. Pour les ressources Francophones, citons l'excellent tutoriel « Apprendre à programmer avec Python » disponible sur Framasoft, une référence Francophone du monde libre.


Stockage externe sur le Yún

Vous avez abandonné l'idée d'utiliser la mémoire Flash interne du Yún à cause de son nombre limité d'écritures possible.

Vous pouvez utiliser une carte microSD ou une clé USB comme mémoire externe pour sauvegarder vos données, scripts, pages web, etc. … Afin que le 32U4 puisse accéder en lecture et écriture aux informations stockées dans ces mémoires par l'intermédiaire du Yún, il doit y avoir un répertoire nommé « arduino » à la racine du lecteur afin que le Yún crées un lien vers la carte SD par le chemin « /mnt/sd ».


Services web

OpenWRT-Yun utilise l'architecture REST qu'il soit client ou serveur. REST est l'accronyme de "Representational State Transfer". C'est une architecture logicielle qui rend accessible de nombreuses parties matérielles de l'Arduino par le biais d'URLs. Par déffaut, l'accès à l'API REST est protégé par mot de passe. Il est impossible d'accéder à ce service sans le mot de passe. Pour changer ce réglage, allez dans le panneau de configuration du Yún. En bas de la page vous verrez des bouttons permettant de changer l'accès.

Yun REST acces

Une bonne introduction aux concepts sous-jascents à REST peut être trouvée ici (EN). Pour les ressources Francophones, reportez-vous à l'article REST sur wikipédia et à cette explication plus détaillée ou celle-ci abordant notamment la notion de "point terminal".

Il y a deux points terminaux REST reconnus par le Yún :

  • /arduino
  • /data

Le répertoire "/arduino" n'a rien de préconfiguré. Tout ce qui est ajouté à l'URL après le point terminal est passé du serveur web au programme du 32U4. Vous pouvez définir vos propres API (interfaces de programmation) dans ce programme. Reportez-vous à l'exemple du tutoriel Examples>Bridge (EN) pour voir comment se font les accès aux bornes de la carte.

Le point terminal "/data" sert à accéder aux mémoires "key/value" de l'AR9331 (à confirmer ?). Les requettes disponibles sont :

  • /put/KEY/VALUE : Stocke une valeur dans la mémoire "KEY"
  • /get/KEY : récupère la valeur de la mémoire KEY en JSON
  • /get : récupère toutes les adresses mémoire en JSON
  • /delete : efface la mémoire interne

Reset des processeur (AR9331, WiFi et 32U4)

Pour redémarer l'AR9331, ce qui rebootera Linio, pressez le bouton reset "YÚN RST" qui se situe entre les bornes analogiques et les LEDs de statuts sur la face supérieure de la carte.

Pour redémarer le 32U4 (processeur de l'Arduino Leonardo intégré) et redémarrer le dernier programme uploadé dans l'Arduino, pressez le bouton situé à côté du connecteur ethernet (RJ45) deux fois.

Le bouton reset du WiFi est situé à côté du connecteur ASB-A. Quand vous pressez ce bouton, la led WLAN se mettra à clignoter.

Si vous changez de réseau et ne pouvez plus vous connecter sans fil au Yún par le biais de son interface web, vous pouvez réinitialiser la configuration reseau du Yún en appuyant sur le bouton reset du WiFi pendant plus de 5 secondes, mais moins de 30. Le processeur AR9331 redémarrera et la configuration WiFi sera réinitialisée. Le Yún créera alors son propre réseau WiFi "Arduino Yún-XXXXXXXXXXXX. Toutes les autres modifications et configurations seront conservées.

Pour remettre la distribution OpenWRT-Yun à ses paramètres d'usine, appuyez sur le bouton reset du Wifi pendant au moins 30 secondes. La carte reviendra alors à ses réglages d'origine comme si elle avait été reflashée ou simplement sortie de son emballage. Entre autres choses, cette opération effacera tous les fichiers installés et les réglages réseau.