

Voici enfin ce soir la sortie tant attendue de l'application
PyAdaptr permettant d'exploiter le module externe
TI-Python sur ta
TI-83 Premium CE.
Comme cette application le dit si bien si on l'installe de suite, elle nécessite la mise à jour de la calculatrice en version
5.3.5 également disponible ce soir, alors empressons-nous de l'installer.
De numéro de version complet
5.3.5.0024, cet OS
(Operating System soit système d'exploitation) a été compilé très récemment selon les premières lignes de son entête visualisées à l'éditeur hexdécimal, le
7 mars 2019.
Texas Instruments semble donc avoir travaillé d'arrache-pied jusqu'au dernier moment pour t'offrir cette extension des possibilités de ta calculatrice.
Si tu disposes d'une calculatrice concernée par cette protection, notons que la version système minimale autorisée est toujours à
5.3.1 dans ce dernier OS. Tu conserves donc le droit après mise à jour en version
5.3.5 de remettre l'ancienne version
5.3.1.

Pour les utilisateurs qui hors de France disposent du modèle équivalent
TI-84 Plus CE, aucune mise à jour
5.3.5 de l'OS n'a été publiée.
Ce n'est toutefois ni un oubli ni un retard, car si on lance l'application
PyAdaptr sur une
TI-84 Plus CE le message d'erreur ne réclame pas de mise à jour à la différence, mais explique que la programmation
Python n'est pas disponible sur ce modèle.

Maintenant que notre
TI-83 Premium CE est à jour, retournons donc à notre application
PyAdaptr, qui offre un éditeur
Python avec coloration syntaxique ainsi que l'accès à la console du module externe
TI-Python pour l'exécution des scripts.
L'application
PyAdaptr a elle aussi pour numéro de version complet
5.3.5.0024 et a également été compilée le
7 mars 2019 selon l'éditeur hexadécimal.
Tant que nous sommes dans l'éditeur hexadécimal, on y trouve en clair plusieurs messages intéressants :
TI-PYTHON ADAPTER IS NOT NEEDED
TI-Python Adapter is not needed for Python programming on this calculator. Please run Python App v5.3.6 or higher.
Ce message d'erreur confirme si besoin était l'arrivée de la prochaine
TI-83 Premium CE EDITION PYTHON qui n'aura plus besoin d'un module externe pour exécuter des scripts
Python, et utilisera visiblement une nouvelle application
PyAdaptr en version
5.3.6.
Nous y trouvons également le code d'un mystérieux script
handshake.py qui en redéfinissant la fonction
print()
nous en apprend davantage sur la communication entre la calculatrice et le module externe
TI-Python :
- Code: Select all
handshake.py
# Adapter print handshake
_print = print
def print(*args, **kwargs):
import sys
_print(*args, **kwargs)
sys.stdout.write('\x03')
ack = ''
while ack != '\x06':
ack = sys.stdin.read(1)
En effet dans le contexte qui nous intéresse ici, les fonctions
print()
sont exécutées par le processeur du module externe
TI-Python, mais ce dernier ne disposant pas d'écran c'est donc le processeur de la calculatrice qui doit se charger de l'affichage.
Il semble donc qu'après chaque appel à la fonction
print()
le module externe
TI-Python envoie le caractère
ASCII de code 3
(fin de texte) à la calculatrice, et attende que cette dernière ait répondu avec le caractère
ASCII de code 6
(accusé réception) avant de poursuivre l'exécution du script.


Avec pas moins de
338Ko occupés en mémoire de stockage de la calculatrice, c'est de loin l'application la plus grosse !
Cette taille s'explique par le fait que l'application inclut le
firmware (microprogramme) du module externe
TI-Python. L'application vérifie dès son lancement la version du module externe
TI-Python si connecté, le refera également à chaque démarrage de la console
Python, ainsi qu'à chaque déconnexion/reconnexion du module dans cette console, et effectue une mise à jour le cas échéant. C'est donc ce qui arrive ci-contre à notre module initialement en version
3.0.0.0012.

Notre module externe
TI-Python maintenant passé en version
3.0.0.0020, nous pouvons enfin démarrer son utilisation.
En ce qui concerne les capacités du module externe
TI-Python et de son interpréteur
CircuitPython intégré, nous n'allons pas refaire tous les tests ce soir. Nous te renvoyons donc à nos tests des versions
3.0.0.0006 et
3.0.0.0012 ainsi qu'à l'
annonce du correctif de cette dernière.
Si jamais il y avait des changements significatifs, nous en reparlerons de toutes façons dans les prochains jours.Non puisque ce soir nous pouvons enfin utiliser le module externe
TI-Python depuis notre calculatrice
TI-83 Premium CE, concentrons-nous sur cet aspect qui n'avait pas pu être retesté depuis 5 mois.
Créons par exemple un script
TEST et lançons la console
Python. Si nous déconnectons alors brusquement le module externe
TI-Python et le branchons sur un ordinateur, il se comporte comme une clé USB et nous notons dans son espace de stockage la présence d'un fichier
TEST.py. Lorsque l'application
PyAdaptr démarre la console
Python, elle copie donc tous les scripts de la calculatrice vers l'espace de stockage du module.
Mais inversement, si l'on rajoute un script
Python dans l'espace de stockage du module directement depuis l'ordinateur, on ne le retrouve pas une fois le module reconnecté sur la calculatrice, la commande
import
échouant dans la console, alors que cela marchait avec les versions testées précédemment.
Il semble en fait que lorsque l'application
PyAdaptr vérifie la version du module externe
TI-Python, soit au lancement de l'application, au démarrage de la console, ainsi qu'à chaque déconnexion/reconnexion du module pendant que la console est ouverte, elle commence par effacer tous les fichiers présents dans l'espace de stockage du module.



Rajoutons maintenant un script
TEST2 et allons voir ce qui se passe en mémoire. Nous y trouvons nos deux scripts sous la forme de variables d'applications stockées en mémoire de travail.
Notons que contrairement aux autres variables d'applications servant par exemple pour les jeux, ces entrées sont accompagnées du suffixe
PY, ce qui suggère donc un traitement différent quelque part.
Archivons la variable d'application
TEST2 afin de la faire passer en mémoire de stockage et ainsi gagner de la place en mémoire de travail. Et bien mauvaise nouvelle, le script
TEST2 n'est alors plus listé par l'application
PyAdaptr, ne pouvant donc être ni édité ni exécuté.
Tu vas donc devoir laisser tes scripts Python en mémoire de travail et c'est doublement embêtant. Car au-delà de la place occupée, à la différence de la mémoire de stockage cela veut aussi dire qu'ils seront tous perdus si jamais ta calculatrice est par exemple mise à jour, redémarrée avec le bouton reset au dos suite à un plantage, ou encore tombe à court de batterie.Notons que le logiciel de connectivité
TI-Connect CE est lui aussi disponible dans une nouvelle version
5.3.5.924 qui te rajoute la possibilité de transférer directement tes fichiers de script
Python *.py à ta calculatrice, aucun besoin d'un convertisseur dans ce sens donc !


Passons maintenant au mode examen. Sans surprise, avec maintenant une application supplémentaire, il met encore plus de temps à s'activer puisque depuis la version
5.3.1 le démarrage du mode examen revalide toutes les applications.

Si tu conserves toutes les applications officielles en mémoire de stockage, ce n'est plus
1min24s mais maintenant
1min29s que tu devras attendre, ce qui face à l'intégralité de la concurrence fait de la
TI-83 Premium CE la pire solution à ce jour sur ce critère !

Et ne pense pas pouvoir compenser la chose en activant le mode examen à l'avance au BAC 2020 - c'est interdit et assimilable à une tentative de fraude !

Non non, alors que les autres candidats auront pu commencer à travailler dès les premières secondes de l'épreuve, toi tu devras attendre près de 1min30s avant de pouvoir te servir de ta calculatrice !



Bien évidemment, nos scripts
TEST et
TEST2 ont maintenant disparu de l'application
PyAdaptr.
Mais on les retrouve quand même en mémoire ce qui veut dire qu'ils n'ont pas été effacés mais juste bloqués !

A la désactivation du mode examen tu retrouveras donc l'intégralité de tes scripts
Python, ce qui n'était pas le cas lors de nos tests en octobre dernier !

Notons quand même que la variable d'application
Oiram Adventures a pour sa part définitivement disparu.
Voilà donc la distinction que suggérait le suffixe
PY pour les variables d'application utilisables créées par
PyAdaptr ! Au démarrage du mode examen :
- les variables d'application contenant des scripts Python sont verrouillées
- toutes les autres variables d'application (niveaux de jeux notamment) sont définitivement effacées
Nous n'en avons pas terminé avec le mode examen, puisque regarde bien, le module externe
TI-Python clignote !

Nous avions déjà émis quelques doutes sur l'autorisation du module externe
TI-Python aux examens français. En effet, l'ancienne réglementation toujours en vigueur exige un
"fonctionnement autonome", ce qui a déjà été interprété dans les consignes de surveillance en tant qu'interdiction de modules externes.
Mais nous avons aussi la nouvelle réglementation qui autorise les appareils qui clignotent, témoin du bon fonctionnement du mode examen.
Alors finalement le module externe
TI-Python, autorisé ou pas ? En 2019 ou 2020 ? Mystère, nous sommes encore plus confus qu'auparavant.
En tous cas, notons qu'à la différence de la TI-83 Premium CE le module externe TI-Python cesse de clignoter lorsque l'on quitte l'application PyAdaptr, et lorsque l'on éteint la calculatrice. Dans les deux cas, le module s'éteint.
Son clignotement ne serait donc pas régulier contrairement à ce qu'exige la réglementation.


Nous t'avions
déjà dit que le module externe
TI-Python avait été développé par
Texas Instruments à partir d'une carte de développement
Python Adafruit Trinket M0.
Or on note ci-dessus, que c'est la même diode
D1 qui s'allume en vert en temps normal, et clignote en orange en mode examen.
L'une des modifications apportés par
Texas Instruments lors de la conception a donc été le remplacement de la diode témoin de fonctionnement de la
Trinket M0, par une diode visiblement bicolore ou tricolore.

Et terminons justement par un petit mot sur la possibilité de faire tourner le
firmware TI-Python sur d'autres cartes de développement
Python comme
déjà vu.
Dans le cas de notre
Trinket M0 déjà reprogrammée avec le
firmware TI-Python 3.0.0.12, l'application
PyAdaptr semble bien la détecter comme un module externe
TI-Python puisqu'elle accepte de lancer l'écran de mise à jour, mais alors la carte s'éteint et la calculatrice se retrouve bloquée sans que la barre de progression ne soit apparue.

Peut-être est-ce du à la
différence de boot que nous avions remarquée, et peut-être donc qu'il suffirait d'extraire et installer manuellement le nouveau
firmware pour que ça marche
De façon générale, une superbe mise à jour des capacités de ta TI-83 Premium CE, fort bien pensée et travaillée, la plus grande depuis le lancement du modèle en 2015 ! 
Et tout ça rien que pour les programmes scolaires français puisque la TI-84 Plus CE à l'international n'y a pas droit; que d'égards pour notre petit pays ! 
Nous apprécions également l'attention toute particulière encore une fois apportée à la France cette fois-ci dans le contexte spécifique des examens, en rajoutant une diode examen au module externe TI-Python. Le maximum a visiblement été fait, espérons que cela suffise, l'avenir nous le dira.