Nouvel Upsilon 1.0.1 pour NumWorks N0100/N0110
Posted: 30 Nov 2022, 13:09
La calculatrice NumWorks était initialement un formidable projet de machine ouverte.
Le développement tiers a pu s'y hisser à un niveau jamais atteint sur la concurrence, et permettre l'émergence d'un projet formidable, Omega par Quentin Guidee et ses non moins illustres collaborateurs.
Il s'agit d'un firmware alternatif pour ta calculatrice NumWorks. Basé sur le code source du firmware officiel Epsilon 15.5 comme la licence l'y autorisait jusqu'alors, Omega avait pour but de regrouper et mettre en avant les meilleures contributions au code d'Epsilon, en incluant cette fois-ci celles laissées de côté par le constructeur.
Difficile de tout citer ici mais voici déjà par exemple un des fantastiques ajouts d'Omega. Contrairement à l'ensemble de ses concurrentes de milieu de gamme, la NumWorks travaille en interne sur des arbres de calcul, une technique qui permet le calcul littéral. Toutefois elle les bridait artificiellement pour n'accepter que des valeurs numériques, empêchant donc tout calcul littéral. Omega à la différence autorise ces arbres à utiliser des lettres / inconnues, ce qui te donne ainsi un moteur de calcul littéral. De quoi même dériver à seulement 80€, des fonctionnalités que la concurrence réserve usuellement aux modèles haut de gamme avec des prix à 3 chiffres !
Citons aussi un tableau périodique des éléments, ou encore la possibilité d'avoir une bibliothèque de constantes physiques avec unités bien avant que ce ne soit disponible dans le firmware officiel.
Outre ce qu'il intègre, Omega offre également l'avantage de pouvoir installer à chaud des applications, fonctionnalité jusqu'alors absente du firmware officiel Epsilon. Plusieurs applications de très haute facture furent développées, on peut citer entre autres :
Les fonctionnalités du firmware Omega ont été reprises par la suite pour plusieurs forks, les firmwares Upsilon et Khi, ce dernier par nul autre que Bernard Parisse en personne.
Un gros avantage de plus est ici que KhiCAS et l'ensemble des fonctionnalités rajoutées restent accessibles en mode examen, de façon parfaitement légale et légitime en France, puisque ces fonctionnalités ne sont pas des données et viennent de plus directement intégrées à des modèles concurrents haut de gamme parfaitement autorisés.
Depuis que NumWorks a unilatéralement et sans raison déclaré de fait la guerre à sa communauté de développeurs, pour survivre les équipes de bénévoles derrière les trois grands firmwares tiers se sont réparti les tâches :
Le développement tiers a pu s'y hisser à un niveau jamais atteint sur la concurrence, et permettre l'émergence d'un projet formidable, Omega par Quentin Guidee et ses non moins illustres collaborateurs.
Il s'agit d'un firmware alternatif pour ta calculatrice NumWorks. Basé sur le code source du firmware officiel Epsilon 15.5 comme la licence l'y autorisait jusqu'alors, Omega avait pour but de regrouper et mettre en avant les meilleures contributions au code d'Epsilon, en incluant cette fois-ci celles laissées de côté par le constructeur.
Difficile de tout citer ici mais voici déjà par exemple un des fantastiques ajouts d'Omega. Contrairement à l'ensemble de ses concurrentes de milieu de gamme, la NumWorks travaille en interne sur des arbres de calcul, une technique qui permet le calcul littéral. Toutefois elle les bridait artificiellement pour n'accepter que des valeurs numériques, empêchant donc tout calcul littéral. Omega à la différence autorise ces arbres à utiliser des lettres / inconnues, ce qui te donne ainsi un moteur de calcul littéral. De quoi même dériver à seulement 80€, des fonctionnalités que la concurrence réserve usuellement aux modèles haut de gamme avec des prix à 3 chiffres !
Citons aussi un tableau périodique des éléments, ou encore la possibilité d'avoir une bibliothèque de constantes physiques avec unités bien avant que ce ne soit disponible dans le firmware officiel.
Outre ce qu'il intègre, Omega offre également l'avantage de pouvoir installer à chaud des applications, fonctionnalité jusqu'alors absente du firmware officiel Epsilon. Plusieurs applications de très haute facture furent développées, on peut citer entre autres :
- KhiCAS, une formidable application intégrée de Mathématiques et de Sciences par Bernard Parisse, enseignant-chercheur à l'Université de Grenoble, qui étendait gratuitement les capacités de ta calculatrice au niveau d'une HP Prime. L'application intègre le moteur de calcul formel GIAC développé pour le logiciel Xcas du même auteur pour des possibilités en calcul encore plus étendues. Étaient également inclus un tableur, gros manque du firmware officiel, une bibliothèque de constantes physiques, un convertisseur d'unités, un tableau périodique des éléments et bien d'autres choses encore. Le tout est en prime programmable en Python, avec une collection de bibliothèques importables bien plus étoffée que celle de l'application Python officielle, et surtout ici de façon intégrée, tes scripts Python pouvant en effet faire appel au moteur de calcul formel GIAC par l'intermédiaire du module cas.
- Nofrendo, un émulateur de console de jeux Nintendo NES par zardam
- Peanut-GB, un émulateur de console de jeux Nintendo GameBoy par M4x1m3
- Periodic, un tableau périodique des éléments par M4x1m3
Les fonctionnalités du firmware Omega ont été reprises par la suite pour plusieurs forks, les firmwares Upsilon et Khi, ce dernier par nul autre que Bernard Parisse en personne.
Un gros avantage de plus est ici que KhiCAS et l'ensemble des fonctionnalités rajoutées restent accessibles en mode examen, de façon parfaitement légale et légitime en France, puisque ces fonctionnalités ne sont pas des données et viennent de plus directement intégrées à des modèles concurrents haut de gamme parfaitement autorisés.
Mais voilà, après un simulacre de prise en compte de l'avis de sa communauté, à la rentrée 2021 le constructeur NumWorks a introduit un verrouillage extrême de ses calculatrices N0110 avec la mise à jour 16.3 d'Epsilon.
Toute N0110 mise à jour ou venant préchargée d'une version 16.3 ou supérieure, comprend un chargeur de démarrage censé être non effaçable, empêchant l'installation de tout firmware non correctement signé par le constructeur, c'est-à-dire entre autres de tout firmware tiers (Omega, Upsilon, Khi, ...).
Par conséquent, cela t'empêche également de bénéficier des applications additionnelles persistantes en mémoire Flash et en mode examen (logiciel intégré de Mathématiques avec moteur ce calcul formel KhiCAS, émulateurs Nintendo Game Boy et NES, tableau périodique des éléments, ...).
Dans sa volonté de tuer tous les projets firmwares tiers, le constructeur est même allé jusqu'à révoquer la licence ouverte de son firmware Epsilon. Les développeurs des firmwares tiers n'ont depuis plus le droit d'en réutiliser le code des dernières nouveautés, et les firmwares en question restent basés sur le code d'Epsilon 15.5, la dernière version sortie sous licence ouverte. Passer outre serait s'exposer à des poursuites, le constructeur NumWorks étant très prompt à menacer, un quasi réflexe chez eux révélant une façon toxique de fonctionner.
En effet, cela mettait en conséquence l'utilisateur final devant un cruel dilemme :
Toute N0110 mise à jour ou venant préchargée d'une version 16.3 ou supérieure, comprend un chargeur de démarrage censé être non effaçable, empêchant l'installation de tout firmware non correctement signé par le constructeur, c'est-à-dire entre autres de tout firmware tiers (Omega, Upsilon, Khi, ...).
Par conséquent, cela t'empêche également de bénéficier des applications additionnelles persistantes en mémoire Flash et en mode examen (logiciel intégré de Mathématiques avec moteur ce calcul formel KhiCAS, émulateurs Nintendo Game Boy et NES, tableau périodique des éléments, ...).
Dans sa volonté de tuer tous les projets firmwares tiers, le constructeur est même allé jusqu'à révoquer la licence ouverte de son firmware Epsilon. Les développeurs des firmwares tiers n'ont depuis plus le droit d'en réutiliser le code des dernières nouveautés, et les firmwares en question restent basés sur le code d'Epsilon 15.5, la dernière version sortie sous licence ouverte. Passer outre serait s'exposer à des poursuites, le constructeur NumWorks étant très prompt à menacer, un quasi réflexe chez eux révélant une façon toxique de fonctionner.
En effet, cela mettait en conséquence l'utilisateur final devant un cruel dilemme :
- soit verrouiller sa machine en mettant à jour sur le firmware Epsilon pour bénéficier de toutes les dernières nouveautés officielles, mais en contrepartie renoncer aux nouveautés et spécificités des firmwares tiers, et peut-être définitivement si aucune faille n'est trouvée
- soit rester sur un firmware tiers, mais en contrepartie se priver des dernières nouveautés officielles
Depuis que NumWorks a unilatéralement et sans raison déclaré de fait la guerre à sa communauté de développeurs, pour survivre les équipes de bénévoles derrière les trois grands firmwares tiers se sont réparti les tâches :
- chez Omega, on semble se concentrer sur l'analyse et le contournement des sécurité officielles, avec les bootloaders tiers qui permettent non seulement de déverrouiller ta machine, mais gèrent de plus un dualboot offrant la possibilité de basculer à tout moment entre 2 firmwares installés sur ta machine et donc de profiter du meilleurs des deux mondes : à la fois les spécificités et dernières nouveautés d'un firmware tiers au choix, et les dernières nouveautés du firmware officiel Epsilon !
- chez Upsilon, on semble se concentrer sur le développement de nouvelles fonctionnalités
- chez Khi enfin, on semble se concentrer sur l'amélioration de la formidable application de Mathématiques intégré KhiCAS avec calcul formel
Aujourd'hui c'est donc plutôt fonctionnalités dont nous allons te parler, car le firmware Upsilon bénéficie d'une nouvelle mise à jour. Après plusieurs versions de développement testées entre temps.
Nous passons de la version stable 1.0.0 que nous t'avions annoncée début Mai 2022 à la version stable 1.0.1.
Nous passons de la version stable 1.0.0 que nous t'avions annoncée début Mai 2022 à la version stable 1.0.1.
1) Application Paramètres
Go to topFaisons déjà connaissance en ouvrant l'application Paramètres. Upsilon passe donc comme déjà dit de la version 1.0.0 à la version 1.0.1.
Upsilon étant comme déjà dit un fork d'Omega, notons une évolution à ce sujet :
Par contre le code d'Upsilon continue à se baser sur celui du vieillissant firmware officiel Epsilon en version 15.5.0 (printemps 2021), faute de pouvoir faire autrement.
Du nouveau également avec l'interpréteur Micropython dont nous reparlerons plus loin :
Upsilon étant comme déjà dit un fork d'Omega, notons une évolution à ce sujet :
- Upsilon 1.0.0 se basait sur Omega 2.0.0
- Upsilon 1.0.1 se base maintenant sur Omega 2.0.2
Par contre le code d'Upsilon continue à se baser sur celui du vieillissant firmware officiel Epsilon en version 15.5.0 (printemps 2021), faute de pouvoir faire autrement.
Du nouveau également avec l'interpréteur Micropython dont nous reparlerons plus loin :
- Upsilon 1.0.0 intégrait Micropython 1.17.0
- Upsilon 1.0.1 intègre maintenant Micropython 1.19.1
2) Transversal
Go to topJetons déjà un coup d'oeil aux nouveautés transversales aux différentes applications.
Tu viens peut-être déjà de le remarquer au point précédent, Upsilon 1.0.1 utiliser une toute nouvelle police de caractères. Le trait en est plus épais et offre une lisibilité hautement plus agréable.
Notons que si les développeurs Upsilon ne peuvent pas reprendre le code des nouveautés apportées par Epsilon, rien ne les empêche de recoder entièrement des nouveautés similaires.
Et c'est le cas, Upsilon t'offre maintenant une touche
Et il serait justement fort déplacé que NumWorks ait le culot de se permettre la moindre réflexion, alors qu'ils ont repris sans les créditer correctement plusieurs fonctionnalités des firmwares tiers lors de leur dernière mise à jour Epsilon 19.
Justement parmi les fonctionnalités des firmwares tiers que NumWorks vient de s'auto-attribuer, citons les raccourcis pour lancer rapidement les applications sans avoir à s'échiner sur la peu confortable croix directionnelle. Les applications étant affichées sur 3 colonnes, les raccourcis utilisaient de façon fort intuitive le pavé numérique avec de haut en bas aussi bien sur le clavier qu'à l'écran :
Enfin, la boîte à outils transversale appelée par la touche
Upsilon 1.0.1 améliore la lisibilité avec une écriture plus grande.
Dans le cas où cela fait déborder les intitulés plus larges, un défilement automatique de la sélection est même prévu :
Tu viens peut-être déjà de le remarquer au point précédent, Upsilon 1.0.1 utiliser une toute nouvelle police de caractères. Le trait en est plus épais et offre une lisibilité hautement plus agréable.
Notons que si les développeurs Upsilon ne peuvent pas reprendre le code des nouveautés apportées par Epsilon, rien ne les empêche de recoder entièrement des nouveautés similaires.
Et c'est le cas, Upsilon t'offre maintenant une touche
x,n,tcyclique comme dans Epsilon ; des appuis successifs sur
x,n,talterneront la saisie entre x, n, t et θ.
Et il serait justement fort déplacé que NumWorks ait le culot de se permettre la moindre réflexion, alors qu'ils ont repris sans les créditer correctement plusieurs fonctionnalités des firmwares tiers lors de leur dernière mise à jour Epsilon 19.
Justement parmi les fonctionnalités des firmwares tiers que NumWorks vient de s'auto-attribuer, citons les raccourcis pour lancer rapidement les applications sans avoir à s'échiner sur la peu confortable croix directionnelle. Les applications étant affichées sur 3 colonnes, les raccourcis utilisaient de façon fort intuitive le pavé numérique avec de haut en bas aussi bien sur le clavier qu'à l'écran :
shift
7
,shift
8
,shift
9
pour les 3 applications de la 1ère ligneshift
4
,shift
5
,shift
6
pour les 3 applications de la 2ème ligneshift
1
,shift
2
,shift
3
pour les 3 applications de la 3ème ligneshift
0
,shift
.
,shift
×10^x
pour les 3 applications de la 4ème ligne
shift
Anspour relancer la dernière application ouverte.
Enfin, la boîte à outils transversale appelée par la touche
🧰était visuellement peu agréable sur la NumWorks avec des écritures minuscules. C'est que chaque entrée de la liste est prévue pour afficher jusqu'à 2 lignes : l'intitulé de l'entrée et sa description.
Upsilon 1.0.1 améliore la lisibilité avec une écriture plus grande.
Dans le cas où cela fait déborder les intitulés plus larges, un défilement automatique de la sélection est même prévu :
3) Application Calculs
Go to topPassons maintenant à l'application Calculs.
Pour les calculs avec unités, tu peux maintenant obtenir dans les résultats complémentaires la nature de l'unité en question, par exemple vitesse pour des km·h-1.
Par contre il semble y avoir un bug avec cela, car les autres résultats pertinents proposés jusqu'alors, notamment des convertions dans des unités similaires jugées petinentes, ne sont plus proposées...
Pour les calculs avec unités, tu peux maintenant obtenir dans les résultats complémentaires la nature de l'unité en question, par exemple vitesse pour des km·h-1.
Par contre il semble y avoir un bug avec cela, car les autres résultats pertinents proposés jusqu'alors, notamment des convertions dans des unités similaires jugées petinentes, ne sont plus proposées...
4) Application Fonctions
Go to topDu nouveau également dans l'application Fonctions.
Les définitions de fonctions sont désormais préfixées en italique.
Les définitions de fonctions sont désormais préfixées en italique.
5) Application Statistiques
Go to topRegardons maintenant l'application Statistiques.
2 nouveaux paramètres statistiques sont maintenant disponibles sous l'onglet Stats. En plus de la moyenne pondérée, tu y trouveras :
2 nouveaux paramètres statistiques sont maintenant disponibles sous l'onglet Stats. En plus de la moyenne pondérée, tu y trouveras :
- Moyenne géométrique
- Moyenne harmonique
6) Application Liseuse
Go to topExclusivité à ce jour intégrée au firmware Upsilon, nous avons l'application Liseuse.
Il s'agit d'un lecteur de fichiers texte. Tes fichiers peuvent être rajoutés via la page d'installation des applications Upsilon ; il te suffit d'y préciser un fichier local.
L'idéal pour mettre tes notes, informations, anti-sèches, formulaires, résumés de cours, exercices types corrigés ou même littéalement annales corrigées, à chaque fois que tu auras une évaluation n'imposant pas le mode examen.
L'application accepte aussi bien les fichiers de texte brut (*.txt) que les documents incluant du formatage ou des expressions LaTeX (*.urt) :
Et bien avec Upsilon 1.0.1 de nouvelles commandes LaTeX sont reconnues :
Il s'agit d'un lecteur de fichiers texte. Tes fichiers peuvent être rajoutés via la page d'installation des applications Upsilon ; il te suffit d'y préciser un fichier local.
L'idéal pour mettre tes notes, informations, anti-sèches, formulaires, résumés de cours, exercices types corrigés ou même littéalement annales corrigées, à chaque fois que tu auras une évaluation n'imposant pas le mode examen.
L'application accepte aussi bien les fichiers de texte brut (*.txt) que les documents incluant du formatage ou des expressions LaTeX (*.urt) :
- Code: Select all
Ce fichier est un essai de %r%LaTeX%\r%
$\times\forall\pm\partial\exists\div\infty\approx\neq\equiv\leq\geq$
$\leftarrow\uparrow\rightarrow\downarrow\leftrightarrow\updownarrow\Leftarrow\Uparrow\Rightarrow\Downarrow$
$\alpha\beta\gamma\delta\epsilon\zeta\eta\theta\iota\kappa\lambda\mu\nu\xi$
$o\pi\rho\sigma\tau\upsilon\phi\chi\psi\omega$
$\Alpha\Beta\Gamma\Delta\Epsilon\Zeta\Eta\Theta\Iota\Kappa\Lambda\Mu\Nu\Xi$
$\Omicron\Pi\Rho\Sigma\Tau\Upsilon\Phi\Chi\Psi\Omega$
Et bien avec Upsilon 1.0.1 de nouvelles commandes LaTeX sont reconnues :
\sum
pour l'opérateur de sommation$mathjax$\sum$mathjax$\prod
pour l'opérateur produit$mathjax$\prod$mathjax$\int
pour l'intégrale$mathjax$\int$mathjax$\binom{n}{k}
pour le coefficient binomial$mathjax$\binom{n}{k}$mathjax$\f
pour le caractère f\i
pour le caractère i
7) Application Python
Go to topNous arrivons enfin à l'application Python.
Comme déjà dit, l'interpréteur Micropython qu'elle utilise passe donc de la version 1.17.0 pour Upsilon 1.0.0 à maintenant 1.19.1 avec Upsilon 1.0.1.
Une évolution que nous ne pouvons que saluer, Upsilon t'offrant désormais de loin le Micropython le plus à jour tous firmwares et même tous modèles confondus, bravo !
Comme déjà dit, l'interpréteur Micropython qu'elle utilise passe donc de la version 1.17.0 pour Upsilon 1.0.0 à maintenant 1.19.1 avec Upsilon 1.0.1.
Une évolution que nous ne pouvons que saluer, Upsilon t'offrant désormais de loin le Micropython le plus à jour tous firmwares et même tous modèles confondus, bravo !
- Micropython 1.19.1 : NumWorks avec firmware Upsilon
- Micropython 1.17.0 : NumWorks, NumWorks avec firmware Omega
- Micropython 1.12.0 : application KhiCAS (disponible pour les NumWorks N0110, TI-Nspire CX, TI-Nspire CX II et Casio Graph 90+E / fx-CG50)
- Micropython 1.11.0 : TI-Nspire CX II
- Micropython 1.9.4 : HP Prime, Casio Graph 35+E II / fx-9750/9860GIII, Graph 90+E / fx-CG50, application CasioPython (en plus des précédentes Casio, compatible avec les Casio Graph 35+E/USB / fx-9750GII, Graph 75/95 / fx-9860GII, Graph 85 / fx-9860G)
- Micropython 1.4.6 : programme Ndless Micropython (en plus des TI-Nspire CX, compatible avec les TI-Nspire et TI-Nspire CM)
- TI-Pytho 3.2 : TI-82 Advanced Edition Python, TI-83 Premium CE Edition Python, TI-84 Plus CE-T Python Edition, TI-84 Plus CE Python (fork closed-source de CircuitPython qui est quant à lui un fork allégé de Micropython)
Du nouveau niveau formatage automatique dans l'éditeur de scripts.
Les chaînes de caractères et commentaires y bénéficient maintenant d'un affichage clairement différencié en italique.
Autre gros avantage exclusif d'Upsilon par rapport à tous les autres firmwares NumWorks, la disponibilité de la bibliothèque ulab. Elle nous offrait jusqu'à présent les sous-bibliothèques :- ulab.numpy pour le calcul scientifique
- ulab.scipy pour entre autres l'algèbre linéaire, l'optimisation de fonctions et le traitement de signal
Enfin nous avons la bibliothèque ion traitant de l'aspect matériel spécifique à la NumWorks, notamment les touches clavier.
Upsilon 1.0.0 avait déjà innové en y rajoutant des fonctions spécifiques à la batterie, de quoi te coder de véritables petits utilitaires.
Upsilon 1.0.1 va encore plus loin en rajoutant des fonctions spécifiques à l'écran : get_brightness() et set_brightness() pour récupérer et modifier sa luminosité. De quoi te coder avec une simple boucle de superbes effets spéciaux sans aucune consommation lourde de la mémoire !
Lien : tuto de déverrouillage édition rentrée 2022
Installation :