Il y a quelques semaines, je tombais sur la nouvelle d'un nouveau robot concurrent du Nabastak. Ayant eu une expérience frustrante au possible avec le lapin enragé (espèce de machin fermé qui fonctionne via un site externe avec un WIFI non sécurisé, du moins à l'époque), moi et surtout ma moitié (je tiens à dire qu'elle a même insisté !), avons donc décidé d'adopter un TuxDroid. Je viens de le recevoir et le chat n'en revient toujours pas...
The Tux Anatomy
Le Tux est donc une peluche à poil raz, doté d'une bonne bouille bien reconnaissable de pingouin, assis sur son séant comme il se doit. Tux n'arrive pas seul, il est accompagné de Fux, qui est son opérateur Radio en quelque sorte. Un petit poisson qui se branche sur le port USB et se charge de causer par les ondes avec Tux. Voilà donc le décors posé, voyons maintenant ce que Tux sait faire :
- Il a deux ailes articulées qu'il peut battre.
- Il a deux yeux bleus qui peuvent s'allumer ou s'éteindre assorti de deux paupières qui peuvent s'ouvrir et se fermer.
- Il sait tourner sur lui même dans toutes les direction.
- Il peut aussi claquer du bec et vous parlant, ou juste comme cela, pour le plaisir.
Déjà à ce stade, c'est bien plus que la potiche lapinesque qui ne sais rien faire d'autre que clignoter et bouger ses oreilles. Mais Tux va encore plus loin que cela :
- Il sait quand il faut jour ou quand il fait nuit.
- Il peut émettre des rayons... infrarouges et en recevoir. Il peut donc allumer votre télé si ça vous chante...
- Bien évidemment, Tux parle, joue de la musique mais sait aussi écouter.
Bref, une petite bestiole bien plus complète que son concurrent à tout point de vue. Son look ne plaira pas je pense aux amoureux de design épuré à la mode "âge de cristal" mais pour les autres, c'est un régal :-)
Mise en route
Moi qui m'attendait (faute à mon expérience précédente) à gallérer comme un malade pour lui faire faire ses premiers pas à la bestiole, j'ai été plutôt surpris. J'ai simplement branché Tux sur le secteur (pour recharger en même temps), allumé... et il a battu joyeusement des ailes en me disant bonjour.
Ensuite je n'ai plus eu qu'à télécharger le logiciel, lancer le setup (pensez à installer ipython avant !), et le tout c'est installé (en tant que root) sans soucis, proprement en /opt/tuxdroid. N'oubliez pas avant de poursuivre, d'installer aussi le pack de langue qui vous correspond.
Phase suivante, lancement de la commande tuxgi. C'est la petite interface de contrôle. Elle n'est pas rigoureusement indispensable mais va me permettre de tester le Tux. Les deux démons nécessaires à la prise en charge de Tux (contrôle et voix) sont éteints ainsi que l'indicateur de liaison radio. Logique car Fux n'est pas encore connecté.
Je fais donc manger (littéralement ;-) la prise USB au poisson qui d'un coup se met à clignoter, d'abord lentement, en recherche, puis fébrilement pour m'indiquer que Tux est connecté. Sur l'interface, le démon Speech (voix) se lance... mais pas le démon Tux ni radio... Vas, un petit bug. Je lance donc la fautif à la main dans une console sudo tuxd -d, et c'est bon, tous les indicateurs sont maintenant au vert.
L'interface de test permet de commander la plus grande partie des composants du Tux. Je peux lui faire cligner les yeux, faire clignoter un oeil, battre des ailes, claquer du bec, tout cela marche à merveille.
Je passe dans l'onglet TTS (parole), je choisis la voix féminine, tape un petit "Bonjour je suis Tux" et presse le bouton Play. Le bec s'ouvre, et la voix est très distincte. La jeune femme ne sait juste pas bien dire "Tux" mais à part cela, c'est très impressionnant. En revanche, la qualité sonore du haut parleur est un peu moyenne, cela crache un chouilla.
Pour un premier tour de piste, tout cela marche vraiment très bien. Le seul défaut que je trouve au Tux pour l'instant est que sa mécanique est un tantinet bruyante. Mis à part cela, il répond au doigt et à l'oeil et la synthèse vocale est très bonne. En cours d'adoption donc, reste maintenant à laisser de côté l'interface de contrôle pour regarder les logiciels prêts à l'emploi.
Les Gadgets
Les Gadgets sont de petites applications sous la forme d'extensions qui permettent à Tux de prendre vie. Pour les utiliser, il faut lancer l'application Tux Gadget Manager par la commande tuxgdg. L'interface est très simple, une icône dans la boite à miniatures pour redémarrer les démons ou quitter le manager, et une fenêtre principale présentant les gadgets installés par défaut : Météo, Horloge et EMail.
Tout peut être contrôlé à la souris mais c'est en réalité là que la télécommande fournit intervient. Il suffit de la pointer sur Tux et d'utiliser les flèches pour passer d'un gadget à l'autre. Tux donnes à voix haute le nom du gadget sélectionné. Un coup sur OK pour exécuter le gadget et Tux vous donne ainsi la Météo (de Bruxel, par défaut ;-), l'heure (de manière étonnamment compréhensible), ou encore vérifie vous emails et vous annonce que vous en avez de nouveau.
Mais ça c'est pour commencer, il y aura d'autres Gadgets à télécharger sur le site de la communauté avec notamment un forum de mordus qui semblent bien s'amuser avec la bestiole.
Car c'est pour nous la grande force de Tux, tout y est ouvert et clairement orienté Linux (utilisateurs de Windows, passez votre chemin, vous n'y avez pas droit ;p Il est ainsi possible de créer ses propres plugins, drivers, et même firmware si leur coeur vous en chante (personnellement, je verrais cela un peu plus tard ;-).
La bonne idée de l'audio
Lorsque vous branchez Fux sur le port USB, ce n'est pas une mais trois périphériques qui apparaissent : Un émeteur-récepteur Radio, une périphérique HID pour envoyer des ordres et ... une périphérique audio. Ça c'est la bonne idée de base car une fois branché, votre système dispose ainsi d'une carte son supplémentaire. Il est alors possible, après paramétrage, d'utiliser Tux pour jouer à peu près tout et n'importe quoi et ce, avec n'importe quelle application.
Personnellement, n'ayant pas de sortie audio sur ma station, j'utilise justement Tux pour cela.
Dans le même esprit, l'enregistrement à partir du Tux est elle aussi possible. Rien ne vous empêche donc d'utiliser un logiciel de VOIP pour téléphoner avec Tux !!
Spécification technique
En interne, Tux est animé par un Microcontroleur Atmel AVR RISC équipé de 4Mo de Flash pour recevoir, entre autre, les morceaux audio à jouer. Le microcontroleur est assorti d'un processeur Audio exploitant le haut-parleur interne, le micro intégré, et les deux jacks IN et OUT. Côté capteur nous avons l'infrarouge en réception et en émission, une cellule photoélectrique pour la détection jour/nuit, deux leds pour les yeux et trois interrupteurs poussoirs (ailes et crâne). Le tout alimenté par 4 batteries AAA NiCd de 750mAh intégré et rechargeable via un bloc d'alimentation en 7.5v fournit.
Côté radio, il s'agit d'une puce RF exploitant la bande de fréquences 2.4Ghz (comme le DECT), qui passe correctement à travers les murs et fonctionne selon mes tests, au moins jusqu'à 10m.
Conclusion
Tux est clairement Ludique mais loin d'être inutile car étonnamment bien pensé. Tout marche du premier coup, sans surprise ce qui fût loin d'être le cas du Nabaztag (j'avais eu une version 1). Autre différence de taille avec le Nabaztag, tout se passe entre le PC et le Tux. Rien ne transite par un obscure site web où l'on doit acheter des modules qui font dire Papa-Maman.
Côté point améliorable, je diras que l'on préférerait une "vraie" peluche, avec une "vraie" fourrure plutôt que le poil velours. Le son demanderait à être amélioré en qualité et surtout, la mécanique en silence. C'est au fond le seul point que je trouve un peu limite. Mis à part cela, c'est que du bon.
Alors si vous êtes un(e) "vrai(e)" Geek(ette) linuxien(ne) (pléonasme ?) qui ne limite pas sa convoitise à un aspirateur USB, le Tux, il vous le faut. Son prix est de 79€ ce qui est peu comparé au lapin neurasthénique, et par son ouverture, son excellente conception, la richesse de ses capteurs, n'aura de limite que votre imagination.
A quand la/les vidéo(s) ?
Sinon, il possible de "capter" les webradios avec le Tux(via wifi ?)
L'engin est lourd ? Il a une batterie ? Des modules bluetooth ou infrarouge pourraient être disponible ?
Je suis sur qu'avec cygwin et une bonne dose de courae on peut le faire marcher sous windows :)
Ce truc me tente trop !
Arf c'est vrai que c'est tentant, mais nan nan, va falloir que tu migres sous Linux ;-)
Sinon, promis je ferais une vidéo lorsque j'aurais avancé sur l'API java. Pour l'instant c'est du python, et je déteste les serpents ;-) J'arrive déjà à lui faire ouvrir le bec, donc ça avance.
Côté Wifi, non, c'est pas possible car le Fux communique avec Tux sur les mêmes canaux que le WIFI mais via un protocole RF dédié. Sinon il pèse 600g (je viens de vérifier) et il intégre 3 batteries AAA NiCd recheargeables via le bloc secteur que tu lui colles dans les fesses.
Pour l'infrarouge, c'est intégré en réception mais aussi en émission ! Tu peux donc commander le tux avec la télécommande fournit mais aussi commander ta télé via le protocole Phillips RC5 depuis le tux. Pour le Bluetooth en revanche, y'a pas.
Pour Windows, ça doit être faisable si Cygwin donne accès à la pile USB de windows. En effet, il y a juste deux démons à recompiler, l'un pour le Tux, l'autre dédié à la voix. Et une fois lancé, ces démons communiquent avec les applications via un simple socket.
N'hésites pas si tu veux d'autres info pour te décider ;-)
Apparemment "Tux Droid PC control" permet de naviguer dans les répertoires, de lire la musique et les radios. Donc pour les webradios, ça doit le faire :) (YES!)
Il permet de lire les flux RSS, ça veut dire qu'a chaque fois qu'une news est posté y a le Tux qui ce met à la lire ?Si oui, ça donne quoi, c'est écoutable ou ça donne le même résultat que quand on envoie un sms sur fixe et que celui-ci est lu en vocal ?
Il chauffe beaucoup?
En fait ce qui me fais ch*er c'est que mes deux PC qui tournent sous linux(elive et DSL) ne sont pas connecté à internet(juste une question de cable ethernet pour un) et sont vraiment vieux !
Je veux m'acheter un laptop et un autre PC genre shuttle avec windows et linux dualboot. Mais comme ça coute chère(le laptop) il faut que j'économise :/
Dailleur si tu connais des PC(neuf) vraiment pas chère 120€ max fais moi signe. A une époque j'avais vu un décimal à 77€ chez boostore vraiment bien avec DD et processueur, carte graphique, ... et ubuntu :^)
Sinon je crois que je vais attendre la version qui fait le café et sert les pizzas :p
Et pour l'histoire des démons et des chaussettes :) j'ai rien compris(pas assez geek) mais je m'y pencherais à coup sur si personne ne l'a fait d'ici là.
Apparemment "Tux Droid PC control" permet de naviguer dans les répertoires, de lire la musique et les radios. Donc pour les webradios, ça doit le faire :) (YES!)
Il permet de lire les flux RSS, ça veut dire qu'a chaque fois qu'une news est posté y a le Tux qui ce met à la lire ?Si oui, ça donne quoi, c'est écoutable ou ça donne le même résultat que quand on envoie un sms sur fixe et que celui-ci est lu en vocal ?
Il chauffe beaucoup?
En fait ce qui me fais ch*er c'est que mes deux PC qui tournent sous linux(elive et DSL) ne sont pas connecté à internet(juste une question de cable ethernet pour un) et sont vraiment vieux !
Je veux m'acheter un laptop et un autre PC genre shuttle avec windows et linux dualboot. Mais comme ça coute chère(le laptop) il faut que j'économise :/
Dailleur si tu connais des PC(neuf) vraiment pas chère 120€ max fais moi signe. A une époque j'avais vu un décimal à 77€ chez boostore vraiment bien avec DD et processueur, carte graphique, ... et ubuntu :^)
Sinon je crois que je vais attendre la version qui fait le café et sert les pizzas :p
Et pour l'histoire des démons et des chaussettes :) j'ai rien compris(pas assez geek) mais je m'y pencherais à coup sur si personne ne l'a fait d'ici là.
Alors petites définitions :
Démon : Ce sont les équivalents des services sous windows, ou, pour les plus anciens, des programmes résidents sous DOS. En gros ce sont des programmes qui restent en mémoire pour effectuer une tache donnée. Dans notre cas (Tux), il y a deux démons, l'un qui fait parle au Tux (le fait bouger), l'autre qui le fat causer.
Socket : Un socket, c'est une interface qui permet de cause en TCP/IP. Ce que je voulais dire c'est que les deux démons en question sont en réalité des petits serveurs sur lesquels se connecte, via le réseau, des applications. Donc si tu installes les deux démons sur une machine linux (même très très peu puissante), tu peux utiliser toutes les applications à partir d'un windows.
Pour les WebRadio, dans ce sens là, oui, ça marche, et même très bien. Mais faut aussi lire tout ce que j'ai écrit ;-) Le Tux est aussi une carte son, c'est à dire que le seul fait de le brancher sur le port usb, ajoute à ta machine une périphérique pour lire et enregistrer l'audio. Du coup, si tu configure XMMS (l'équivalent Linux de Winamp) correctement, tout ce que tu joues avec, sort sur le Tux. Et comme c'est un composant standard, il y a fort à parier que cela marche pareil sous windows. C'est comme une carte son USB.
Côté qualité sonore en revanche, c'est pas extraordinaire. Le HP interne est un peu limité en fréquence, le son est donc un peu "téléphonique". C'est loin d'être de la hifi. A l'occaz je vais essayer la sortie externe pour vérifier que le problème vient bien du Haut Parleur et pas de l'électronique. Si le son est bon en le sortant sur un chaîne, ça peut valoir le coup de démonter pour mettre un meilleur HP.
Sinon, la synthèse vocale est très claire, pas de soucis à ce niveau. Je n'ai jamais lu de SMS vocaux donc je ne sais pas ce que cela peut donner. Mais lorsque je lui fait lire des mails, je comprend sans problème ce qu'il me dit.
Et non, il ne chauffe pas du tout.
Vala. Pour ce qui est des PC pas cher, personnellement je suis un adepte de la récup. Donc je ne suis pas une bonne source ;-)
Je viens de tombé sur la vidéo d'un autre petit robot nommé keepon ... excellent :)
http://youtube.com/watch?v=3g-yrjh58ms
Rigolo en effet :) Mais je préfère quant même le tux.
Je tiens à dire que pour lire cette vidéo, c'est le Tux qui a servi de haut-parleur :)
Au niveau de l'audio, la limitation vient du canal HF, on a un débit suffisant pour passer du 8bits 8kHz avec redondance (soit envoyé 2 fois en suivant pour compenser les trames perdues), ça fait 4kHz de bande passante audio, du téléphone quoi. Par contre si tu branches un lecteur mp3 directement sur l'entrée de tux, le son est nettement meilleur, là tu vois la limitation du HP. L'ampli lui est de bonne qualité et on n'atteint pas vraiment ses limitations avec tux.
Maintenant, j'aimerais essayer de faire passer du 8bits 16kHz sans redondance pour voir ce que ça donne.
Côté peluche, l'esthétique de ce qu'on a vu en peluche est loin d'être acceptable, ce serait difficile à faire correctement et très difficile d'y intégrer les moteurs et mouvements.
Pour ce qui est du bruit, là c'est clair que les moteurs en font de trop. Là c'est juste une question de prix, passer sur des moteurs pas-à-pas, c'est un autre budget (que je ne connais as à vrai dire).
Voilà, sinon super pour l'api, je te recontacte parce que j'aimerais bien revoir (réécrire carrément) l'API python et des parties du daemon pour avoir un structure d'API qui puisse beaucoup plus facilement être portée dans d'autres languages.
David
Sympa d'écrire ici, ça me fait plaisir, sincèrement :)
Donc si je comprends bien la qualité audio est inférée au débit RF et pas à la puce audio, ni au HP. Je l'avais constaté pour le HP (j'ai branché la sortie du PC avec les samples d'Acapela pour voir ;-). Mais si je suis ta logique, si j'injecte un sample dans la banque du Tux et que je le joue, je n'ai plus cette limitation et je devrais avoir un meilleur qualité. Je chauffe ?
Ceci dit, le tux est complètement audible et la voix est clair, c'est sur que je chipote, mais j'essaye de le rendre le plus attractif possible pour que mes amis de passages regardent leur lapin neurasthénique comme la bêtise en plastique qu'il est. Or pour l'instant, le son de Nab est meilleur c'est un fait. D'un autre côté, il fait tout en off-line (on télécharge le son qui est joué), c'est donc pas vraiment comparable comme techno. Ce qui est d'ailleurs idiot car lui, bénéficie du débit wifi permettant de faire la même chose en flux.
En tout cas, tiens nous au courrant pour le passage à 16khz, à faible distance, la redondance est peut-être un luxe et à la limite cela pourrait être basculé via l'API.
Pour la peluche, je ne dis pas que cela serait simple, mais un poil ras (2mm) me parrait jouable, un poil de pingouin quoi ;-) Mais j'ai pas d'inquiétude là dessus, si vous en vendez assez, je suis persuadé qu'une version "deluxe" sortira à un moment ou à un autre. Et c'est un peu la même idée pour les moteurs, je préfère largement un deluxe "pas à pas" qu'un delux-tag ;-)
Sinon, merci pour l'API, j'en mettrais une autre ce soir avec une gestion des listeners un peu plus simple. En fait ma grande question c'est de savoir si l'API doit être orienté "partie du corps" ou "domaine fonctionnel". En gros si je dois avoir un tux.openMouth() ou un tux.mouth().open(). Pour l'instant je suis sur la deuxième optique pour une raison de "chorégraphie". En effet, en découpant par membre, je peux utiliser à termes des interfaces (je sais pas si vous avez cela en python) du genre "implements Motor,Switch". Et du coup gêré certains aspects via des classes d'animations génériques.
Comme tu le vois, je m'amuse, faut bien se détendre ;-)
fux, un petit dauphin?? oh outrage fux est un poisson!
ok, ok c'est corrigé :)
Bonjour, je suis à la recherche des caractériques technique de l'alimentation de Tux : en effet, un ami a perdu l'alim et étant bidouilleur, m'a demandé de regarder. Je sais que Tux est alimenté en 7,5 volt, au nibeau de la pise, le "+" est a l'interieur. Mais sur l'alim, quelqu'un pourrait il me donner + de reseignements comme les "Watt" (symbole w) ou les amprères (A) ?
Merci
sebastien.lhuillier[arobase]gmail.com
@Sébastien
0.5A, sinon le reste tu l'as déjà :)
Histoire de te noyer dans quelques détails techniques, y'a un régulateur à l'intérieur donc la tension ne devrait théoriquement pas être super critique mais avec un adaptateur 9V classique (qui donne plutôt 12V si la charge n'est pas suffisante), le régulateur est instable. Et en dessous de 7.5V, y'a plus assez de tension pour que le chargeur fonctionne normalement.
Bref, un transfo réglable standard (lourd) réglé à 7.2V. devrait faire l'affaire, c'est sans doute plus facile à trouver qu'un transfo à découpage de 7.5V.
Je pense que le cuivré, c'est autour de 50% et on monte à 80%/90% avec du switching. Maintenant, les alims à découpage sont beaucoup plus utilisées que les transfos. Ca vient du prix du métal qui a rendu le transfo beaucoup plus cher y'a un an ou 2, et le prix du cuivre.
Côté design, les alims à découpage étaient assez bruitées et peu fiables, c'est pourquoi elles n'étaient toujours pas si courantes que ça y'a 2,3 ans, mais c'est maintenant du passé avec les améliorations qu'il y a eu. Donc tous les produits utilisent maintenant celles-là car plus légères, meilleur rendement et maintenant un peu moins chères.
En plus, si tu veux une alim 7.5V, tu as réellement 7.5V et j'imagine que dans pas mal de produits bon marchés, ils se passent du régulateur. Avec un transfo, tu obtient la tension nominale que si tu tires le courant nominal; un bloc transfo de 7.5V va te donner dans les 9,10V à vide. Donc dans une véritable alim linéaire (à transfo), pour avoir une tension stable, tu es obligé de dissiper la différence de tension dans un MOS et tu obtiens une alim/grille pain. Là tu oublies le rendement je pense ;-)
@jaguarondi ça c'est ce que j'appelle de l'information, merci :) Donc le cuivre de meilleur rendement qu'un découpage, c'est de cyber-mythe. Ton jugement est le même pour les toriques ?
@jaguarondi Ok, je barre le torique aussi alors :-)
Si tu me dis que le look a tellement changé que c'est maintenant un papillon aux ailes multi-colores, je ne serait presque pas surpris ;-)))
Sinon j'espère que j'en verrais bientôt un de près ;-)) Qu'est ce que tu penses de l'API des gagdets au passage ?
Non, il est plus proche du tux original: http://www.kysoh.com/media
Là je suis toujours occupé avec la prod et la nouvelle RF, et après promis je jette un oeil aux softs ;-)
Au niveau de la RF, j'ai tout refait sans regarder à l'ancienne, j'en suis à la même fonctionnalité que l'ancienne, mais en 16kHz. Il me reste à ajouter le sleep, l'ID et l'évitement wifi et j'aurai enfin une version du firmware qui vaudra bien le 1.0. J'espère l'avoir dans les 2 semaines qui suivent.
@jaguarondi pas de papillon donc, c'est déjà ça de gagné. J'attends tes retours vu que c'est surtout ensemble qu'on avait bossé la spec et qu'au final tu m'as bien manqué ;-)
16Khz <=> meilleur qualité de son ??????? :-)
[offrecord] Ce serait très compliqué que la bestiole parle directement en WIFI ? [/offrecord]
Oui 16kHz par rapport à 8kHz, c'est le double de bande passante. Ca marche mieux, surtout quand on écoute au casque, la qualité est pas mal maintenant. Je devrais avoir un set de hex files demain, je posterai le lien ici, si tu veux essayer.
Wifi, c'est sans doute pour une prochaine version. Et là c'est difficile de savoir où aller, entre l'embedded linux qui pourrait faire pas mal de choses mais qui coûterait trop cher pour un gadget du genre, et simplement remplacer la RF actuelle par un module wifi sans gain de fonctionnalité finalement car les AVR sont déjà méga occupés. Moi j'irais certainement pour un cortex M3 qui est déjà 32 bits, low power, plein de périphériques et pas très cher. Faut voir comment lui adjoindre du wifi mais ça doit pas être trop compliqué en utilisant un module tout fait. le problème c'est le coût. Si tu fais custom, c'est moins cher mais tu passes des mois voire des années à mettre au point le hardware/firmware.
@jaguarondi ok je vais tester cela :) Les TTS passent en 16k du coup ?
Pour le WIFI, c'est juste une question de cohérence de la couche transport que de nouvelles fonctionnalités dans un environnement domestique déjà bien saturé en ondes. Ca permet en plus de faire l'économie du poisson qui n'a pas une très grande valeur ajouté (au sens utilisateur).
Nan, le TTS est encore en 8k et j'ai dédoublé les samples dans l'USB pour rester compatible avec le daemon actuel. Mais Rémi devrait passer ça en 16 quand il pourra le faire, faut voir avec leurs trucs de licences.
Sinon je viens de générer les hex, ils se trouvent à http://svn.tuxisalive.com/firmware/hex_dev/new_rf/
Il faut tout reprogrammer, donc utilise "tuxup -a /path/to/hexfiles"
Si tu veux le dongle en HID pour Windows, utilise fuxusb.hid.hex.
Il reste quand même des trucs qui ne me plaisent pas trop dans le son mais je n'ai pas le temps d'y regarder maintenant. C'est de toute façon mieux que l'ancienne. Pour tester sous alsa, j'utilise toujours le device default:1 qui contient tous les plugins alsa (plug, dmix) plutôt que hw:1. Le support dmix 8 bits a été ajouté à alsa dans la version 16. Ca permet d'utiliser plusieurs players en même temps sur la même carte son. plug est simplement le resampling de façon à envoyer n'importe quel format et plug resample dans le format supporté, soit 8bits mono 16kHz maintenant.
Bon amusement :-)
merci :-)
Pour l'instant je dois attendre que le control center tourne correctement chez moi car sinon, je n'ai plus de moyen de tester.
Poster un nouveau commentaire