π
<-
Chat plein-écran
[^]

Module Python BBC micro:bit v2 pour TI-Nspire CX II 5.3

:32tins: :32tinsktpb: :32tinsktpn: :32tinscas: :32tinstpkc: :32tinstpktpb: :32tinstp: :32tinscastp: :32tinscmc: :32tinscx: :32tinscxcas:

Module Python BBC micro:bit v2 pour TI-Nspire CX II 5.3

Message non lude critor » 08 Avr 2021, 14:48

12212Texas Instruments fait de gros efforts pour rendre la programmation de ses calculatrices accessible à tous et toutes. Le constructeur a prêté une attention toute particulière aux plus jeunes et non initiés, souhaitant leur permettre de créer tous les projets imaginables sans avoir à se concentrer sur des difficultés annexes. :)

Sur les calculatrices TI-Nspire CX, TI-83 Premium CE et TI-84 Plus CE, il était possible de connecter l'interface TI-Innovator Hub, le robot pilotable TI-Innovator Rover, la grille programmable TI-RGB Array ou encore l'adaptateur TI-SensorLink pour capteurs analogiques Vernier.
Tous ces éléments ont de plus le gros avantage d'être utilisables directement avec le langage Python des derniers modèles TI-Nspire CX II, TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition, faisant de l'écosystème Texas Instruments le seul Python connecté ! :bj:

Un superbe support pour les enseignements scientifiques au lycée maintenant qu'ils partagent le même langage de programmation, notamment en SNT, spécialité NSI, SI et Physique-Chimie, avec le gros avantage de la mobilité. En effet, les programmes produits et données collectées restent présents dans la calculatrice apportée par chaque élève à chaque cours, ce qui allège la charge logistique de l'enseignant. Données et algorithmes peuvent donc être traités / travaillés à la prochaine séance, en devoir à la maison ou même de façon transdisciplinaire en collaboration avec un autre enseignant ! :D

129591295812957Révolution pour la rentrée 2020, plus besoin de t'équiper en périphériques TI-Innovator pour bénéficier de ces formidables avantages. En effet, les TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition se sont vu rajouter la gestion du nanoordinateur BBC micro:bit programmable en Python dont tu étais peut-être déjà équipé·e ! :bj:

La solution micro:bit de Texas Instruments pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition a initialement été publiée en version française. Fin Mars 2021, le constructeur en publiait enfin une version anglaise.

La carte micro:bit est initialement un projet lancé par la BBC (British Broadcasting Corporation), le groupe audiovisuel public britannique, accompagné de nombre de partenaires dont ARM, Microsoft et Samsung. Elle fut distribuée gratuitement à un million d'élèves britanniques de 11 et 12 ans.

Le nom rend hommage au précédent succès du groupe dans ce domaine, le microordinateur à vocation pédagogique BBC Micro des années 1980, l'équivalent britannique de par son adoption à nos microordinateurs Thomson MO5 et TO7 inondant écoles, collèges et lycées à la fin de cette décennie dans le cadre du plan IPT (Informatique Pour Tous).

12277Les cartes micro:bit utilisent un connecteur micro-USB et ta calculatrice un mini-USB.

Pour relier les deux une solution est d'adjoindre un adaptateur USB A femelle ↔ USB mini-B OTG mâle au câble micro-USB venant avec ta carte micro:bit, testée avec succès.

1296512964Pour moins d'encombrement, tu as aussi la solution d'utiliser un câble direct, un USB micro-B mâle ↔ USB mini-A mâle, disponible par exemple chez Lindy et que nous avons également testé avec succès.

1296212961La carte micro:bit dans sa version 1 présente les caractéristiques et capacités suivantes :
  • processeur 32 bits ARM Cortex-M0 cadencé à 16 MHz
  • mémoire de stockage Flash d'une capacité de 256 Kio
  • mémoire de travail RAM d'une capacité de 16 Kio permettant un heap (tas) Python de 8,24 Ko
  • un afficheur, grille programmable de 5×5= 25 diodes rouges adressables, bien adapté pour l'affichage de motifs éventuellement animés ou encore de texte défilant
  • nombre de capteurs intégrés :
    • capteur de luminosité (lié aux diodes)
    • capteur de température (sur le processeur)
    • 2 boutons poussoirs
      A
      et
      B
      programmables de part et d'autre, comme sur les premières manettes et consoles de jeux portables de chez Nintendo
    • accéléromètre 3D, permettant de détecter les variations d'accélération et par conséquence diverses actions : secouer, pencher, chute libre, ...
    • boussole magnétique 3D, pour détecter cette fois-ci les champs magnétiques
  • connectivité Bluetooth 4.0 basse énergie 2,4 GHz maître/esclave

134501296113451Depuis début 2021 est disponible la nouvelle carte micro:bit v2.

Elle utilise un tout nouveau microcontrôleur, le nRF52833, toujours de chez Nordic Semiconductor. Cette fois-ci nous avons des spécifications qui devraient nous permettre de respirer :
  • processeur 32 bits ARM Cortex-M0 cadencé à 64 MHz au lieu de 16 MHz soit 4 fois plus rapide ! :bj:
  • mémoire de stockage Flash d'une capacité de 512 Kio au lieu de 256 Kio soit 2 fois plus grande ! :bj:
  • mémoire de travail RAM d'une capacité de 128 Kio au lieu de 16 Kio soit 8 fois plus grande ! :bj:

Elle apporte sur cette même face plusieurs nouveautés ou changements :
  • ajout d'un haut-parleur
  • ajout d'un microphone MEMs
  • bouton poussoir qui ne sert plus seulement à la réinitialisation (reset), mais permet désormais également d'éteindre la carte (appui long) et de la rallumer (appui court)
  • l'antenne Bluetooth qui devient compatible BLE Bluetooth 5.0, contre seulement 4.0 auparavant
1344912962D'autres nouveautés ou changements sont également présents sur l'autre face :
  • ajout d'une diode DEL indiquant l'état du microphone
  • ajout d'un bouton tactile sur le logo micro:bit, voici pourquoi il perd sa couleur au profit de contacts métalliques

Précisons que la solution micro:bit de Texas Instruments pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition a été initialement conçue pour la micro:bit v1.

On peut noter que le code conçu pour utiliser un haut-parleur externe connecté à la micro:bit v1, voit sa sortie audio automatiquement redirigée vers le nouveau haut-parleur intégré dans le cas d'une micro:bit v2.

Mais en dehors de cette bonne surprise, les fonctions aux menus ne te permettent pas à ce jour d'exploiter directement les autres nouveaux éléments de la micro:bit v2.

13175La solution micro:bit de Texas Instruments pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition a un principe de fonctionnement très simple, mais non moins ingénieux pour autant. Comme la carte micro:bit fait tourner un interpréteur Python, les fonctions aux menus micro:bit de ta calculatrice envoient simplement chacune à la carte du code Python à exécuter.

Elles semblent utiliser en interne la fonction ti_hub.send(), et nous avions vu que nous pouvions également l'utiliser directement afin de faire exécuter du code Python arbitraire à la micro:bit, exploitant ainsi depuis la calculatrice des possibilités disponibles dans le Python micro:bit mais non offertes aux menus de la calculatrice ! :bj:
Code: Tout sélectionner
from ti_hub import *

def mb_run(code):
  send('\x05') # enter paste mode (Ctrl-E)
  send(code)
  send('\x04') # exit paste mode (Ctrl-D)

13179Or depuis la version 5.2 les TI-Nspire CX II disposent elles aussi d'un interpréteur Python, et entre autres du module ti_hub. Et nous avions également vu qu'il permettait lui aussi de façon similaire le contrôle d'une carte micro:bit.

Le problème étant juste qu'il n'y avait ici aucun menu déjà à la micro:bit, il fallait saisir intégralement le code à la main.

Aucune annonce officielle alors, mais après la sortie donc d'une version anglaise internationale de la solution micro:bit pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition, et après donc l'intégration en cachette du support micro:bit sur TI-Nspire CX II, on pouvait s'attendre à la sortie rapide d'une solution micro:bit complète pour TI-Nspire CX II.

Justement la semaine dernière sortait la mise à jour 5.3 pour TI-Nspire CX II avec des nouveautés Python.

Elle n'incluait aucun menu relatif à la carte micro:bit.

Toutefois, sur TI-Nspire CX II il était déjà possible d'installer des modules Python additionnels, rien qu'en copiant leurs fichiers dans le dossier /PyLib/. De nouvelles entrées aux menus permettaient ici d'automatiser cette manipulation.

Mais surtout, grande nouveauté, les menus Python dynamiques. En effet nos modules Python additionnels ainsi installés étaient automatiquement rajoutés aux menus des fonctions Python ! :bj:

Par contre, contrairement aux modules Python intégrés, les menus de nos propres modules ne listaient chacun que leur seule commande d'importation. Nous supposions qu'il y avait une syntaxe ou des mots-clés particuliers à utiliser dans leur code afin de faire apparaître tout ou partie de leurs fonctions au menu.

Grand événement aujourd'hui, Texas Instruments nous publie une nouvelle solution micro:bit mais cette fois-ci pour TI-Nspire CX II ! :bj:

La solution comporte 2 éléments :
  • le TI-Runtime 2.6 à copier sur la carte micro:bit afin de lui permettre d'être pilotée par la calculatrice
  • et un classeur avec justement un premier module Python additionnel officiel, microbit

Cette fois-ci sa nouvelle entrée au menu comporte bien d'autres choses que la seule commande d'importation, des fonctions organisées selon divers sous-menus. Nous n'en apprendrons toutefois pas davantage aujourd'hui sur la création de tels menus, car le code source n'est tout simplement pas visible dans le fichier.

Mais nous allons quand même en explorer les différentes possibilités avec toi.

Notons déjà que le classeur comporte un onglet détaillant l'installation du module, et indiquant que ce dernier est en version 2.34.

Précisons de plus qu'il est utilisable avec une carte micro:bit connectée en USB aussi bien sur ta calculatrice TI-Nspire CX II, que sur ton ordinateur avec le logiciel TI-Nspire CX.
Si l'on consulte déjà le menu Commands, on y trouve diverses choses utiles : des éléments provenant des modules Python intégrés, des formes prédéfinies, ainsi que de quoi vider la console Python.

Mais nous avons déjà 2 fonctions spécifiques, version() et help().

version() nous confirme donc que le module microbit est en version 2.34, mais fait bien plus que cela. Elle indique également si la carte connectée est une micro:bit v1 ou micro:bit v2.

Elle indique également un TI-Runtime en version 2.5, mais il s'agit peut-être plutôt de la version minimale compatible attendue. En effet notre carte fait tourner le TI-Runtime 2.6.

13701Déjà, nous retrouvons aux menus l'ensemble des possibilités de la solution micro:bit pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition :
  • Le sous-menu Display permet de contrôler l'afficheur à 5×5=25 LEDs rouges intégré à la micro:bit.

    Nous remarquons par contre qu'il y a ici beaucoup plus d'images prédéfinies au menu par rapport à la solution pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition. Au lieu de 25 images, nous nous en voyons proposer 44 : :D


    Les images existant dans le Python micro:bit mais rajoutées ici aux menus sont réunies dans SET 4.

    Nous avons également ici un ajout exclusif n'existant ni dans le Python micro:bit ni dans la solution micro:bit pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition, une image TI LOGO à la fin de SET 2.
  • Le sous-menu Music permet de façon unifiée de contrôler aussi bien un haut-parleur externe connecté à la micro:bit v1 que le haut-parleur interne de la micro:bit v2, afin de jouer des mélodies.

    On retrouve en intégralité les 21 mélodies prédéfinies dans le Python micro:bit et qui étaient ici déjà proposées dans la solution micro:bit pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition.
  • Le sous-menu Radio permet la transmission/réception de données sans fil via l'antenne BLE (Bluetooth Low Energy) intégrée à la micro:bit.
  • Le sous-menu I/O Pins permet de contrôler directement les contacts programmables de la micro:bit, aussi bien en entrée qu'en sortie et en digital qu'en analogique.

    Comme dans la solution micro:bit pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition sont mis en avant 6 contacts : pin0, pin1, pin2, pin14, pin15 et pin16.
    13709
  • Le sous-menu Grove Devices quant à lui permet de contrôler des modules Grove à connecter à la micro:bit via une interface comme par exemple le Grove Shield for micro:bit :
    137061370713708


    Quant au détail des modules Grove gérés, on trouve entre autres :
    • pour les capteurs Grove : température, luminosité, humidité, pression et distance (sonar)
    • pour les actionneurs Grove : relais et servomoteur
  • Le sous-menu NeoPixel permet pour sa part le pilotage de rubans de LEDs RGB adressables.

Mais on se rend compte que la solution micro:bit pour TI-Nspire CX II va beaucoup plus loin que la précédente solution pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition.

Prenons par exemple le sous-menu Sensors, qui permet en ce qui le concerne de gérer les capteurs intégrés à la carte micro:bit. Nous y retrouvons certes de quoi interroger le capteur de température, l'accéléromètre 3D ainsi que la boussole 3D.

Mais ajout majeur ici, tu peux directement détecter des types de mouvements sans faire de calculs 3D complexes : shake (secouer), face up (tourner vers le haut), face down (tourner vers le bas), right (à droite) et left (à gauche) ! :bj:

Et cerise sur le gâteau, on se rend vite compte que contrairement à l'actuelle solution micro:bit pour TI-83 Premium CE Edition Python et TI-84 Plus CE Python Edition, la solution micro:bit pour TI-Nspire CX II dispose d'une gestion spécifique des nouvelles capacités de la micro:bit v2 ! :D

  • Le sous-menu Buttons and Logo Touch permet comme son nom l'indique d'interroger boutons A et B intégrés à toutes les micro:bit.

    Mais comme son nom l'indique également, il permet aussi d'interroger le bouton tactile présent sur le logo de la micro:bit v2 ! :bj:
  • Le menu Audio and Microphone te permet de jouer non plus des mélodies mais des effets sonores, une fonctionnalité spécifique à la micro:bit v2 ! :bj:

    L'intégralité des 10 effets sonores prédéfinis dans le Python micro:bit v2 sont présents.

    Et ce même sous-menu te permet également d'interroger le microphone intégré à la micro:bit v2.

Sources : https://education.ti.com/fr/enseignants/microbit

Téléchargements :
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.4%
 
Messages: 41455
Images: 14353
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Retourner vers News TI-Nspire

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 37 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
734 utilisateurs:
>700 invités
>29 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)