Je ne sais pas si ça intéressera beaucoup de monde mais je me suis un peu amusé avec ce robot récemment acquis (VR1128SIL) et j'ai découvert qu'il était possible d'utiliser le port USB du Hom-bot 3.0 pour extraire les données qu'il contient. Cela permet également de customiser son robot en modifiant certains sons. Le mien fait par exemple le bruit de R2D2 avant de lancer le nettoyage en mode zigzag. Ca ne sert à rien mais c'est amusant.
Visiblement il y a aussi du code pour gérer la communication wifi et aussi la reconnaissance vocale mais mon niveau est insuffisant pour déterminer si ces fonctions sont activables ou pas.
Juste au cas où... Je ne suis en aucun cas responsable des dommages susceptibles d'être constatés après l'éxécution des différentes opérations décrites dans ce message.
Récupération des fichiers du robot (/usr/*)
Etapes à suivre :
1 - prendre une clé USB (Fat32) avec au moins 100Mo disponibles.
2 - créer un dossier "extract" à la racine de la clé USB (le nom peut changer mais il faut alors mettre à jour le script de l'étape 4)
3 - créer à la racine de la clé USB un fichier nommé "update.sh"
4 - éditer ce fichier avec notepad++ par exemple et y mettre le code suivant :
- Code: Tout sélectionner
#!/bin/sh
#IS_HIT_UPDATE_SCRIPT=1
SOURCE_PATH="/mnt/usb"
aplay -c 1 -r 16000 -f S16_LE /usr/SNDDATA/SND_NOTICE_UPDATE_START.snd
cp -r /usr/* "$SOURCE_PATH"/extract
aplay -c 1 -r 16000 -f S16_LE /usr/SNDDATA/SND_NOTICE_UPDATE_END.snd
exit 0
J'ai laissé l'appel aux sons Update_start et Update_end afin de savoir quand la copie commence et quand elle est terminée.
En gros ce script se contente de lire le contenu du répertoire "/usr" du robot et de le copier sur la clé USB dans le répertoire "extract".
5 - Sortir le robot de sa base et l'éteindre avec l'interrupteur.
6 - Brancher la clé dans le compartiment au dessus du bac à poussière (derrière le cache en caoutchouc).
7 - Rallumer le robot avec l'interrupteur puis appuyer sur le bouton tactile Start/Stop.
Le robot va dire "Software will be updated" (mais aucune mise à jour n'est réellement lancée).
8 - La clé va alors clignoter le temps de copier les 90Mo (environ) de fichiers. Une fois que le robot a joué le son de fin de mise à jour, et que la clé USB ne clignote plus. Eteindre le robot avec l'interrupteur et débrancher la clé USB.
9 - Voilà, vous pouvez connecter la clé USB à un PC et dans le répertoire "extract" vous aurez les fichiers extraits du robot.
Pour changer les sons (il faut avoir récupéré les fichiers auparavant bien sûr) :
Pensez à garder une sauvegarde des fichiers originaux !!!
Les sons se trouvent dans le répertoire SNDDATA.
Pour les ouvrir/lire, utiliser l'importation "Données brutes/RAW" d'Audacity (par exemple) et choisir :
- signed 16 bit PCM
- mode "petit-boutiste" ou "Little Endian"
- Fréquence d'échantillonage : 16000 Hz
Ensuite, vous pouvez modifier le son à votre guise.
Pour le sauvegarder :
- Fichier -> Exporter
- Choisir le type "Autre format non compressé"
- Cliquer sur "Options" avant de sauver et choisir le type d'en-tête "RAW (header-less)" et l'encodage "Signed 16 bit PCM".
- Sauvegarder
- Renommer le fichier obtenu afin d'avoir le même nom que le fichier à remplacer (SND_CLEANING_ZIGZAG.snd par exemple pour remplacer le son de lancement du nettoyage en mode zigzag)
Déploiement du nouveau son sur le robot :
- A la racine de la clé USB, placer le nouveau fichier SND et créer aussi un fichier "update.sh", toujours à la racine.
- Mettre le code suivant dans le fichier update.sh (à adapter en fonction du fichier son que l'on souhaite mettre à jour)
- Code: Tout sélectionner
#!/bin/sh
#IS_HIT_UPDATE_SCRIPT=1
SOURCE_PATH="/mnt/usb"
aplay -c 1 -r 16000 -f S16_LE /usr/SNDDATA/SND_CLEANING_ZIGZAG.snd
cp -f "$SOURCE_PATH"/SND_CLEANING_ZIGZAG.snd /usr/SNDDATA
aplay -c 1 -r 16000 -f S16_LE /usr/SNDDATA/SND_CLEANING_ZIGZAG.snd
exit 0
- Sortir le robot de sa base, l'éteindre, brancher la clé puis rallumer le robot et appuyer sur Start/Stop.
- Le robot va jouer l'ancien son puis le nouveau son (si la copie a bien été effectuée et que le format du nouveau fichier est correct et lisible par le robot)
- Vous pouvez alors éteindre le robot et sortir la clé. Au prochain déclenchement du son mis à jour, vous devriez entendre la nouvelle version

Les scripts sont bien sûr améliorables (avec des variables par exemples) mais c'était vraiment un premier test.
Il y a dans les fichiers extraits du robot pas mal d'informations disponibles (version du firmware, log du système, statistiques en tout genre etc...). A creuser
