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 :
- Wifi : Cher et consommateur on oublie
- NFC : Peu consommateur et moyen cher, mais le smartphone en question ne possédait pas de NFC…
- 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 :
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 …).
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.
Et voila de quoi bien commencer 🙂
Good job, ca fait plaisir de voir que tu écris un peu !!:)