Accueil Nos publications Blog Un weekend avec Sphero

Un weekend avec Sphero

sphero-logo-blueDurant le hackathon organisé par Direct Energie (dont Florian Rousselet vous a fait un compte-rendu), le week-end dernier, il y avait des partenaires présents, pour faire découvrir leurs produits, et surtout pour que les développeurs les intègrent dans leurs projets pour les faire évoluer.

Orbotix, la société qui fabrique Sphero, en faisait partie. Reconnu d’abord pour son coté ludique, nous avons quand même essayé de l’intégrer dans notre projet. Ce qui n’a pas été forcément le plus, comme vous allez le voir.

Présentation de Sphero

GlossySpheroSphero est une petite boule de 7.5 centimètres de diamètre qui peut être pilotée par bluetooth. Vous trouverez les détails du produit et de son utilisation sur leur site https://www.gosphero.com/fr/.

D’un point de vue technique, il est possible de communiqué avec Sphero via bluetooth. La communication se fait dans les deux sens.

Il est possible d’envoyer des ordres à Sphero pour (par exemple) :

  • Déplacer la boule
  • Changer la couleur de la LED centrale
  • Changer l’intensité de la LED arrière (qui permet de connaitre l’orientation de la boule)

Et également de recevoir des informations, comme (par exemple) :

  • Les données du gyroscope
  • Les données de l’accéléromètre
  • La vitesse de déplacement
  • Des informations sur la batterie.

Cas d’utilisation lors du hackathon

Contexte

Comme je vous le disais en introduction, nous avons souhaité utiliser Sphero lors du Hackathon Direct Energie. Nous avons donc réfléchit à ce qu’il pourrait apporter au projet, et nous sommes arrivé rapidement à l’idée d’en faire un centre de notification complémentaire pour notre application.

L’idée est simple (pour rappel les détails de notre projet est disponible ici)  :  lorsqu’une alerte doit être donnée à l’utilisateur, un message sera envoyé par bluetooth au Sphero, qui pourra en changeant de couleur, ou en bougeant, l’informer.

Problèmes rencontrés

Le premier problème que l’on a rencontré est le manque de SDK WP8 officiel. Je commence donc à potasser la documentation technique qui explique le protocole réseau du sphero. Le protocole n’est pas très compliqué, mais l’étudier en détail pour l’implémenter prendrai trop de temps dans un hackathon. Finalement, et heureusement on a fini par tomber sur ce projet : https://github.com/lewisbenge/Sphero-WinPhone8-SDK. L’implémentation n’est pas complète mais largement suffisante pour les besoins du projet.

L’autre problème rencontré est le démarrage du Sphero. En effet, la boule n’est pas toujours à l’écoute du bluetooth (même sur son socle). Il faut faire un double-tap dessus pour la démarrer (il faut se rappeler que le produit est d’abord prévu pour le jeu).

Malgré ces problèmes nous avons tout de même développer ce système de notification, (en démarrant le Sphero à la main pour la démo).

Un manque bientôt comblé

Pendant ce week-end, j’en ai profité également pour développer la partie commande du Sphero (avec joystick virtuel), pour montrer qu’on avait réussit à dompter la bête ! Et il faut avouer qu’une fois que j’ai commencé à jouer avec j’ai vu un potentiel immense dans le domaine du jeu.

Beaucoup d’applications sont disponible sur iOS et Android pour s’amuser avec, mais sur Windows phone c’est un peu le désert.

M’étant pris de passion pour ce jeu, j’ai commencé à développer un SDK, et je développerai également quelques jeux/applications basés dessus. Quand ce SDK sera suffisamment abouti, je ferai un autre article plus technique pour présenter la communication avec Sphero et l’utilisation de ce SDK.

Je vous donne donc rendez-vous dans quelques semaines, pour parler sockets , bytes , et un peu de maths pour les positions dans l’espace ! 🙂