J’ai toujours voulu avoir un assistant. Bon, après de longue recherches infructueuses, j’ai du me rendre à l’évidence : Il faut que je me le fabrique. Le voilà donc : Le Macintouch ! C’est un petit artoy articulé à tête de Macintosh avec de l’électronique dedans pour qu’il soit un peu plus vivant. En fait c’est un mélange entre un Toy que j’avais fait il y a plusieurs années et « Adafriend » de chez Adafruit.

Ce p’tit gars réagit lorsqu’on lui tape sur la tête grâce au capteur de vibrations. Il a plusieurs émotions : Neutre, heureux , en colère et triste. Il émet plusieurs type de sons et siffles des airs lorsqu’il est bourré heureux.

LE MATERIEL_

Pour la partie électronique, il va vous falloir  : 

  1. – Une carte Pro trinket 5V de chez Adafruit
  2. – Un Backpack Lipo de chez Adafruit
  3. – Une matrice LED 8*8 de chez Adafruit
  4. – Une capteur (switch) de vibration SW-18010P
  5. – Une lipo 3.7V, au moins 500Mah
  6. – Un interrupteur self lock 7*7 6 broches
  7. – Un buzzer rond de 12mm de diamètre
  8. – 2 inserts métalique de 2.5*4 avec 2 vis de 2.5*8
  9. – Une vis de 2.5*20
Rien ne vous empêche d’utiliser d’autre références de composants. C’est juste que ceux-ci sont adaptés à mon projet et se combinent parfaitement avec les pièces imprimées en 3D. 
  1. Pour les bras et les jambes articulées , il vous faudra :
  2. – De la durite en caoutchouc ou silicone (7mm de diamètre externe)
  3. – Du fil de cuivre assez épais pour que les poses que vous donnerez à votre Macintouch restent en place.

L’IMPRESSION 3D_

La structure est composée de :

  1. – Le boitier composé de la face et du fond dans lequel se trouvera l’électronique
  2. – Le support écran et le bezel dans lequel on va mettre la matrice LED
  3. – L’interrupteur avec son support (notez que le support n’est pas sur la photo ci-dessus)
  4. – Les mains et les chaussures interchangeable

Les STL sont disponible ici.

Les STL sont gratuits, mais vous pouvez me remercier ou filer un coup de pouce en me faisant un petit don ici !

L’ASSEMBLAGE

On commence par le câblage.

La première chose à faire est de souder un fil rouge avec un connecteur Dupont au bout sur l’entrée BAT du backpack, il servira à alimenter la matrice LED en connectant le Dupont sur le VCC de la matrice. Ensuite il faut souder l’interrupteur sur le backpack, vu qu’on utilise un interrupteur 6 broches, veillez à bien localiser les 2 broches à souder avec un ohmmètre. Attention à installer l’interruteur sur son support avant de le souder au backpack. Une fois ces 2 choses faite on va pouvoir souder le backpack sur le trinket. 

On enchaîne avec la masse commune qu’on va souder sur l’entrée GND du trinket et qui va aller d’un coté sur le GND de la matrice, d’un autre coté sur la borne du buzzer et pour finir sur le capteur SW-18010P. Tant qu’on y est on va souder le + du buzzer sur l’entrée 10  et le + du SW-18010P sur l’entrée A0 du trinket. Il nous restera juste a souder un Dupont vert sur le A4 et un bleu sur le A5 du trinket qui iront respectivement sur le SDA et le SCL du la matrice LED.

Si vous souhaitez aller plus en profondeur dans le câblage, je vous invite à consulter l’excellent tutoriel de chez Adafruit pour ce projet.

On passe à l’écran.

Pour cela, il faut insérer la matrice dans le support, et le bezel par dessus. On fini par insérer le tout dans la partie avant du boitier et on sécurise avec des vis. Il n’y a rien de compliquer mais il faut forcer une petit peu pour que ca rentre, faites attention à ne pas trop forcer au risque de casser le boitier. J’ai aussi rajouté des inserts métalique pour un meilleur maintient des 2 parties du boitier.

Notez qu’il y a un emplacement idéale pour la batterie sous le support.

Maintenant on installe l’électronique dans la partie arrière du boitier. Il faudra commencer par le bouton Power qu’on insère dans son emplacement et on installe l’interrupteur dedans puis on vis le support interrupteur. On continue par visser le trinket à sa place, ça va nous aider a installer tranquillement le buzzer dans son socle dans la partie inférieur gauche du boiter et le SW-18010P dans son emplacement dans la partie supérieur gauche. 

On va pouvoir insérer le fil de cuivre dans la durite pour les bras et le jambes. Notez que j’ai laissé dépasser pas mal de cuivre afin de pouvoir les maintenir au boitier, pour ne pas qu’ils se déboîtent quand on va lui donner des poses.

Voilà, il ne reste plus qu’à brancher le tout à l’écran, à refermer le boitier et installer les mains et les pieds.

LE CODE_

Vous trouverez le code complet sur la page Adafruit du projet « Adafriend ».

Ici je vous partage plusieurs musiques que ce petit gars peut jouer lorsqu’il est bourré content : 

"The Simpsons:d=4,o=5,b=160:c.6,e6,f#6,8a6,g.6,e6,c6,8a,8f#,8f#,8f#,2g,8p,8p,8f#,8f#,8f#,8g,a#.,8c6,8c6,8c6,c6";
"Indiana:d=4,o=5,b=250:e,8p,8f,8g,8p,1c6,8p.,d,8p,8e,1f,p.,g,8p,8a,8b,8p,1f6,p,a,8p,8b,2c6,2d6,2e6,e,8p,8f,8g,8p,1c6,p,d6,8p,8e6,1f.6,g,8p,8g,e.6,8p,d6,8p,8g,e.6,8p,d6,8p,8g,f.6,8p,e6,8p,8d6,2c6";
"TakeOnMe:d=4,o=4,b=160:8f#5,8f#5,8f#5,8d5,8p,8b,8p,8e5,8p,8e5,8p,8e5,8g#5,8g#5,8a5,8b5,8a5,8a5,8a5,8e5,8p,8d5,8p,8f#5,8p,8f#5,8p,8f#5,8e5,8e5,8f#5,8e5,8f#5,8f#5,8f#5,8d5,8p,8b,8p,8e5,8p,8e5,8p,8e5,8g#5,8g#5,8a5,8b5,8a5,8a5,8a5,8e5,8p,8d5,8p,8f#5,8p,8f#5,8p,8f#5,8e5,8e5";
"Entertainer:d=4,o=5,b=140:8d,8d#,8e,c6,8e,c6,8e,2c.6,8c6,8d6,8d#6,8e6,8c6,8d6,e6,8b,d6,2c6,p,8d,8d#,8e,c6,8e,c6,8e,2c.6,8p,8a,8g,8f#,8a,8c6,e6,8d6,8c6,8a,2d6";
"Muppets:d=4,o=5,b=250:c6,c6,a,b,8a,b,g,p,c6,c6,a,8b,8a,8p,g.,p,e,e,g,f,8e,f,8c6,8c,8d,e,8e,8e,8p,8e,g,2p,c6,c6,a,b,8a,b,g,p,c6,c6,a,8b,a,g.,p,e,e,g,f,8e,f,8c6,8c,8d,e,8e,d,8d,c";
"Xfiles:d=4,o=5,b=125:e,b,a,b,d6,2b.,1p,e,b,a,b,e6,2b.,1p,g6,f#6,e6,d6,e6,2b.,1p,g6,f#6,e6,d6,f#6,2b.,1p,e,b,a,b,d6,2b.,1p,e,b,a,b,e6,2b.,1p,e6,2b.";
"Looney:d=4,o=5,b=140:32p,c6,8f6,8e6,8d6,8c6,a.,8c6,8f6,8e6,8d6,8d#6,e.6,8e6,8e6,8c6,8d6,8c6,8e6,8c6,8d6,8a,8c6,8g,8a#,8a,8f";
"20thCenFox:d=16,o=5,b=140:b,8p,b,b,2b,p,c6,32p,b,32p,c6,32p,b,32p,c6,32p,b,8p,b,b,b,32p,b,32p,b,32p,b,32p,b,32p,b,32p,b,32p,g#,32p,a,32p,b,8p,b,b,2b,4p,8e,8g#,8b,1c#6,8f#,8a,8c#6,1e6,8a,8c#6,8e6,1e6,8b,8g#,8a,2b";
"Bond:d=4,o=5,b=80:32p,16c#6,32d#6,32d#6,16d#6,8d#6,16c#6,16c#6,16c#6,16c#6,32e6,32e6,16e6,8e6,16d#6,16d#6,16d#6,16c#6,32d#6,32d#6,16d#6,8d#6,16c#6,16c#6,16c#6,16c#6,32e6,32e6,16e6,8e6,16d#6,16d6,16c#6,16c#7,c.7,16g#6,16f#6,g#.6";
"MASH:d=8,o=5,b=140:4a,4g,f#,g,p,f#,p,g,p,f#,p,2e.,p,f#,e,4f#,e,f#,p,e,p,4d.,p,f#,4e,d,e,p,d,p,e,p,d,p,2c#.,p,d,c#,4d,c#,d,p,e,p,4f#,p,a,p,4b,a,b,p,a,p,b,p,2a.,4p,a,b,a,4b,a,b,p,2a.,a,4f#,a,b,p,d6,p,4e.6,d6,b,p,a,p,2b";
"StarWars:d=4,o=5,b=45:32p,32f#,32f#,32f#,8b.,8f#.6,32e6,32d#6,32c#6,8b.6,16f#.6,32e6,32d#6,32c#6,8b.6,16f#.6,32e6,32d#6,32e6,8c#.6,32f#,32f#,32f#,8b.,8f#.6,32e6,32d#6,32c#6,8b.6,16f#.6,32e6,32d#6,32c#6,8b.6,16f#.6,32e6,32d#6,32e6,8c#6";
"GoodBad:d=4,o=5,b=56:32p,32a#,32d#6,32a#,32d#6,8a#.,16f#.,16g#.,d#,32a#,32d#6,32a#,32d#6,8a#.,16f#.,16g#.,c#6,32a#,32d#6,32a#,32d#6,8a#.,16f#.,32f.,32d#.,c#,32a#,32d#6,32a#,32d#6,8a#.,16g#.,d#";
"TopGun:d=4,o=4,b=31:32p,16c#,16g#,16g#,32f#,32f,32f#,32f,16d#,16d#,32c#,32d#,16f,32d#,32f,16f#,32f,32c#,16f,d#,16c#,16g#,16g#,32f#,32f,32f#,32f,16d#,16d#,32c#,32d#,16f,32d#,32f,16f#,32f,32c#,g#";
"A-Team:d=8,o=5,b=125:4d#6,a#,2d#6,16p,g#,4a#,4d#.,p,16g,16a#,d#6,a#,f6,2d#6,16p,c#.6,16c6,16a#,g#.,2a#";
"Flinstones:d=4,o=5,b=40:32p,16f6,16a#,16a#6,32g6,16f6,16a#.,16f6,32d#6,32d6,32d6,32d#6,32f6,16a#,16c6,d6,16f6,16a#.,16a#6,32g6,16f6,16a#.,32f6,32f6,32d#6,32d6,32d6,32d#6,32f6,16a#,16c6,a#,16a6,16d.6,16a#6,32a6,32a6,32g6,32f#6,32a6,8g6,16g6,16c.6,32a6,32a6,32g6,32g6,32f6,32e6,32g6,8f6,16f6,16a#.,16a#6,32g6,16f6,16a#.,16f6,32d#6,32d6,32d6,32d#6,32f6,16a#,16c.6,32d6,32d#6,32f6,16a#,16c.6,32d6,32d#6,32f6,16a#6,16c7,8a#.6";
"Jeopardy:d=4,o=6,b=125:c,f,c,f5,c,f,2c,c,f,c,f,a.,8g,8f,8e,8d,8c#,c,f,c,f5,c,f,2c,f.,8d,c,a#5,a5,g5,f5,p,d#,g#,d#,g#5,d#,g#,2d#,d#,g#,d#,g#,c.7,8a#,8g#,8g,8f,8e,d#,g#,d#,g#5,d#,g#,2d#,g#.,8f,d#,c#,c,p,a#5,p,g#.5,d#,g#";
"Gadget:d=16,o=5,b=50:32d#,32f,32f#,32g#,a#,f#,a,f,g#,f#,32d#,32f,32f#,32g#,a#,d#6,4d6,32d#,32f,32f#,32g#,a#,f#,a,f,g#,f#,8d#";
"Smurfs:d=32,o=5,b=200:4c#6,16p,4f#6,p,16c#6,p,8d#6,p,8b,p,4g#,16p,4c#6,p,16a#,p,8f#,p,8a#,p,4g#,4p,g#,p,a#,p,b,p,c6,p,4c#6,16p,4f#6,p,16c#6,p,8d#6,p,8b,p,4g#,16p,4c#6,p,16a#,p,8b,p,8f,p,4f#";
"MahnaMahna:d=16,o=6,b=125:c#,c.,b5,8a#.5,8f.,4g#,a#,g.,4d#,8p,c#,c.,b5,8a#.5,8f.,g#.,8a#.,4g,8p,c#,c.,b5,8a#.5,8f.,4g#,f,g.,8d#.,f,g.,8d#.,f,8g,8d#.,f,8g,d#,8c,a#5,8d#.,8d#.,4d#,8d#.";
"LeisureSuit:d=16,o=6,b=56:f.5,f#.5,g.5,g#5,32a#5,f5,g#.5,a#.5,32f5,g#5,32a#5,g#5,8c#.,a#5,32c#,a5,a#.5,c#.,32a5,a#5,32c#,d#,8e,c#.,f.,f.,f.,f.,f,32e,d#,8d,a#.5,e,32f,e,32f,c#,d#.,c#";
"MissionImp:d=16,o=6,b=95:32d,32d#,32d,32d#,32d,32d#,32d,32d#,32d,32d,32d#,32e,32f,32f#,32g,g,8p,g,8p,a#,p,c7,p,g,8p,g,8p,f,p,f#,p,g,8p,g,8p,a#,p,c7,p,g,8p,g,8p,f,p,f#,p,a#,g,2d,32p,a#,g,2c#,32p,a#,g,2c,a#5,8c,2p,32p,a#5,g5,2f#,32p,a#5,g5,2f,32p,a#5,g5,2e,d#,8d";
"Mario:d=4,o=5,b=100:16e6,16e6,32p,8e6,16c6,8e6,8g6,8p,8g,8p,8c6,16p,8g,16p,8e,16p,8a,8b,16a#,8a,16g.,16e6,16g6,8a6,16f6,8g6,8e6,16c6,16d6,8b,16p,8c6,16p,8g,16p,8e,16p,8a,8b,16a#,8a,16g.,16e6,16g6,8a6,16f6,8g6,8e6,16c6,16d6,8b,8p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16g#,16a,16c6,16p,16a,16c6,16d6,8p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16c7,16p,16c7,16c7,p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16g#,16a,16c6,16p,16a,16c6,16d6,8p,16d#6,8p,16d6,8p,16c6";
"tetris:d=4,o=5,b=150:e6,8b,8c6,8d6,16e6,16d6,8c6,8b,a,8a,8c6,e6,8d6,8c6,b,8b,8c6,d6,e6,c6,a,2a,8p,d6,8f6,a6,8g6,8f6,e6,8e6,8c6,e6,8d6,8c6,b,8b,8c6,d6,e6,c6,a,a";
"Zelda1:d=4,o=5,b=125:a#,f.,8a#,16a#,16c6,16d6,16d#6,2f6,8p,8f6,16f.6,16f#6,16g#.6,2a#.6,16a#.6,16g#6,16f#.6,8g#.6,16f#.6,2f6,f6,8d#6,16d#6,16f6,2f#6,8f6,8d#6,8c#6,16c#6,16d#6,2f6,8d#6,8c#6,8c6,16c6,16d6,2e6,g6,8f6,16f,16f,8f,16f,16f,8f,16f,16f,8f,8f,a#,f.,8a#,16a#,16c6,16d6,16d#6,2f6,8p,8f6,16f.6,16f#6,16g#.6,2a#.6,c#7,c7,2a6,f6,2f#.6,a#6,a6,2f6,f6,2f#.6,a#6,a6,2f6,d6,2d#.6,f#6,f6,2c#6,a#,c6,16d6,2e6,g6,8f6,16f,16f,8f,16f,16f,8f,16f,16f,8f,8f";
"smb_under:d=4,o=6,b=100:32c,32p,32c7,32p,32a5,32p,32a,32p,32a#5,32p,32a#,2p,32c,32p,32c7,32p,32a5,32p,32a,32p,32a#5,32p,32a#,2p,32f5,32p,32f,32p,32d5,32p,32d,32p,32d#5,32p,32d#,2p,32f5,32p,32f,32p,32d5,32p,32d,32p,32d#5,32p,32d#";

Attention à ne pas surcharger la mémoire, au delà de 7 chansons il plante.

Voilà ce que ça donne lorsqu’il chante (si la vidéo ne se lance pas, clic droit sur l’image « afficher les commandes »). Il ne chantera que lorsqu’il est en mode « content ». Pour ça il faudra activer le capteur de vibration plusieurs fois. Si vous le faites trop de fois, il passera en mode « en colère ». Il émet des sons dans tous les modes, avec des tonalité différentes, plus il est content plus il est aigu et inversement.

CONCLUSION_

Voilà donc la fin de ce Build, un peu plus compliqué que les précédents que j’ai trouvé très fun à faire. Ça permet une petite mise en bouche avec le langage et les microcontrôleurs sous Arduino. 

Les mains s’enlèvent et se remettent facilement et les poses simple à mettre en place. Voila de quoi vous tenir compagnie pendant vos longues heures passées à votre bureau !

J’espère que le B_log vous aura été utile, je vous dit maintenant :