Colorie les Aventures de Yolande est disponible
- Détails
Yolande revient dans un nouveau format : Colorie les Aventures de Yolande.

Après les petits livres illustrés, la petite voiture violette prend une nouvelle route avec un livre de coloriage pensé pour les jeunes enfants.
Dans ce livre, les enfants peuvent retrouver Yolande dans plusieurs scènes en noir et blanc à colorier eux-mêmes.
Les dessins sont simples, lisibles, avec des contours clairs et de grandes zones à colorier.
Chaque dessins est accompagné d'un petit défi à réaliser.
L’idée est de proposer un moment doux et amusant, où chacun peut donner ses propres couleurs à l’univers de Yolande.
Même en noir et blanc, Yolande garde son petit caractère.
Colorie les Aventures de Yolande est maintenant disponible :
Les Aventures de Yolande
- Détails
Découvrez les Aventures de Yolande.
Deux livres illustrés basés sur le quotidien d'une petite voiture violette et de sa conductrice.

Karotz vous souhaîte une bonne année
- Détails
2026 : Le Karotz est toujours là !
Quatorze ans après l'arrêt des serveurs officiels, notre lapin connecté préféré refuse de rendre les oreilles.
Pendant que d'autres objets connectés finissent à la déchetterie dès que leur fabricant ferme boutique, le Karotz continue de vivre sa meilleure vie grâce à une communauté de passionnés qui n'a jamais baissé les bras.
Pour fêter cette nouvelle année, mon Karotz Sylar a tenu à vous adresser ses vœux... à sa manière.
Réveil difficile, souvenirs flous du réveillon et bonnes résolutions qu'il ne tiendra probablement pas : tout y est, même le taichi !
Preuve que même en 2026, avec un peu de bidouille et beaucoup d'amour, ces petits lapins ont encore des choses à dire !
Bonne année à tous les Karotz et à leurs propriétaires ! 🐰
Je vous invite à visionner la vidéo sur Youtube :
.
Les services réseau
- Détails
Après avoir exploré le cœur du système et les outils disponibles, il est temps de s'intéresser à ce qui fait du Karotz un objet véritablement connecté : Ses services réseau.
Comment accéder au lapin à distance ?
Quels ports sont ouverts ?
Quels serveurs tournent en arrière-plan ?
Et surtout, qu'est-ce que tout cela implique en termes de sécurité sur votre réseau local ?
Découverte des ports ouverts
Une fois connecté en telnet, la commande netstat révèle les ports en écoute :
netstat -tlnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6600 0.0.0.0:* LISTEN 1309/mpd
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1242/inetd
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1242/inetd
tcp 0 0 0.0.0.0:23 0.0.0.0:* LISTEN 1242/inetd
netstat: /proc/net/tcp6: No such file or directory
Quatre ports ouverts :
| Port | Service | Géré par | Description |
|---|---|---|---|
| 21 | FTP | inetd | Transfert de fichiers |
| 23 | Telnet | inetd | Shell à distance |
| 80 | HTTP | inetd | Interface web |
| 6600 | MPD | mpd | Lecteur musical (clef USB) |
Les outils réseau disponibles
La commande busybox --list révèle les outils réseau intégrés :
busybox --list | grep -E "^(ping|wget|nc|telnet|ftp|nslookup|traceroute|ifconfig|netstat|arp|route)$"
arp
ifconfig
nc
netstat
nslookup
ping
route
telnet
traceroute
wget
En plus de BusyBox, le Karotz dispose également de binaires compilés séparément dans /usr/bin/ :
Testons quelques outils :
ping -c 2 google.com
PING google.com (64.233.167.102): 56 data bytes
64 bytes from 64.233.167.102: seq=0 ttl=108 time=21.848 ms
64 bytes from 64.233.167.102: seq=1 ttl=108 time=21.400 ms
--- google.com ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 21.400/21.624/21.848 ms
curl -k https://www.miniil.be 2>&1 | head -10
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (35) error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version
OpenSSL 1.0.0b (2010) ne supporte que TLS 1.0. Les serveurs modernes qui exigent TLS 1.2+ sont inaccessibles même si on contourne la verification du certificat avec l'option -k. HTTPS fonctionne uniquement avec les serveurs qui acceptent encore TLS 1.0, et sans vérification de certificat.
Toutes les communications réseau du Karotz passent donc essentiellement en clair. Sur un réseau local domestique, ce n'est pas réellement un problème mais si votre Karotz est exposé à Internet le risque est bien réel.
inetd : le chef d'orchestre
Sur le Karotz, les services réseau ne tournent pas en permanence. C'est inetd (internet daemon) qui écoute sur les ports et lance le service approprié uniquement quand une connexion arrive.
Cette approche économise la mémoire précieuse sur un système embarqué avec seulement 60 Mo de RAM.
inetd est lancé au démarrage via /etc/inittab :
cat /etc/inittab | grep inetd
::respawn:/sbin/inetd -f /usr/etc/inetd.conf
Le fichier /usr/etc/inetd.conf définit les services :
cat /usr/etc/inetd.conf
# <service_name> <sock_type> <proto> <flags> <user> <server_path> <args>
21 stream tcp nowait root /bin/busybox ftpd -w /
23 stream tcp nowait root /bin/busybox telnetd -i
80 stream tcp nowait root /bin/busybox httpd -i -c /karotz/etc/httpd.conf -h /usr/www
Analysons une ligne :
| Champ | Valeur | Signification |
|---|---|---|
| Port | 21 | Port d'écoute |
| Type | stream | Connexion TCP (vs dgram pour UDP) |
| Proto | tcp | Protocole |
| Flags | nowait | Peut gérer plusieurs connexions simultanées |
| User | root | Utilisateur qui exécute le service |
| Commande | /bin/busybox ftpd -w / | Programme à lancer |
Les trois services sont fournis par BusyBox :
- ftpd (
-w /) — serveur FTP avec accès en écriture sur/ - telnetd (
-i) — serveur Telnet lancé par inetd - httpd (
-i -c ... -h ...) — serveur HTTP, racine dans/usr/www
Dropbear : le SSH dormant
Le Karotz embarque Dropbear, un serveur SSH léger pour systèmes embarqués.
which dropbear
/bin/dropbear
Cependant, il n'est pas activé par défaut. Le répertoire de configuration est vide :
ls -la /etc/dropbear/
total 4
drwxr-xr-x 1 root root 2048 Jan 1 1970 .
drwxr-xr-x 1 root root 2048 May 9 2011 ..
Techniquement, il serait possible de l'activer : générer les clefs avec dropbearkey, les stocker sur une partition persistante (/usr/), et lancer Dropbear au démarrage avec l'option -r pour spécifier leur emplacement.
Mais est-ce vraiment nécessaire ? Telnet fait le travail sur un réseau local, et ajouter un service SSH consommerait des ressources sur un système déjà limité avec 60 Mo de RAM.
MPD : le lecteur musical
Le port 6600 est occupé par MPD (Music Player Daemon). C'est un serveur de lecture audio qui permet de jouer des fichiers MP3 depuis une clef USB branchée sur le Karotz.
MPD n'est pas actif par défaut. Une fois configuré, il peut être contrôlé :
- Localement via netcat
- À distance via des clients MPD (M.A.L.P. sur Android, ncmpcpp sur PC, ...)
- Via l'interface web de miniil's OpenKarotz
Conclusion
Le Karotz dispose donc de plusieurs services réseau : Telnet, FTP et HTTP via inetd et MPD pour la musique.
Dropbear (SSH) est présent mais non configuré.
Toutes ces communications passent en clair, il n'y a pas de HTTPS côté serveur, pas de SSH actif, et le client HTTPS est limité à TLS 1.0.
Sur un réseau local domestique, ce n'est pas un problème. Mais quand le lapin est exposé sur Internet, le risque est présent.
Et si on améliorait la sécurité en ajoutant HTTPS au serveur web du Karotz ?
Je tenterai cela prochainement et ceci fera l'objet d'un prochain article.
Exploration de l'environnement Python du Karotz
- Détails
Quel est l'environnement Python disponible ?
python -c "import sys; print sys.version"
2.4.5 (#1, Mar 29 2012, 10:34:03)
[GCC 4.3.5]
Karotz dispose donc sur d'un environnement Python 2.4.5 compilé le 29 mars 2012 avec GCC 4.3.5 (GNU Compiler Collection ou le compilateur utilisé à l'époque pour transformer le code source Python en binaire exécutable pour le processeur ARM920T du Karotz). D'après mes recherches l'environnement Python était disponible d'origine sur Karotz, il ne s'agit pas d'un ajout de OpenKarotz. Mais certaines bibliothèques ont peut être été ajoutées.

Quels sont les modules disponibles ?
ls /usr/lib/python2.4/
Cet environnement Python dispose d'une belle bibliothèque standard :
Réseau & Web :
urllib.py,urllib2.py,urlparse.py- Requêtes HTTPhttplib.py- Client HTTP bas niveauftplib.py- Client FTPsocket.py- Sockets réseauBaseHTTPServer.py,SimpleHTTPServer.py,CGIHTTPServer.py- Serveurs HTTPxmlrpclib.py,SimpleXMLRPCServer.py- XML-RPCcookielib.py- Gestion cookies
Données :
simplejson- JSONcsv.py- Fichiers CSVxml- Parsing XMLConfigParser.py- Fichiers de configpickle.py- Sérialisation objets
Système :
os.py- Interaction systèmesubprocess.py- Exécution commandes externesshutil.py- Opérations fichiersthreading.py- Multi-threadingtempfile.py- Fichiers temporairesgzip.py,tarfile.py,zipfile.py- Compression
Utilitaires :
re.py- Expressions régulièresrandom.py- Nombres aléatoiresbase64.py- Encodage base64email- Gestion emails
Un détail intéressant est que simplejson (2.0.7) a probablement été intégré par Mindscape dans le firmware car il ne fait pas partie des modules natifs de Python 2.4 (arrivé seulement avec Python 2.6). Mindscape l'a probablement intégré car le lapin devait communiquer en JSON avec leurs serveurs.
Il existe également des modules compilés.
ls /usr/lib/python2.4/lib-dynload/
Voici quelques modules intérressants à citer :
| Module | Intérêt pour le Karotz |
_socket.so |
Essentiel pour les communications réseau. |
zlib.so |
Compression. |
pyexpat.so |
Parsing XML rapide. |
select.so |
Pour gérer plusieurs connexions simultanées. |
md5.so, sha.so |
Vérification de l'intégrité. |
datetime.so |
Gestion du temps. |
cPickle.so |
Sauvegarde rapide d'états/configurations. |
On peut déjà remarquer l'absence de modules qui auraient pu être utiles : Aucun module pour des connexions sécurisées (ssl), pour des bases de données, pour des appels directs aux librairies C.
Espace disque
Combien de place prend cet environnement Python sur le lapin ?
du -sh /usr/lib/python2.4/
8.5M /usr/lib/python2.4/
# Espace disque disponible-bash-4.1# df -h
Filesystem Size Used Available Use% Mounted on
/dev/root 7.7M 7.7M 0 100% /
none 29.4M 0 29.4M 0% /dev
/dev/mtdblock6 234.0M 84.3M 149.7M 36% /usr
tmpfs 29.4M 0 29.4M 0% /dev/shm
On dispose de plusieurs dizaines de Mo sur /usr. C'est déjà à cet endroit que Python est installé. Un upgrade serait donc techniquement possible.
Un upgrade serait-il intéressant ?
J'utilise depuis peu Python pour beaucoup de développements dans mes projets personnels. C'est un language que j'aime bien utiliser et qui permet beaucoup de choses.
Dans l'environnement actuel du Karotz, il y a quand même certaines choses qui manquent :
- Pas de
withstatement - Un syntaxe ancienne pour la gestion des exceptions notamment
- Pas de compréhension des dictionnaires
- Pas de
format()moderne (Exemple :f"Hello {name}").
Passer à Python 2.7 (la dernière version stable de Python 2) apporterait déjà le with, le json natif, la compréhension des dictionnaires, le format(). La compatibilité des scripts existants serait probablement assurée mais à vérifier.
Passer à Python 3 pourrait évidemment être intéressant mais c'est beaucoup plus risqué au niveau de la compatibilité des scripts existants, la cross-compilation serait certainement complexe et au niveau de l'espace disque il est probable que ce soit aussi plus lourd.
Mon choix se porterait donc logiquement sur Python 2.7 qui donnerait un petit coup de jeune à mon Karotz.
Il faudrait donc :
- Cross-compiler Python 2.7 pour l'architecture ARM920T.
- Vérifier les bibliothèques dont Python a besoin et les cross-compiler aussi.
- Optionnel : Compiler OpenSSL pour avoir HTTPS
- Vérifier la taille nécessaire.
- Transférer les binaires sur
/usret configurer les liens symboliques - Tester si tout fonctionne
Est-ce que vous avez déjà étudié la question ?
Que pensez-vous d'un upgrade de Python pour le Karotz, est-ce que cela vous semble utile ?
Page 1 sur 5
