Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

ToddlerBot - Le robot humanoïde à 250$ qui ridiculise les géants de la tech

Voici une info qui risque de faire grincer des dents chez Boston Dynamics et Tesla (ou pas ^^). Un doctorant de Berkeley, du nom de Haochen Shi, a décidé de partager généreusement avec le monde entier les plans d’un robot humanoïde fonctionnel pour seulement 250 dollars de base. Oui, le prix d’une Nintendo Switch pour un robot bipède capable d’apprendre par lui-même.

Notre petit prodige s’appelle ToddlerBot , il mesure 33 centimètres de haut et possède 17 degrés de liberté. Pour vous donner une idée, c’est largement suffisant pour qu’il puisse marcher, manipuler des objets avec ses bras et effectuer des tâches complexes. Le tout avec des pièces imprimées en 3D et des servomoteurs qu’on trouve sur AliExpress.

Et notre ami Shi n’a pas juste mis en ligne un énième projet de robotique universitaire. Non, le gars a carrément publié l’intégralité du projet en open source sur GitHub sous licence MIT. Les fichiers CAD, le code Python, les schémas électroniques, tout y est. Vous pouvez donc littéralement cloner le repo et commencer à imprimer votre robot ce soir.

Côté hardware, l’architecture repose sur un Jetson Nano ou un Raspberry Pi selon votre budget. Les servomoteurs pour les jambes offrent un couple respectable pour cette échelle, pendant que les bras utilisent des modèles plus légers. Au final, le coût de base est de 250 dollars, mais peut varier selon où vous achetez vos composants et les options que vous choisissez.

Mais attendez, le hardware n’est que la moitié de l’histoire. Du côté software, ToddlerBot intègre un système de téléopération complet qui permet de le contrôler à distance pour collecter des données d’entraînement. Cette approche de collecte de données est cruciale pour l’apprentissage par renforcement.

D’ailleurs, par rapport aux autres projets de robots humanoïdes low-cost, ToddlerBot se démarque par sa simplicité d’assemblage. Là où des projets comme Poppy nécessitent des compétences avancées en électronique, ToddlerBot peut être monté relativement facilement avec des outils basiques.

Ce qui change vraiment la donne ici, c’est l’écosystème qui commence à se former autour. Des makers du monde entier partagent déjà leurs modifications… certains ont ajouté des caméras pour la vision par ordinateur, d’autres expérimentent avec des matériaux différents pour les pièces imprimées. Les possibilités de personnalisation sont infinies.

Pour l’entraînement IA, le projet propose des environnements de simulation préconfigurés. Ça rend le transfert sim-to-real, comme disent les chercheurs, accessible au commun des mortels. Vous pouvez donc apprendre à votre robot à marcher, ramasser des objets ou même jouer au foot miniature. Les modèles pré-entraînés sont disponibles, mais rien ne vous empêche de partir de zéro avec vos propres algorithmes d’apprentissage par renforcement.

Un aspect que je trouve particulièrement cool dans ce projet c’est que ToddlerBot est conçu pour être modulaire. Vous voulez des bras plus longs ? Modifiez les fichiers CAD. Besoin de plus de puissance de calcul ? Remplacez le Raspberry Pi par un Jetson Orin. Cette flexibilité transforme chaque robot en plateforme d’expérimentation unique.

Les implications sont énormes car si n’importe qui peut construire un robot humanoïde pour le prix d’une console de jeu, on entre dans une nouvelle ère de la robotique. Fini le monopole des labos universitaires, des millionnaires et des géants de la tech. Bien sûr, il faut quand même des compétences techniques pour exploiter pleinement le potentiel du projet, mais la barrière d’entrée n’a jamais été aussi basse.

Et ce côté DIY ajoute une dimension émotionnelle qu’on ne retrouve pas avec un produit commercial. C’est votre création, votre code, vos améliorations.

Alors vous voulez vous lancer, commencez par commander les servomoteurs (comptez 3-4 semaines de livraison depuis la Chine) et pendant ce temps, imprimez les pièces et familiarisez-vous avec le code. La documentation du projet est bien faite et la communauté est vraiment accueillante avec les débutants.

N’empêche, un robot humanoïde fonctionnel à imprimer en 3D… Qui l’aurait cru ?

Il connecte Animal Crossing à l'IA en hackant la mémoire de sa GameCube

20 ans plus tard, les vieilles consoles continuent de nous surprendre… La preuve avec ce hack complètement barré qui transforme une GameCube de 2001 en client pour nos IA modernes.

Josh Fonseca a en effet réussi l’exploit de connecter ChatGPT à Animal Crossing via l’émulateur Dolphin. Pas de mod de la cartouche, pas de modification du code original, mais juste du bon vieux Python qui lit et écrit dans la RAM émulée pendant que le jeu tourne.

Hé oui, le mec n’a même pas touché une seule ligne du code original du jeu. Il a “simplement” identifié les adresses mémoire où le jeu stocke les dialogues (0x81298360 pour les curieux) et remplacé le texte à la volée. L’émulateur Dolphin pense faire tourner les dialogues d’origine, mais en fait il affiche du contenu généré par une IA qui tourne sur un serveur cloud.

Techniquement, c’est malin comme approche puisque la GameCube n’a que 24 MB de RAM et un processeur PowerPC à 485 MHz. Il lui est donc impossible de faire tourner un LLM dessus. Du coup il a créé une sorte de pont mémoire entre l’émulateur et le LLM. Son script Python surveille cette adresse en mémoire via le processus Dolphin, récupère le contexte du dialogue, l’envoie à l’IA, et réinjecte la réponse dans la mémoire émulée.

Ce qui complique vraiment les choses, c’est qu’Animal Crossing n’utilise pas du texte brut pour ses dialogues. Le jeu a son propre langage de contrôle avec des codes pour les pauses, les émotions, les effets sonores. Un peu comme du HTML mais version Nintendo 2001, ce qui fait qu’il a fallu créer deux IA : une première qui génère le dialogue créatif (le “Writer AI”) et une autre qui ajoute tous les codes techniques (le “Director AI”).

Voici un extrait :

# A small sample of the control codes I had to encode/decode
CONTROL_CODES = {
 0x00: "<End Conversation>",
 0x03: "<Pause [{:02X}]>", # e.g., <Pause [0A]> for a short pause
 0x05: "<Color Line [{:06X}]>", # e.g., <Color Line [FF0000]> for red
 0x09: "<NPC Expression [Cat:{:02X}] [{}]>", # Trigger an emotion
 0x59: "<Play Sound Effect [{}]>", # e.g., <Play Sound Effect [Happy]>
 0x1A: "<Player Name>",
 0x1C: "<Catchphrase>",
}

# The magic byte that signals a command is coming
PREFIX_BYTE = 0x7F

Je trouve ça cool comme projet car les joueurs rêvent depuis longtemps de dialogues plus variés dans Animal Crossing. En effet, si comme moi, vous n’êtes pas pro-gamer sur Animal Crossing, vous ignorez surement que Nintendo limite les villageois à 8 types de personnalité, ce qui rend les conversations hyper répétitives après quelques heures de jeu.

Avec ce hack, les villageois peuvent donc maintenant discuter de l’actualité mondiale, critiquer Tom Nook sur ses pratiques immobilières douteuses, ou même avoir des conversations philosophiques sur le sens de la vie dans votre village virtuel. Le mod est sur Github pour ceux qui veulent tester sur émulateur.

Notez que la communauté de décompilation d’Animal Crossing a joué un rôle crucial dans ce projet car sans leur travail pour convertir le code PowerPC en C lisible, identifier ces adresses mémoire spécifiques aurait été un cauchemar. C’est grâce donc à eux que le développeur a pu comprendre comment le jeu gère ses dialogues en interne.

Bref, je trouve ça assez marrant qu’une console vielle de +20 ans capable de fonctionner totalement offline (car à l’époque Nintendo était allergique à Internet), soit finalement indirectement “connectée” (via l’émulateur) pour utiliser ce qui se fait de plus hype en ce moment, à savoir l’IA (les LLMs plus exactement).

Comme je vous le disais, pour l’instant, ce hack fonctionne sur la version GameCube originale du jeu via l’émulateur Dolphin. L’auteur mentionne qu’une adaptation sur du vrai matériel serait possible avec le Broadband Adapter officiel, mais nécessiterait beaucoup plus de travail. Les versions ultérieures sorties sur DS, Wii ou Switch utiliseraient une architecture mémoire différente, mais techniquement, rien n’empêche d’adopter une approche similaire.

Comme quoi, avec un peu d’ingéniosité, on peut moderniser n’importe quel jeu rétro !

Le Decisioninator - le Raspberry Pi qui automatise la prise de décision

Je me doute que vous connaissez tous et toutes cette situation : “Qu’est-ce qu’on mange ce soir ?” suivi de 30 minutes de “j’sais pas, toi tu veux quoi ?” qui se terminent ensuite pas la commande de la même pizza que d’habitude. Heureusement, l’ingénieur software nommé Makerinator a mis au point LA solution, et il affirme même que ça a “sauvé son mariage”.

Le Decisioninator, c’est son nom, est un dispositif basé sur un Raspberry Pi 4 qui automatise toutes ces décisions chiantes du quotidien. Restaurant, corvées ménagères, soirées ciné, sorties en amoureux… Plus besoin de se prendre la tête !

L’appareil ressemble à une mini borne d’arcade des années 80, avec son boîtier en contreplaqué découpé au laser et peint à la bombe. Deux boutons contrôlent tout… un gros rouge pour lancer la roue de la fortune virtuelle, et un petit bleu pour choisir le mode (restaurants, corvées, soirée ciné ou streaming).

Pour son bricolage, Makerinator a utilisé un Raspberry Pi 4 avec une version allégée de Raspberry Pi OS. Pour l’interface, il s’est également appuyé sur Flutter et le Flame Engine, un moteur de jeu 2D modulaire parfait pour créer cette interface façon “roue de la fortune”. Les boutons sont connectés via les GPIO du Pi, et l’alimentation passe par un convertisseur 12V vers 5V.

Pour la partie menuiserie, Makerinator avoue ne pas être un expert du bois mais avec beaucoup de ponçage, de bombes de peinture et quelques covers vinyles, il a réussi à cacher ses erreurs de menuiserie. Il raconte d’ailleurs que sa Dremel (lien affilé) a été sa carte sortie de prison pour sa mauvaise planification du projet. Rajoutez là dessus un bon paquet d’époxy prise rapide, et le tour était joué.

Et je trouve que le résultat final a vraiment un look rétro-arcade sympa, avec des influences très Tron. Makerinator décrit son invention comme un couteau suisse pour l’indécision et comme je vous le disais en intro, selon lui, son mariage a été sauvé grâce à ça. Je pense qu’il abuse, mais ce genre de conneries, ça fait vendre ^^.

Voilà, si ça vous tente, tout est documenté sur Hackaday , et qui sait, peut-être que ça sauvera votre mariage aussi !

Source

SynoCommunity - Transformez votre NAS Synology avec ces outils en ligne de commande

Si vous possédez un NAS Synology et que vous aimez mettre les mains dans le cambouis, faut absolument que vous lisiez cet article. Car vous avez déjà forcement connu ce moment hyper frustrant où vous voulez juste lancer un nano ou un htop sur votre NAS et… rien ? En effet, le terminal Synology est plutôt spartiate de base. Heureusement, SynoCommunity vient à votre rescousse avec ses packages SynoCli qui permet d’ajouter de nouveaux outils indispensables sur votre NAS.

Alors SynoCommunity, c’est donc une communauté open source qui maintient plus de 130 packages tiers pour Synology DSM. Des applications comme Transmission, SickRage, ou même Home Assistant, mais aujourd’hui, j’aimerai surtout qu’on se concentre sur leurs 7 packages SynoCli qui regroupent plus de 110 outils en ligne de commande. Ça va vous permettre d’installer tout un arsenal d’utilitaires Linux d’un seul coup, sans vous prendre la tête avec les compilations croisées.

La beauté du truc, c’est que tout passe par le Package Center de votre Synology. Pas besoin de SSH, pas de risque de casser votre système, et surtout, tout reste proprement géré par DSM. Si vous mettez à jour votre NAS ou que vous voulez désinstaller, tout se fait proprement.

Bon, trêve de blabla, passons maintenant aux choses sérieuses : ✨l’installation✨.

D’abord, il faut ajouter le dépôt SynoCommunity à votre Package Center. Pour cela, connectez-vous à votre DSM, allez dans le Package Center, puis dans les Paramètres. Et dans l’onglet Sources de paquets, cliquez sur Ajouter et entrez :

Validez, et voilà, vous avez maintenant accès à tout le catalogue SynoCommunity dans l’onglet Communauté de votre Package Center.

Maintenant, cherchez “SynoCli” dans le Package Center. Vous allez alors tomber sur 7 packages différents, chacun ayant sa spécialité. Voici ce que contient chaque package :

  • SynoCliNet pour le réseau : vous avez nmap (l’outil de scan réseau par excellence), tmux et screen pour gérer vos sessions SSH, mtr pour diagnostiquer les problèmes réseau, rsync pour vos synchronisations, et même sshfs pour monter des systèmes de fichiers distants. La version actuelle inclut aussi telnet, whois et dig.
  • SynoCliFile pour la gestion de fichiers : c’est le package star avec nano et micro pour éditer vos fichiers, tree pour visualiser l’arborescence, fzf (le fuzzy finder qui change la vie), ripgrep pour des recherches ultra-rapides, bat (un cat avec coloration syntaxique), et même Midnight Commander pour ceux qui ont la nostalgie de Norton Commander. Les dernières versions incluent aussi eza et lsd, des alternatives modernes à ls.
  • SynoCliMonitor pour surveiller votre système : htop évidemment (parce que top c’est has-been), iotop pour voir qui bouffe votre disque, iperf pour tester votre bande passante, et même bandwhich pour visualiser en temps réel qui utilise votre réseau. Les amateurs d’SNMP seront ravis de trouver les outils net-snmp inclus.
  • SynoCliDevel pour les développeurs : automake, autoconf, make, gdb pour débugger, pkg-config, et même strace pour tracer les appels système. Parfait si vous voulez compiler des trucs directement sur votre NAS.
  • SynoCliDisk pour gérer vos disques : testdisk pour récupérer des partitions perdues, ncdu pour voir ce qui prend de la place (en mode interactif), smartmontools pour surveiller la santé de vos disques, et ddrescue si vous devez récupérer des données d’un disque mourant.
  • SynoCliKernel pour les modules kernel : celui-là est plus spécialisé, avec des modules pour l’USB série et les tuners TV. Utile si vous branchez des périphériques exotiques sur votre NAS.
  • SynoCliMisc pour tout le reste : bc (la calculatrice en ligne de commande), expect pour automatiser des scripts interactifs, parallel pour paralléliser vos commandes, et plein d’utilitaires issus de util-linux comme lsblk, lscpu, findmnt.

Une fois installés, tous ces outils sont alors accessibles directement depuis le terminal SSH de votre Synology. Pas de PATH à configurer, pas de bibliothèques manquantes, ça marche direct.

Petite astuce quand même en passant… vous n’êtes évidemment pas obligé d’installer tous les packages. Si vous voulez juste éditer des fichiers et surveiller votre système, SynoCliFile et SynoCliMonitor suffisent largement. Chaque package fait entre 10 et 50 MB, donc ça reste raisonnable.

Pour DSM 7, attention, selon les développeurs, certains packages peuvent nécessiter des adaptations, mais la communauté est active et les mises à jour sont régulières. D’ailleurs, si vous upgradez de DSM 6 vers DSM 7, pensez à sauvegarder vos configurations avant. Ce qui est cool avec SynoCommunity surtout, c’est que tout est open source. Vous pouvez aller voir le code sur GitHub, contribuer si vous voulez, ou même créer vos propres packages avec leur framework spksrc. C’est une vraie communauté de passionnés qui maintiennent ça sur leur temps libre.

Bref, si vous utilisez votre Synology pour autre chose que du stockage basique, ces packages SynoCli sont indispensables. Ça transforme votre NAS en véritable serveur Linux, avec tous les outils dont vous avez besoin pour administrer, développer, et débugger… Comme ça, plus besoin d’installer Entware ou de bricoler avec ipkg/opkg. Tout est propre, maintenu, et intégré à DSM.

Alors oui, vous pourriez compiler tout ça vous-même, mais pourquoi se compliquer la vie quand une communauté entière le fait déjà pour vous ? En plus, avec le système de packages Synology, vous pouvez installer/désinstaller/mettre à jour en un clic, sans risquer de casser votre système.

Voilà, maintenant votre NAS Synology n’a plus aucune excuse pour ne pas avoir tous les outils CLI dont vous rêvez.

Puis c’est quand même plus classe de faire un htop dans un terminal que de regarder le Resource Monitor dans l’interface web, non ?

Une usine de pâte à modeler en LEGO

Vous pensiez que votre imprimante 3D était le summum de la technologie ? Et bien Dr. Engine vient de vous prouver le contraire avec sa factory LEGO qui transforme de la pâte à modeler en produits manufacturés. Et franchement, c’est pas mal foutu du tout !

Cette machine automatisée combine laminoir motorisé, convoyeur à bande et guillotine de précision pour traiter de la modeling clay (comprenez de la pâte à modeler style Play-Doh) avec un sérieux qui ferait pâlir d’envie certaines chaînes de production industrielles.

Ils transforment un tapis de course en imprimante 3D pour faire des impressions infinies

Je ne suis pas nerd de l’impression 3D même si j’adore ma Bambulab parce qu’elle fonctionne à tous les coups sans me demander 3h de réglages. Et je sais aussi reconnaitre quand une idée est cool et c’est le cas ici avec cette imprimante 3D qui utilise un tapis de course comme plateau, ce qui lui permet d’imprimer de longues pièces.

On appelle ça une imprimante à bande et dans le commerce c’est vendu par exemple par Creality pour un peu plus de mille euros… Mais la faire soi-même avec du matériel de sport, c’est quand même plus cool. Surtout quand on trouve des tapis de course sur Leboncoin à 50 balles, abandonnés par leurs propriétaires après trois sessions de cardio et une prise de conscience que Netflix et les M&M’s c’est quand même bien plus sympa que de transpirer.

❌