Table des matières

Conversion Blockly@rduino → µcBlockly

Ce document décrit le script npm run convert-rduino, qui transforme une sauvegarde Blockly@rduino (XML / .B@) en workspace JSON chargeable dans µcBlockly.

Usage

npm run convert-rduino -- <fichier-entree> [fichier-sortie.json]

Exemple :

npm run convert-rduino -- chemin/vers/projet.xml out/workspace.json

Exemple (si le dépôt voisin Blockly@rduino est présent, comme pour les tests) :

npm run convert-rduino -- ../Blockly-at-rduino/examples/blink/blink.xml out/workspace.json

Comportement

Cas Traitement
Blocs Arduino de base Mappés vers les types µcBlockly via scripts/lib/rduino-block-map.mjs
Blocs « définitions » orange (base_define_bloc) Dépliés en blocs racine
Piles sans setup / loop Enveloppées dans board_base_setup_loop (corps loop) sauf si UCB_NO_WRAP=1
Extensions (Grove, mBot, TechnoZone, …) Conservées sous leur nom d’origine si non mappées — peuvent ne pas charger ; voir unmappedBlockTypes dans la sortie

Variable d'environnement

UCB_NO_WRAP=1 npm run convert-rduino -- projet.xml out.json

Ne pas envelopper les blocs orphelins dans setup/loop.

Fichiers concernés

Fichier Rôle
scripts/convert-rduino-workspace.mjs Point d’entrée CLI
scripts/lib/rduino-block-map.mjs Table de correspondance des types de blocs
scripts/lib/rduino-xml-to-ucb-json.mjs Parsing XML → JSON workspace
tests/rduino-convert.test.ts Tests (blink, analogique, Starter_Kit_prj7)

Limites connues

Voir aussi