Il y a bien longtemps, je suis tombé sur un certain petit robot iPhone sur Amazon. Il me semblait intéressant et familier à la fois. Je me suis souvenu avoir vu une campagne Kickstarter pour ce même robot. Apparemment, le projet avait été financé et avait connu un certain succès et c’est pourquoi j’ai pu le trouver en vente sur Amazon.
Après quelques courtes recherches, j’ai compris que Romotive, la société derrière ce projet, n’existait plus, ce qui pouvait signifier que le robot ne serait pas soutenu. Pour faire court, c’était trop intriguant pour résister, alors la commande a été passée.
Le prix serait littéralement un vol, SI le robot fonctionne. C’était la grande question dans mon esprit compte tenu du manque d’informations en ligne. Quelques jours plus tard, le colis est arrivé, Romo a été déballé et là est venu le premier problème.
Taille
Apparemment, la taille compte quand il s’agit de robots. Romo a été conçu pour l’iPhone 5, un appareil considérablement plus petit que votre iPhone X actuel. J’avais un iPhone 5S qui traînait et qui, comme prévu, s’adaptait parfaitement. J’avais aussi un iPhone 6S qui était plus grand mais qui a fini par s’adapter aussi avec un peu de pression. Pas vraiment un problème. Jusqu’ici tout va bien!
App
La deuxième déception est venue peu de temps après car l’application annoncée n’était plus sur l’App Store. Je suppose que le compte Apple de Romotive n’a pas été renouvelé après que la société a fait faillite et avec cela les applications ont été retirées de l’App Store.
C’était un blocage majeur. Ma première idée a été d’essayer de trouver une ancienne application IPA. Ce n’est pas une bière mais plutôt l’exécutable d’une application iOS. C’est plus facile à dire qu’à faire car sur iOS, il est difficile de mettre la main sur des fichiers IPA et même si vous le faites, il faudrait un téléphone jailbreaké pour pouvoir l’exécuter sur votre appareil.
Une autre voie que je voulais explorer était de trouver peut-être quelque chose d’open sourcé sur GitHub ou ailleurs. Après quelques manipulations avec des dépôts non maintenus ou incomplets, j’ai réussi à assembler le code source complet de l’application Romo et du SDK ! Apparemment, Romotive avant de fermer, a gentiment fait ceci:
« Nous avons décidé d’ouvrir complètement le code source de chaque dernière parcelle de l’intelligence de Romo. Tous nos projets vivent dans ce repo et vous êtes libre de les utiliser comme vous le souhaitez. »
Hourra ! Les choses commencent enfin à avoir l’air bien.
Pas si vite… Ce que j’avais entre les mains une base de code assez désuète et massive avec beaucoup d’erreurs, d’avertissements et d’incompatibilités. Heureusement, je suis un développeur iOS et je pouvais donc utiliser ce que j’avais entre les mains. Ce ne serait pas une tâche facile et il n’y avait aucune garantie que cela fonctionnerait réellement à la fin.
Avance rapide jusqu’à aujourd’hui
Après beaucoup d’heures de travail et la décomposition de la tâche en plus petits morceaux, j’ai réussi à nettoyer le désordre et à avoir presque tout fonctionner !
Maintenant toutes les anciennes et nouvelles versions d’iOS sont supportées. Vous pouvez utiliser Romo avec n’importe quel iOS de iOS 6 à iOS 12 ! Un travail important a été mis juste dans la rétrocompatibilité afin que vous puissiez tous utiliser vos vieux Romo à 30 broches et vos vieux iPhones.
Vous pouvez utiliser tout appareil jusqu’à l’iPhone 8 ! Je parie que les fabricants de Romo ne l’ont pas vu venir 😎
Vous pouvez utiliser Romo X Control pour contrôler votre robot Romo à partir d’un autre appareil iOS dans le même réseau.
Il y a eu des nettoyages et des optimisations majeurs avec l’application qui est maintenant si légère que même un iPhone 3GS peut la gérer.
Romo Developers
Le but ultime était de permettre aux communautés existantes ou nouvelles de makers, de tuteurs et de chercheurs de s’engager activement avec la plateforme Romo et la robotique sur smartphone en général.
Je vois beaucoup de potentiel avec le matériel emballé dans les smartphones ces derniers temps. Et avoir cette puissance sur roues ouvre certainement de nouvelles possibilités.
Je voulais faciliter l’adoption de Romo par les développeurs et commencer à écrire des applications pour elle en un rien de temps. C’est pourquoi maintenant le Romo SDK est open source et offert sur CocoaPods.
Nous avons déjà vu d’autres projets Romo comme ce projet cool qui met Romo en réalité augmentée.
J’espère que l’adoption de CocoaPods aidera à voir de plus en plus de projets comme celui-ci !
Quoi de neuf
Avoir dit que j’ai presque tout qui fonctionne est exact cependant j’aimerais pouvoir enlever le mot presque de ma phrase. La seule chose qui manque est la téléprésence, la possibilité de se connecter à distance à votre Romo et de le contrôler. C’est une fonctionnalité cool et utile que de nombreux utilisateurs ont demandé.
Si vous voulez voir cela se produire autant que moi, visitez ma page Patreon et s’il vous plaît, soutenez-moi. Vous pouvez voir les objectifs fixés et la distance qui nous sépare de ceux-ci. Vous pouvez trouver Romo X et Romo X Control sur l’App Store.
Merciements spéciaux à toutes les personnes qui ont travaillé pour que Romo se produise en premier lieu et aussi mes supporters sur Patreon.