Publié le 8 septembre 2015 - par

1SHEELD Utilisez votre smartphone avec Arduino !

1SHEELD-250pxJ’ai découvert cette carte 1SHEELD sur le site de TXROBOTIC quand je faisais le tour des nouveaux produits du site, en particulier les drones
Reçue très rapidement, la carte 1SHEELD a vite rejoint un Arduino UNO qui passait par là afin de tester ses possibilités.
Le projet 1SHEELD a été lancé fin 2013 sur KickStarter. Il a réuni 1480 contributeurs et réuni la somme de 85 210$ alors que la campagne de financement avait été fixée à 10 000$ !!1SHEELD_appli_android_08

Cet article est destiné à des utilisateurs avertis d’Arduino.

LE PROJET 1SHEELD

L’EQUIPE – THE TEAM

1sheeld_teamC’est une équipe Égyptienne (du Caire) qui est à l’origine de ce projet. Le Directeur Général est Amr Saleh.

DES CAPTEURS PAS SI VIRTUELS QUE CA

1Sheeld est un shield pour Arduino extrêmement facile à configurer. Il est relié à une application mobile qui permet l’utilisation de toutes les capacités des smartphones Android (écran LCD, Gyroscope, interrupteurs, LED, accéléromètre, magnétomètre, GSM, Wi-Fi, GPS … etc.) dans vos sketchs Arduino.

Fondamentalement, cette carte se compose en deux parties. La première partie est un shield physiquement connecté à la carte Arduino qui agit comme un intermédiaire sans fil, échangeant les données entre l’Arduino et un smartphone Android via Bluetooth. La deuxième partie est une plate-forme logicielle et l’application sur les smartphones Android qui gère la communication entre le bouclier et le smartphone et vous permet de choisir parmi tous les écrans disponibles.

Vous pouvez utiliser 1Sheeld comme entrée ou comme sortie pour l’Arduino et utiliser tous les capteurs et périphériques disponibles sur votre smartphone Android, au lieu d’acheter les shields réels. Vous pouvez l’utiliser pour contrôler une voiture RC en utilisant le gyroscope du téléphone, ou même tweeter quand quelqu’un entre dans la pièce !

LA CARTE 1SHEELD

L’EMBALLAGE

1SHEELD-box_01La carte est livrée dans un carton rigide (80x65x30mm) très rassurant. Pas de danger d’écrasement lors du transport, d’autant qu’une autre boîte garnie de coussins d’air (pas les toutes petites bulles, les gros coussins, gros comme un pain au chocolat !) protège celle-ci.

1SHEELD-box_03Sous la boîte figure le lien pour le téléchargement de l’appli Android que vous pouvez même flasher pour gagner du temps.

1SHEELD-box_02La carte est piquée dans une plaque de mousse conductrice (épaisse de 12mm) destinée à protéger les composants des décharges d’électricité statique. Si vous « tripatouillez » la carte dans tous les sens avec vos mains pleines de doigts, je vous conseille de laisser le shield sur cette protection. L’électricité statique est une vraie plaie pour les composants modernes et cela n’est pas suffisamment dit… Oh le composant ne « claque » pas immédiatement, mais des défectuosités peuvent apparaître sur les pistes internes aux composants et dans quelques mois la piste est détruite par l’échauffement et vous pestez contre le fabricant, le vendeur et le reste de la terre alors que c’est à vous qu’il faudrait mettre une chasse !

Enfin pour tout vous dire, ce genre de protection me rassure beaucoup plus qu’un sachet métallisé dont l’effet de protection disparait dès qu’on extrait la carte du boîtier… Le fabricant, le grossiste s’échinent à protéger les cartes et en bout de chaîne le geek de service envoie une grosse décharge au micro processeur dès que la carte sort du sachet 🙁

PRINCIPE DE FONCTIONNEMENT

SCHEMA

1sheeld_schema_N&B_600px

Cliquez pour agrandir

Le shéma du shield (si c’est trop petit, cliquez dessus pour l’afficher en grande taille 😉 ) montre la présence d’un microcontrôleur ATmega162 ainsi que d’un module BlueTooth 2.1 BT-HC06.

COMMENT CA MARCHE ?

LE MICROCONTROLEUR

L’ATmega162 est un microcontrôleur AVR 8 bits d’Atmel. Il fonctionne à la fréquence de 16 MHz. Il dispose de16Koctets de mémore flash pour le programme, 512 octets d’EEPROM et 1Koctet de SRAM.

1SHEELD-FB2

Le microcontrôleur ATmega162 sur la carte 1SHEELD

1Sheeld exécute une version personnalisée du protocole Firmata qui permet au microcontrôleur de surveiller en permanence chaque broche de l’Arduino et d’envoyer un rapport à l’application tournant sur le smartphone lorsqu’une broche change de statut. Cette fonction est utilisable sans nécessiter l’utilisation de la bibliothèque OneSheeld.

Il y a également un autre mode qui repose entièrement sur les ports série de l’Arduino (Pins 0 et 1), c’est ici que la bibliothèque intervient, avec un protocole bâti sur protocole Firmata pour envoyer une énorme quantité de données à shield spécifique de l’application Android, ce qui vous permettra de mettre en œuvre LCD, Twitter, 7 Segments etc. avec seulement deux broches de l’Arduino lieu de nécessiter un port complet.

LA LIAISON BLUETOOTH

1SHEELD-BT_antenne

1SHEELD-dessous

BT-HC06 - Copie

BT-HC06_2eurosLes images ci-dessus présentent le module BT-HC06 utilisé pour la communication avec le smartphone Android. Le module est protégé par un blindage destiné à réduire les interférences (aussi bien en émission qu’en réception).

Avec ce module, les communications en BlueTooth se font sur 2.4 GHZ et la portée maxi est d’une trentaine de mètres. Lors de mes essais en intérieur je me suis déplacé avec le smartphone dans toutes les pièces d’un étage sans problème. (la maison fait environ 10x10m et l’Arduino était pratiquement dans un des coins…

INSTALLER 1SHEELD SUR ARDUINO

Vient le moment fatidique de connecter la carte 1SHEELD à votre Arduino. Un tutoriel explique cela (en anglais).

specs - Copie

Soyez prudent(e), en fonction du type d’Arduino que vous utiliserez avec 1SHEELD, il va falloir adapter le shield. Si vous regardez le shéma (tout en haut à gauche) vous voyez un commutateur marqué POWER-SWITCH dont le rôle est d’envoyer (ou pas) la tension d’alimentation à un régulateur 3,3 volts.

Si la carte Arduino est alimentée en 5V le commutateur sera en position 1 (5V vers la gauche), sinon, il sera en position 2 (3,3V vers la droite) :

1SHEELD-3v_5v

Commutateur de choix de la tension d’alimentation

ARDUINO UNO

1SHEELD est à régler en 5V si vous l’utilisez avec un Arduino UNO

1SHEELD_power_sw_5La carte Arduino ne dispose que d’un seul UART de communication sur les pins 0 (Rx) et 1 (Tx). Ces pins sont également utilisées par 1SHEELD, vous ne pouvez donc pas les utiliser lorsque 1SHEELD est relié à l’Arduino.

 

Si vous devez utiliser l’UART avec un autre périphérique connecté à 1SHEELD, vous devrez utiliser le mode série logiciel.

ARDUINO LEONARDO

1SHEELD_leonardo1SHEELD_uno

Avec un Arduino Leonardo, 1SHEELD fonctionne également en 5V.

1SHEELD_power_sw_5

La carte Leonardo dispose de 2 ports série : Serial est utilisé dans la classe CDC (Communication Device Class) tandis que Serial1 est la sortie TTL normale de la carte sur les pins 0 (Rx) et 1 (Tx).

ARDUINO MEGA 2560 et MEGA ADK

1SHEELD_mega2

Avec les cartes Mega (ADK et ADK 2560) 1SHEELD travaille en 5V.

1SHEELD_power_sw_5

L’Arduino Mega a 4 ports série mais 1SHEELD utilise la classe Serie qui accède aux ports TTL sur les pins 0 (Rx) et 1 (Tx).

ARDUINO DUE

1SHEELD_due2

1SHEELD_due

Avec la carte Arduino Due, 1SHEELD fonctionne en 3,3 volts. Il faut donc basculer le commutateur POWER-SWITCH sur 3.3V.

1SHEELD_power_sw_33

L’Arduino Due a 4 ports série mais 1SHEELD utilise la classe Serie qui accède aux ports TTL sur les pins 0 (Rx) et 1 (Tx).

CONNECTER L’ARDUINO

1SHEELD_USB

INSTALLER LA LIBRAIRIE SUR L’IDE

La librairie OneSheeld est actuellement en version 1.5. Il faudra vous enregistrer pour télécharger le fichier .zip qui la contient. Enregistrez le fichier dans un dossier de votre machine.

Une fois que vous avez téléchargé le fichier .zip, ouvrez l’IDE Arduino.

install_onesheeld_01Allez dans Croquis > Include Library > Add .ZIP Library

install_onesheeld_02Dans la fenêtre de sélection qui s’ouvre, allez sélectionner le fichier que vous venez de télécharger. Cliquez sur Ouvrir.

install_onesheeld_03Quelques secondes plus tard, la ligne d’état ( en bas de la fenêtre du croquis) vous indique que la librairie a bien été chargée.

install_onesheeld_04

Vous pouvez vérifier en retournant dans Include Library que la librairie OneSheeld apparait bien en bas de la liste…

Vous êtes prêt(e) à programmer votre Arduino et son Shield intelligent !

INSTALLER L’APPLI ANDROID

Sur votre téléphone il faut également installer l’appli qui va dialoguer avec la carte 1SHEELD.

Vous pouvez le faire directement depuis la boutique Google Play.

1SHEELD_appli_android_00Lancez le téléchargement de l’application OneSheeld

1SHEELD_appli_android_01

1SHEELD_appli_android_02

L’installation se passe sans problème.

1SHEELD_appli_android_03

Lancez l’appli, elle vous présente quelques écrans qui indiquent comment l’utiliser avec la carte 1SHEELD.

1SHEELD_appli_android_04

Ici vous voyez comment aller sur les shields virtuels (les boucliers en haut à droite) et couper la communication avec la carte 1SHEELD (la prise déconnectée en haut à gauche).

1SHEELD_appli_android_05

Après avoir visionné ces écrans

1SHEELD_appli_android_06

Il est possible que l’appli vous recommande de mettre le firmware de la carte 1SHEELD à jour. Validez en cliquant sur Upgrade.

1SHEELD_appli_android_07

Maintenant lancez le scan BlueTooth pour trouver la carte 1SHEELD (l’Arduino et la carte 1SHEELD doivent être en fonctionnement).

1SHEELD_appli_android_08

On voit que la carte 1SHEELD a bien été trouvée. Elle doit maintenant être appairée avec le smartphone. La carte porte le N° 2252.

1SHEELD_appli_android_09Saisissez le code d’appairage   1234 et cliquez sur OK.

1SHEELD_appli_android_10aLa carte 1SHEELD est maintenant appairée avec le smartphone, on va pouvoir commencer à s’amuser un peu…

1SHEELD_appli_android_12

Au lancement de l’appli, vous pouvez cocher la case Connect Automatically to This Device si vous souhaitez que l’appli se connecte automatiquement à la carte 1SHEELD.

 

QUELS CAPTEURS SUR MON SMARTPHONE ?

Les smartphones actuels sont équipés d’une quantité de capteurs impressionnante. Pour en connaître la liste, vous pouvez lire la doc du téléphone (RTFM) ou vous tourner vers des applications spécialisées qui vont inventorier les capteurs disponibles et vous permettre de les tester. Je suis équipé d’un Samsung Galaxy S4 et j’utilise ces deux applis :

1SHEELD_capteurs_01

GALAXY SENSORS

La première, Galaxy Sensors est conçue pour les Samsung Galaxy Note, Samsung Galaxy S4 et S3, la compatibilité complète est pas garantie sur d’autres modèles. Les Galaxy S3-S5 ou Galaxy Note 2 – Note 4 ne disposent pas du capteur de température et d’humidité. Si un capteur est défini comme « Absent » est parce que votre téléphone n’en dispose pas…
Fonctions :
– Température ambiante en degrés Celsius
– Pourcentage d’humidité dans l’air
– Intensité lumineuse
– Pression d’air
– Hauteur au-dessus du niveau de la mer
1SHEELD_capteurs_03

SENSOR BOX FOR ANDROID

Sensor Box pour Android détecte tous les capteurs disponibles sur un appareil Android, et vous montre comment ils travaillent sous forme graphique. Sensor Box pour Android vous indique également quel capteurs sont pris en charge par le matériel.

1SHEELD_capteurs_02

 

CONCLUSION

L’équipe 1SHEELD a sorti un beau produit, facile à utiliser pour peu qu’on ait déjà « baigné » un peu dans le monde de l’Arduino. Comptez une soixantaine d’euros pour vous procurer la carte chez TXROBOTIC (port compris).

Quand on voit la quantité de capteurs et afficheurs utilisables, ainsi que la facilité avec laquelle on peut récupérer les informations des accéléromètres, gyroscopes, GPS ou encore accéder au GSM, à internet, tweeter… on relativise très vite.

1SHEELD-proto

 

Vous trouverez ci-dessous quelques vidéos présentant la carte. La première est celle du CEO de 1SHEELD, AMR Saleh. Si vous ne comprenez pas l’anglais, j’ai ajouté des sous-titres qui devraient vous permettre de suivre les explications.

VIDEOS

Sources

Share Button

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. .

10 réflexions au sujet de « 1SHEELD Utilisez votre smartphone avec Arduino ! »

  1. Jordan

    Pas mal cette petite carte, pourrait bien s’intégrer dans de nombreux projets.
    De plus l’écran officiel raspi est sorti !!
    Hors sujet : J’ai découvert le module limifrog dans un de vos articles, juste pour dire que la campagne est lancée

    Répondre
    1. François MOCQ Auteur de l’article

      Bonjour
      je ne connaissais pas cette carte
      mais à priori si elle offre des thèmes et de nombreuses possibilités de colorer l’écran
      je ne vois pas la même gamme d’accès aux capteurs du smartphone (accéleromètre et gyros par ex)…
      cordialement
      François

      Répondre
  2. alex

    Dommage qu’ils n’ont pas offert la possibilité de communiquer avec le wifi.
    Je ne vais pas activer le BT juste pour cela. J’aurais bien vu l’accès via du http. J’ai souvenir qu’il est possible d’avoir un petit serveur http sur l’andorio

    Répondre
    1. François MOCQ Auteur de l’article

      bonjour Alex
      le Bluetooth c’est leur choix…
      oui on peut ajouter un shield Ethernet sur Arduino
      avec un bout de serveur HHTP 🙂
      mais bon, ça marche bien leur affaire en Bluetooth
      cordialement
      François

      Répondre

Laisser un commentaire

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

Complétez ce captcha SVP * Time limit is exhausted. Please reload CAPTCHA.