Unboxing et Opening du Tile

The Tile est un projet Kickstarter qui avait récolté quelques millions de dollars.

Le « Tile » est un petit objet (37x37x5mm) qui permet de retrouver un objet perdu dans sa maison ou “ailleurs dans le monde”. Prix 25$.

Unboxing

1

Une boite toute simple en carton et mousse, ça rend quand même pas mal.

2

On peut voir un trou permettant de le fixer à son trousseau de clefs mais il est aussi fourni avec un adhésif double-face  pour pouvoir le coller n’importe ou.

Comment que ça marche ???

Rien de sorcier; c’est un périphérique Bluetooth que l’on appaire avec son smartphone et qui via une application dédiée permet de faire sonner le “Tile” en cas de perte.

La promesse de pouvoir retrouvé son objet “partout dans le monde” réside sur le fait que en cas de perte votre “Tile” vous pourrez le retrouver si vous le déclarez perdu dans l’application et qu’une personne possédant l’application sur son smartphone passe assez près de l’objet pour en faire remonter un position très approximative sur une carte.

Et dedans, quoi qu’il y a ?

Ben oui je suis curieux et ça n’est pas nouveau, on sort un petit tournevis et hop, ouverture de la bête.

IMG_20150204_141321

Nous voyons ici un belle pile (annoncée avec une durée de vie de 1 an), un petit bouton (le gros rond doré à gauche) qui sert à appairer le “Tile” avec un périphérique Android ou iOS, tout plein de petits composants annexes et le plus important (celui caché sous l’étiquette avec une QRcode) le chipset Bluetooth.


IMG_20150204_141428

Au dos rien de spécial, juste les connecteurs qui dépassent pour faire contact avec le piezo qui fera de la musique quand vous perdez votre bidule.

Reparlons du chipset BT, c’est un nRF51822 de chez Nodric Semiconductor. C’est un chipset intéressant pour les raisons suivantes :

  • Supporte le BT 4.1
  • Consomme très peu (9.7mA en TX et 8 en RX)
  • L’est petit (6x6mm)
  • Embarque un proc ARM Cortex M0 avec 128K de falsh et 16K de ram
  • 2.2€ pièce

Soit un très bon rapport qualité, utilité, performance, prix.

Et voilà la fin de notre aventure au cœur du « Tile ».

Smart speaking with tooth

Bien le bonjour …. longtemps que j’ai pas mis les pieds ici moi … le temps passe pourtant on à jamais le temps ….. enfin quand j’ai quelque chose à partager je reviens pas ici.

J’ai du faire quelques tests afin de faire communiquer un smartphone avec un arduino le tout sans fil et pour pas cher du tout.

J’ai pensé à trois solutions :

  1. Wifi : Cher et consommateur on oublie
  2. NFC : Peu consommateur et moyen cher, mais le smartphone en question ne possédait pas de NFC…
  3. Bluetooth : C’était la solution à mon problème, peu gourmand en énergie, pas cher et en plus simple d’utilisation.

Matériel nécessaire :

  • Un arduino
  • Un module bluetooth JY-MCU (http://goo.gl/u3ErZT)
  • Deux résistances pour faire un pont diviseur pour le RX, genre 10K et 20K ou 1K et 2.2K
  • des fils

Câblage :

BluetoothHookupWeb

On voit bien sur l’image le pont diviseur et que le serial du module Bluetooth est connecté au serial de l’arduino. Pour plus de souplesse vous pouvez utiliser d’autres pin de l’arduino avec la librairie SoftSerial, ça facilitera le débug, j’utilise les pin 4 (RX) et 2 (TX) dans mon code.


Software arduino :

Rien de sorcier ici, on parle en série avec le module bluetooth donc on regarde juste si l’on reçoit bien la commande envoyée par le smartphone “blink”, cette commande activera le clignotement de la led présente sur l’arduino.

Le code est sur Github : https://github.com/tmator/Smart-speaking-with-tooth

Coté Smartphone ???

Point important je n’ai jamais développé sur smartphone, ou alors simplement un HelloWorld avec le SDK android pour faire le curieux …. je me suis alors demandé de quelle manière j’allais développé l’application mobile.

Après une longue réflexion (environ 30 secondes) je me suis tourné vers phonegap/cordova; je ne suis habituellement pas fan de ce genre de solution, je préfère les applications natives mais comme mes collègues bossent la dessus je n’ai pas trop cherché à me compliquer la vie. Donc j’ai installé phonegap et crée une application avec le plugin https://github.com/don/BluetoothSerial qui permet d’envoyer facilement des messages via bluetooth, seul défaut que je trouve à cette librairie c’est qu’il faut avoir appairé les deux devices en passant par les paramètres du smartphone.

Forcément ce n’est pas optimal, mais pour faire une application avec un bouton qui fait clignoter une led c’est largement suffisant. L’avantage de phonegap c’est que en théorie votre application est compilable sur différentes plate-formes (mais à l’usage on s’aperçoit vite que l’on doit quand même faire du code spécifique …).

Screenshot_2015-01-15-18-09-35

Le code est sur Github : https://github.com/tmator/Smart-speaking-with-tooth

Donc rien de spécial, dans le index.html un bouton “blink” sur lequel j’ai mis une action onTouch dans le fichier js; cette action appelle la fonction blink qui envoi la commande “blink” via bluetooth.

IMG_20150115_181024

Et voila de quoi bien commencer 🙂