Je m'étais penchée sur ce problème il y a quelque temps pour faire utiliser un Arduino comme manette pour un petit jeu vidéo. Pour moi, mBlock paraissait adapté. Même s'il est conçu pour faire fonctionner un robot de la marque associé, on peut le faire fonctionner avec d'autres cartes Arduino plus classique.
Il faut quand même faire la différence entre deux situations :
Programmer une carte Arduino en utilisant scratch (qui remplace le code de l'IDE)
Faire communiquer un Arduino avec un jeu, une animation... (ex : faire sauter un personnage de l'animation quand on appuie sur un bouton de la manette Arduino)
Ardublock permet (seulement) de programmer une carte Arduino
Mais parfois, tu peux vouloir récupérer le signal de l'Arduino (envoyé sur le port série, avec les valeurs de différents capteurs...) et l'utiliser pour autre chose (ex : une animation, un petit jeu...)