π
<-

News 2024
August (1)
July (2)
June (2)
May (1)
April (1)
March (1)

News 2023
August (4)
July (2)
June (3)
May (2)
April (4)
March (2)

News 2022
August (2)
July (8)
June (4)
May (7)
April (9)
March (10)

News 2021
August (7)
July (8)
June (2)
May (6)
April (11)
March (10)

News 2020
August (4)
July (11)
June (6)
May (4)
April (8)
March (3)

News 2019
August (1)
July (3)
June (3)
May (5)
April (1)
March (2)

News 2018
August (4)
July (1)
June (5)
May (9)
April (13)
March (5)

News 2017
August (4)

Firmware Delta N0110: calcul formel GIAC même en mode exam !

New postby Admin » 18 Sep 2019, 10:48

Le calcul littéral et formel est un formidable outil de découverte et réelle compréhension des Mathématiques, permettant de porter un tout autre regard sur les problèmes du lycée.

Pour les lycéens passionnés de Mathématiques ou plus précisément d'algèbre, ainsi que pour les poursuites d'études supérieures avec une part significative de Mathématiques, la HP Prime est un excellent choix. Elle intègre un portage par Bernard Parisse du moteur de calcul formel GIAC de son logiciel de Mathématiques intégré Xcas.
Comme il s'agit d'un portage officiel, il est reconnu par le mode examen qui une fois activé peut laisser les fonctionnalités associées accessibles lorsqu'elles sont autorisées, notamment pour la France.
Le seul bémol à cette excellente solution est hélas son prix à 3 chiffres, qui en France fera fuir une large majorité des familles.

Mais Bernard a depuis quelques années entamé un formidable travail autour de la démocratisation et l'accessibilité du calcul littéral et formel, avec ses applications KhiCAS gratuites pour calculatrices de milieu de gamme.

L'application KhiCAS intègre un portage du moteur de calcul formel GIAC du logiciel Xcas, agrémenté de fonctionnalités annexes diverses selon les modèles ciblés.

Il en existait désormais 3 déclinaisons pour cette rentrée 2019 :
  • KhiCAS pour TI-Nspire :
    Ce programme étend donc les capacités formelles des TI-Nspire CAS au niveau de la HP Prime, ou rajoute ces mêmes capacités formelles aux TI-Nspire numériques (non CAS). Il bénéficie d'une interface d'entrée-sortie qui fonctionne d'origine en écriture naturelle.
    Un exemple de capacité additionnelle bénéficiant à la fois aux TI-Nspire CAS et TI-Nspire numériques, c'est la possibilité d'obtenir un tableau d'étude de fonction !
    Nécessitant Ndless, il ne peut donc être installé que sur les seules TI-Nspire CX en version inférieure à 4.5.1, et est à ce jour exclu des TI-Nspire CX II.
    En tant que portage non officiel, il sera systématiquement bloqué en mode examen. :#non#:
  • KhiCAS pour Casio Graph 90+E :
    On retrouve ici le moteur de calcul formel GIAC, avec une interface fonctionnant en écriture ligne et ne gérant l'écriture naturelle que sur demande (éditeur d'expression).
    Toutefois l'application bénéficie ici de plusieurs compléments fort bienvenus.
    D'une part pour une prise en main bien plus autonome, une sélection de commandes GIAC est disponible via les menus de bas d'écran.
    D'autre part, il est ici possible de créer et exécuter des programmes et la syntaxe Python est gérée avec tout ce qu'il faut, éditeur et coloration syntaxique !
    Et en prime, le langage de programmation inclut des commandes de tracé à la Scratch/Logo !
    Là encore, en tant que portage non officiel, il sera inutilisable en mode examen. :#non#:
  • KhiCAS pour Casio Graph 35+E II :
    La non disponibilité de cette application pour les modèles précédents Casio Graph 35+E et Graph 75+E, s'explique par le fait que la version KhiCAS optimisée pour calculatrices Casio Graph prend à ce jour près de 2 Mio, or ces anciens modèles ne disposaient que de 1,5 Mio de capacité de mémoire de stockage. Avec désormais 3 Mio de mémoire de stockage sur Graph 35+E II, c'est bon maintenant.
    On retrouve exactement les mêmes fonctionnalités que dans la déclinaison Graph 90+E.
    Cela n'empêche pas l'application d'avoir été conçue sur mesures, avec des fonctionnalités pertinemment adaptées à l'écran monochrome de la Graph 35+E II. Par exemple, la coloration syntaxique des programmes et ici remplacé par de l'enrichissement syntaxique !
    Là encore, en tant que portage non officiel, il sera inaccessible en mode examen. :#non#:

11557Pour cette rentrée 2019, la NumWorks bénéficie d'une nouvelle révision matérielle avec une puce Flash de capacité accrue, on passe de 1 Mio à 8 Mio, désormais bien plus qu'il n'en faut.

Il n'en fallait pas davantage pour que Bernard se remette à faire des miracles, et avec l'aide de Jean-Baptiste Boric et zardam voici venir Delta ! :bj:

Il ne s'agit pas d'une application rajoutable cette fois-ci puisque contrairement à la concurrence la calculatrice NumWorks ne permet pas de rajouter des applications à chaud, mais d'un firmware complet conçu spécifiquement pour ta NumWorks N0110.
Plus précisément, il s'agit d'une reprise du firmware officiel, avec remplacement du moteur de calcul par GIAC.

Ce qui signifie non seulement le retour sur ta NumWorks du calcul littéral supprimé depuis la version 11, mais aussi plus que ça l'arrivée du calcul formel !

L'intégration du moteur GIAC s'est visiblement faite dans un grand respect de l'esprit du système NumWorks, puisque le moteur se fait totalement oublier tant qu'on n'y pense pas. Il ne perturbe pas le fonctionnement normal de l'application Calculs, où l'on continue à bénéficier de l'affichage mixte des résultats (exact + décimal) ainsi que de l'affichage naturel pour la saisie et les résultats.

Ici encore, un grand soin à été apporté pour une prise en main autonome, avec tout un travail sur la boîte à outils qui liste et documente les fonctions.

1155011556On y retrouve par exemple un nouveau menu Algebre, avec ce qu'il te faudra pour changer la forme de tes résultats (factorisation réelle ou complexe, décomposition en éléments simples, simplification...).

Mais ce n'est pas tout, car d'autres menus comme celui Matrice se voient rajouter nombre d'éléments, ici entre autre pour l'algèbre linéaire en BAC+1/2 selon les cursus (noyau, valeurs et vecteurs propres, réduction...).
1155211551


11554Méticuleusement, Bernard va même jusqu'à corriger la documentation des fonctions qui ont désormais un comportement différent, comme diff(...) pour la dérivation dans le menu calculs.

Et le gros avantage du firmware Delta par rapport aux applications KhiCAS rajoutées sur TI-Nspire ou Casio Graph, c'est que ses fonctionnalités de calcul formel cette fois-ci intégrées restent disponibles en mode examen ! :bj:

Malheureusement, les licences protégeant le code NumWorks et le code Delta issu de GIAC/KhiCAS/Xcas, sont incompatibles.
Il n'est donc pas possible de distribuer le fichier firmware Delta.

La contribution a été soumise à NumWorks donc espérons qu'elle pourra être intégrée après correction des licences dans un sens ou dans l'autre.
Mais dans le contexte encore fort récent (Juillet dernier) de la suppression de tout calcul littéral pour s'ouvrir les portes des marchés de nos voisins européens dont les examens interdisent ces fonctionnalités (Royaume-Uni, Pays-Bas, Portugal, Italie...), nous doutons qu'une évolution rapide soit possible.

En attendant le code source est public et, pour une installation moins complexe en attendant mieux, a été rendu disponible via un conteneur Docker.
Une dois Docker installé, l'unique commande ci-dessous suffira pour construire et flasher le firmware Delta.


Lien Docker : https://hub.docker.com/r/zardam/epsilon-builder
Commande Docker : docker run -it --rm --privileged zardam/epsilon-builder https://github.com/zardam/epsilon.git n110-giac

Sources et compléments : viewtopic.php?f=97&t=22870&start=50#p244721 , viewtopic.php?f=97&t=22870&start=70#p244750 et posts suivants à chaque fois

Firmware 11.1.0 tiers: Python avec 32K/40K mémoire travail !

New postby Admin » 08 Sep 2019, 13:48


La NumWorks offre à ce jour l'implémentation Python la plus riche sur calculatrice, avec 188 éléments builtins et pas moins de 6 modules complémentaires dont le module graphique kandinsky et le module de tracé turtle. :bj:

C'est a priori une aubaine pour le nouvel enseignement numérique NSI de Première au lycée à compter de cette rentrée 2019. :)

Sauf que la NumWorks se traîne également un véritable boulet niveau mémoire. Elle dispose de :
  • 16 Kio de mémoire de stockage pour les scripts Python
  • 16 Kio de mémoire de travail pour l'exécution des scripts Python, comme le report notre script de test

Or les 16 Kio de mémoire de travail constituent la plus faible valeur toute concurrence confondue ! :mj:

Etant ainsi très à l'étroit, faire fonctionner des scripts Python un minimum conséquents, comme par exemple avec une interface texte ou graphique, relève d'un véritable défi d'optimisation à l'aveugle comme nous avions déjà pu nous en rendre compte avec les scripts de notre concours de rentrée 2018. :'(

A noter que ces 16 Kio sont une limite logicielle. Matériellement la NumWorks offre bien davantage avec 256 Kio de mémoire SRAM.

La limite dépendra bien évidemment du contenu de chaque script et des habitudes de codage de chacun, mais le plus gros script que nous avons pu exécuter jusqu'à présent et fort péniblement sur NumWorks faisait près de 3,75 Ko soit, 23,5% de la capacité de travail totale.

En effet, lorsque l'interpréteur Python importe un script pour exécution :
  • tout le texte du script est chargé dans la mémoire de travail
  • tous les objets y étant définis (fonctions, variables, ...) sont alors créés en mémoire de travail en tant qu'objets Python utilisables, si bien qu'ils y seront alors présents en double exemplaire (une version texte, et une version Python)

Or, nous ne sommes pas en C mais en Python. Les objets Python ça prend beaucoup de place, beaucoup plus que ce que tu as saisi dans le script :
  • 24 octets juste pour un entier court
  • 49 octets rien que pour une chaîne de caractères vide
  • 64 octets pour une simple liste vide
  • 136 octets pour une fonction vide sans paramètres
  • ... :#roll#:

1150311504Ce problème vient d'être signalé chez nous une énième fois hier, cette fois-ci par cent20 dans le cadre d'un script sur les polynômes du second degré muni d'une interface texte pour ses élèves de Première. Un script dépassant les 6 Ko et n'ayant donc strictement aucune chance de marcher en l'état sur NumWorks.

Suite à cela, Lionel Debroux a décidé de s'attaquer au problème.

Il vient donc tout juste de compiler un firmware NumWorks 11.1.0 amélioré, avec une application Python qui s'alloue 32 Kio de mémoire de travail, de quoi enfin pouvoir un peu respirer ! :bj:
Et en prime, c'est mieux que les 20 Kio des TI-83 Premium CE ! ;)
De quoi désormais pouvoir espérer exécuter des scripts Python faisant jusqu'à 7 Ko. :)

Une autre version, plus expérimentale toutefois car s'arrangeant avec d'autres choses, t'offrira même 40 Kio de mémoire de travail pour l'exécution de tes scripts Python ! :#tritop#:


En suivant les liens ci-après, tu peux dès maintenant installer facilement ce firmware si tu disposes de l'ancien modèle NumWorks N0100.

Pour la nouvelle NumWorks N0110, nous ne disposons pas encore d'outil grand public permettant d'installer un firmware non officiel.


Toutefois, l'amélioration a été soumise à l'équipe NumWorks. Espérons qu'elle sera acceptée et donc disponible dès la prochaine mise à jour pour NumWorks N0110 également. ;)

Téléchargements :
Lien : outil en ligne d'installation de firmware NumWorks N0100 (nécessite le navigateur Google Chrome)

La NumWorks réinventée avec la N0110 - rentrée 2019

New postby Admin » 06 Aug 2019, 17:54

La NumWorks, calculatrice graphique programmable en Python, de conception française et au code ouvert, fut lancée à la rentrée 2017.

Au cours de l'année scolaire 2018-2019, tous les autres constructeurs de calculatrices graphiques nous ont sorti de nouvelles éditions de leurs modèles phares :
  • Casio avec la Graph 35+E II qui remplace la Casio Graph 35+E
  • Texas Instruments avec la TI-83 Premium CE Edition Python qui remplace la TI-83 Premium CE
  • et les TI-Nspire CX II qui remplacent les TI-Nspire CX
  • Hewlett Packard avec la HP Prime G2 qui remplace la HP Prime (G1)
  • et même dans un certain sens Lexibook, avec l'Esquisse GCEXFR qui clone la Lexibook GC3000FR (soit en réalité la Truly TG206) tout en changeant quelques petites choses, et dont nous te parlerons prochainement

La NumWorks quant à elle avait déjà bénéficié d'une première révision matérielle pour la rentrée 2018 avec des changements esthétiques, au niveau du boîtier et du clavier. Toutefois, la référence du modèle était restée la même, N0100.

Cette fois-ci par contre pour sa révision matérielle de rentrée 2019 que nous venons de recevoir, la calculatrice NumWorks adopte apparemment une nouvelle référence, N0110. Référence effectivement indiquée dans le FCCID sur la tranche, 2ALWP-N0110, ainsi qu'à l'arrière de la boîte sur la représentation de la face arrière de la calculatrice.

Vu le changement de référence, il se pourrait donc bien que les changements ne soient pas juste cosmétiques mais bien plus croustillants cette année; nous allons donc découvrir ensemble la toute nouvelle édition NumWorks N0110 de la rentrée 2019.

En réalité moi-même puis Adriweb avons reçu successivement un échantillon chacun (merci !), de références différentes pour la nouvelle révision matérielle NumWorks de la rentrée 2019, afin notamment de préparer cet article :
  • un prototype qui portait la référence N0200
  • puis la version finalisée avec la référence N0110

Il s'agit de la même révision matérielle, la référence N0200 un temps envisagée n'ayant donc finalement pas été retenue pour nommer la révision matérielle de rentrée 2019.

Certaines illustrations qui vont suivre pourront ainsi porter la référence non finale N0200 qu'il faudra donc ignorer et remplacer par N0110.




Sommaire :




1) Déballage et tour d'observation :

Go to top

Commençons donc par ouvrir la boîte. Elle comprend donc la calculatrice, le guide de sécurité, le câble USB A ↔ USB micro-B de connectivité aux couleurs de NumWorks ainsi que, nouveauté, un autocollant NumWorks. :)

Et si tu as l'œil observateur, peut-être as-tu déjà remarqué ci-dessus plusieurs changements vu que la calculatrice est représentée sur la boîte. ;)

A priori la calculatrice NumWorks N0110 et son couvercle pèsent toujours 166g comme avant. Mais en réalité cela cache quelque chose d'intéressant :
  • la calculatrice seule a perdu du poids, passant de 136g à seulement 127g
  • le couvercle dans le même temps a gagné du poids, passant de 28g à 37g

En effet nous disposons d'un nouveau couvercle nettement plus épais et donc résistant bien mieux à la flexion lorsque l'on appuie dessus pour le retirer.

Les bosses latérales internes au couvercle sont également bien plus prononcées, ce qui permet de mieux surélever le couvercle et ainsi l'éloigner davantage de l'écran.

Deux changements permettant de bien mieux protéger l'écran contre les rayures dont ont pu souffrir des utilisateurs de la NumWorks N0100 ! :bj:

Si l'on se concentre sur la calculatrice maintenant, on note plusieurs choses.

Déjà, la vitre de protection de l'écran est nettement plus épaisse.

Niveau clavier on note enfin l'ajout du caractère pourcent (%) fort utile en Python. Toutefois, ce caractère a été ajouté en tant que fonction alphabétique de la touche d'effacement :
.
Nous comprenons bien qu'il n'y avait pas d'autre possibilité dans la partie supérieur du clavier où figurent les autres caractères spéciaux, mais nous trouvons cela fort embêtant qu'une touche aussi importante puisque l'on peut être amené à devoir corriger une saisie à tout moment, puisse ainsi être détournée de sa fonction principale. Particulièrement dans le contexte du Python où l'on sera très souvent en verrouillage alphabétique, il ne faudra pas oublier de désactiver ce dernier... Peut-être est-ce une simple question d'habitude.

Mais ce n'est pas tout. Au dos de la calculatrice on note une position différente du bouton reset, ce qui implique donc l'usage interne d'une toute nouvelle carte mère... ;)

Et en passant sur la NumWorks N0110 le bouton reset n'est plus à aller chercher dans le boîtier. Fini les mines de criterium (conductrices) que tu cassais dans ta calculatrice ! :bj:

Enfin, allons vérifier la version firmware à l'écran À propos de l'application Paramètres :
  • le prototype NumWorks N0200 non final est muni de la version 11.0.0
  • la calculatrice NumWorks N0110 finalisée est quant à elle munie de la version 11.1.0 bien évidemment un peu plus récente
Dans les deux cas, les fonctionnalités correspondent à la version 11.2.0 sortie récemment pour les NumWorks N0100, comme on le remarque aisément à l'absence de possibilités de calcul littéral.




2) Diode examen et recharge batterie :

Go to top

Autre témoin de changements matériels, la diode examen joue maintenant également le rôle de témoin de charge lorsque la calculatrice est branchée sur une alimentation USB.

La diode RVB restant alors allumée en orange, cela ne peut être confondu avec le signal du mode examen (rouge clignotant). De plus, cette fonctionnalité est désactivée une fois la calculatrice en mode examen, ce qui évite donc de parasiter le signal du mode examen en branchant par exemple une batterie USB externe.

Mais quelque chose qui est curieux, c'est que cette diode est bien faiblarde par rapport à celle des NumWorks N0100. La luminosité est bien plus faible que ce à quoi nous étions habitués, et les contours du disque dessiné par le faisceau sont également flous.

Tentons d'explorer ce mystère. Nous allons lancer le test usine pour pouvoir allumer les différents composants de la diode RVB. Pour cela il nous suffit dans l'application Paramètres d'accéder à l'écran À propos, de sélectionner FCC ID puis de taper
6
.

Et effectivement, voilà découvert le pot aux roses. Lorsque l'on éclaire la diode dans ses composantes les plus lumineuses, rouge, bleu et blanc, on note au dos un chemin lumineux qui traverse l'écran verticalement. Encore un signe qui plaide pour une toute nouvelle carte mère. En effet la diode n'est visiblement plus accolée à la tranche supérieure du boîtier. La carte mère probablement plus petite doit désormais s'arrêter en-dessous de l'écran, et c'est un guide qui conduit alors sa lumière jusqu'à la tranche supérieure.




3) Performances :

Go to top

La HP Prime G2 était récemment passée devant la NumWorks pour le titre de calculatrice graphique la plus performante. Est-ce toujours le cas ?

Prenons le script Python suivant, et adaptons-le dans le langage historique de chaque calculatrice programmable conforme pour les examens français 2020 :
Code: Select all
try:
  from time import *
except:
  pass

def hastime():
  try:
    monotonic()
    return True
  except:
    return False

def seuil(d):
  timed,n=hastime(),0
  start,u=0 or timed and monotonic(),2.
  d=d**2
  while (u-1)**2>=d:
    u=1+1/((1-u)*(n+1))
    n=n+1
  return [(timed and monotonic() or 1)-start,n,u]


L'appel seuil(0.008) s'exécute sur la NumWorks N0110 en seulement 0,498s : :bj:
  1. 0,498s : NumWorks N0110 (?)
  2. 0,688s : HP Prime G2 (32 bits : Cortex/ARMv7 @528MHz)
  3. 0,785s : NumWorks N0100 (32 bits : Cortex/ARMv7 @100MHz)
  4. 2,414s : HP Prime G1 (32 bits : ARM9/ARMv5 @400MHz)
  5. 8,93s : TI-Nspire CX II (32 bits : ARM9/ARMv5 @396MHz)
  6. 12,24s : TI-Nspire (32 bits : ARM9/ARMv5 @120MHz)
  7. 18,67s : TI-Nspire CX CR4+ (révisions W+) (32 bits : ARM9/ARMv5 @156MHz)
  8. 20,92s : TI-Nspire CX (révisions A-V) (32 bits : ARM9/ARMv5 @132MHz)
  9. 50,77s : Casio Graph 90+E (32 bits : SH4 @117,96MHz)
  10. 81,03s : Casio Graph 35+E II (32 bits : SH4 @58,98MHz)
  11. 101,1s : Casio Graph 35/75+E (32 bits : SH4 @29,49MHz)
  12. 117,29s : Casio Graph 25+E (32 bits : SH4 @29,49MHz)
  13. 120,51s : TI-83 Premium CE Edition Python (8 bits : eZ80 @48MHz)
  14. 196,79s : TI-83 Premium CE / TI-84 Plus CE-T (8 bits : eZ80 @48MHz)
  15. 260,41s : TI-82 Advanced / TI-84 Plus T (8 bits : z80 @15MHz)
  16. 607,91s : Casio fx-CP400+E (32 bits : SH4 @117,96MHz)
  17. 672,65s : Casio fx-92+ Spéciale Collège (8 bits : nX-U8/100 >1,5MHz - spécifications ancien modèle fx-92 Collège 2D+, non confirmées sur le nouveau)
  18. 738,75s : Lexibook GC3000FR (non programmable, estimation relative par comparaison des performances en tracé de graphes avec le modèle le plus proche technologiquement, la TI-82 Advanced)


La NumWorks N0110 rafle donc ainsi la tête du classement, plus performante que la HP Prime G2 qui ne sera donc pour sa part pas restée bien longtemps à cette place, surtout avec le retard d'une année qu'a subi sa disponibilité en France. La NumWorks N0110 serait donc en calcul dans les 1,57 fois plus performante que la NumWorks N0100, et dans les 1,38 fois plus performante que la HP Prime G2. Des différences tellement grandes qu'elles suggèrent non pas seulement une nouvelle carte mère, mais bien l'utilisation d'un tout nouveau cœur. ;)

Voici maintenant un test un peu plus visuel, non plus purement calculatoire mais graphique, avec le script Python suivant retranscrit ligne à ligne dans le langage historique de chaque machine :
Code: Select all
from kandinsky import *
def mb(n,w=320,h=222):
  for x in range(w):
    for y in range(h):
      z=0
      d=3.5*x/(w-1)-2.5-2.5j*y/(h-1)+1.25j
      k=0
      while k<n and abs(z)<2:
        k=k+1
        z=z*z+d
      t=int(255*k/n)
      c=color(int(t),int(t*0.75),int(t*0.25))
      set_pixel(x,y,c)
import kandinsky
def mandelbrot(W,H,N) :
for x in range(W):
  for y in range(H):
   z=complex(0,0)
   c=complex(2.7*x/(W-1)-2.1,-(1.87*y/(H-1)-.935))
   j=0
   while j<N and abs(z)<2:
    j=j+1
    z=z*z+c
   t=255*j/N
   kandinsky.set_pixel(x,y,kandinsky.color(int(t),int(.75*t),int(.25*t)))



On note là encore que la NumWorks N0110 (en bas à droite) reste la calculatrice la plus performante, battant aussi bien les deux HP Prime que la TI-Nspire CX II, et de loin dans ce dernier cas. Mais on peut noter que dans le contexte de ce test, c'était déjà le cas dans une moindre mesure de la NumWorks N0100.




4) Mémoire de stockage et mémoire de travail Python :

Go to top

Une fois les scripts préchargés effacés, le Workshop NumWorks reporte un espace de stockage de 16382 octets sur la NumWorks N0110, comme sur la NumWorks N0100.

Afin d'estimer la mémoire de travail Python on peut utiliser le script suivant :
Code: Select all
def sizeenv():
  s=0
  import __main__
  for o in dir(__main__):
    try:s+=size(eval(o))
    except:pass
  return s
def size(o):
  s,t=0,type(o)
  if t==str:s=49+len(o)
  if str(t)=="<class 'function'>":s=136
  if t==int:
    s=24
    while o:
      s+=4
      o>>=30
  if t==list:
    s+=64
    for so in o:s+=8+size(so)
  return s
def mem(v=1,r=1):
  try:
    l=[]
    try:
      l+=[r and 793+sizeenv()]
      if v*r:print(" ",l[0])
      l+=[0]
      l+=[""]
      l[2]+="x"
      while 1:
        try:l[2]+=l[2][l[1]:]
        except:
          if l[1]<len(l[2])-1:l[1]=len(l[2])-1
          else:raise(Exception)
    except:
      if v:print("+",size(l))
      try:l[0]+=size(l)
      except:pass
      try:l[0]+=mem(v,0)
      except:pass
      return l[0]
  except:return 0

Là encore, la mémoire de travail offerte aux scripts Python par la NumWorks N0110 reste sur le même ordre de grandeur que pour la NumWorks N0100, dans les 16 Kio.

Si le nouveau cœur dispose de capacités mémoires accrues, ce qui est sûr c'est qu'à date l'édition N0110 du firmware ne les exploite pas.




5) Mode DFU et dumping :

Go to top

On peut maintenant tenter la connectivité de la NumWorks N0110 dans le contexte du boot. Mettons donc la calculatrice en mode DFU afin d'accéder à son firmware à l'aide de notre outil en ligne.

Petit changement bienvenu, le mode DFU ne se déclenche plus en faisant redémarrer la calculatrice (reset) avec une connexion USB. C'était en effet très embêtant dans le contexte d'une batterie à plat. En cas de batterie à plat, le démarrage de la charge correspondant à une mise sous tension la calculatrice effectuait un démarrage à froid, et déclenchait donc automatiquement le mode DFU (avec écran qui restait noir) en lieu et place du fonctionnement normal. Il faut maintenant faire redémarrer la calculatrice tout en maintenant la touche
6
pour enclencher le mode DFU, ce qui évitera désormais les activations involontaires et déroutantes. :bj:

Le mode DFU avait également le défaut de ne donner aucun signe de vie puisque n'allumant pas l'écran. On ne pouvait donc pas savoir si la calculatrice était allumée ou pas sans la connecter en USB. Autre changement appréciable donc, le mode DFU signale désormais son activation via l'allumage de la diode en rouge. :)

C'est visiblement toujours un STM32 BOOTLOADER associé qui est détecté, on resterait donc a priori sur la même famille de puces ASIC (processeur 32 bits Cortex/ARMv7).

Notre outil en ligne continue à lister 4 interfaces DFU pour la NumWorks N0110, mais avec plusieurs changements dont un d'importance par rapport à la NumWorks N100 :
  • Internal Flash : capacité réduite, ne faisant plus 4×16+1×64+7×128=1024 Kio mais comme sa description l'indique seulement 4×16+1×64+3×128=512 Kio désormais
  • Option Bytes : capacité augmentée de 16 à 48 octets
  • OTP Memory : capacité faisant apparemment toujours 528 octets, mais dont nous n'arrivons pas à récupérer le contenu à la différence des autres
  • Device Feature : capacité toujours de 4 octets

La dernière version compilée du firmware NumWorks dépassant les 800 Kio, il est ici strictement impossible qu'elle rentre dans la mémoire Flash interne de la puce ASIC réduite à 512 Kio de capacité. :o

Cela voudrait-il dire que NumWorks a fait le choix de rajouter enfin une puce Flash externe, comme encouragé dès octobre 2017 par Lionel Debroux avec le challenge NumWorks++ ?

En tous cas cela y ressemblerait très fortement puisque l'image récupérée des 512 Kio de la Flash interne à la puce ASIC ne comporte qu'une minuscule portion de code utile :
  • 9212 octets utiles pour la version 11.0.0
  • 8720 octets utiles pour la version 11.1.0
De façon évidente le firmware n'est plus dans la Flash interne de la puce ASIC sur NumWorks N0110, donc oui on va considérer qu'il y a forcément une Flash externe.

Nous n'avons rien noté de spécial dans les images récupérées des autres interfaces, mais pour ceux qui souhaiteraient creuser elles sont téléchargeables en fin de test.




6) Flashing firmwares et compatibilités :

Go to top

Conséquence du point précédent, le mode DFU ne permet apparemment plus d'accéder directement au firmware sur la NumWorks N0110, ni en lecture ni en écriture.

Les firmwares officiels déjà compilés pour NumWorks N0100 que nous hébergeons font tous plus de 512 Kio et ne rentreront donc pas dans la Flash interne de la puce ASIC de la NumWorks N0110.

Pour ceux qui souhaitent pouvoir installer autre chose que la dernière version du firmware officiel, une ancienne version du firmware officiel (par exemple les versions 1.2.0 à 10.1.0 pour remettre le calcul littéral) ou bien une version modifiée, il faudra donc trouver une autre méthode. Dommage car notre outil en ligne avait vraiment l'avantage de la simplicité.

Toutefois grâce au convertisseur en ligne de ROMs Nintendo NES, il est possible de produire des firmwares NumWorks N0100 plus petits que 512 Kio, notamment quand on fournit une petite ROM et fait le choix de supprimer nombre d'applications intégrées. A la différence, ces firmwares modifiés peuvent donc rentrer dans la Flash interne de 512 Kio de la NumWorks N0110 à laquelle nous avons accès en DFU. Nous avons donc testé et donc non, ces firmwares ne fonctionnent pas sur NumWorks N0110. L'écran reste noir et la calculatrice n'est pas détectée en USB, bref le firmware ne s'amorce même pas correctement, probablement à cause de différences matérielles.

Mais comment fait NumWorks dans ce cas-là, la possibilité de récupérer la calculatrice en DFU étant essentielle pour le cas où le firmware serait endommagé ou absent et ne s'amorcerait donc pas correctement ?

Dans le cas de la NumWorks N0110, le mode de récupération offert par le Workshop NumWorks charge et exécute dans la calculatrice une image minimaliste qui s'occupera donc à son tour de recevoir le firmware complet et de l'écrire dans la Flash externe.

Cette image est visiblement chargée en mémoire RAM, puisqu'elle disparaît en cas de redémarrage de la calculatrice avant toute réception de firmware, aussi n'avons-nous pas pu cette fois-ci te la récupérer.




7) Matériel :

Go to top

Et bien puisque tous les éléments observés dans les points précédents nous renvoient au matériel, il est grand temps de s'y plonger et de répondre ainsi aux ultimes interrogations.

On note au passage que le boîtier nous semble bien plus solide, avec des vis de plus gros calibre cachées sous les 6 patins au dos, ainsi que des clips maintenant les 2 faces solidaires.

Effectivement, on confirme bien une nouvelle carte mère plus petite s'arrêtant sous l'écran sur la NumWorks N0110, et dont la lumière de la diode est conduite jusqu'à la tranche supérieure via un guide.

La NumWorks N0110 bénéficie également d'une nouvelle batterie, une PD295572, batterie LiPo (Lithium Polymère). Elle offre à la fois une tension inférieure, 3.7 Volts au lieu de 3.8 Volts, et une capacité inférieure, 1450 mAh au lieu de 1820 mAh.
Nous n'avons pas eu le temps de réaliser pour aujourd'hui des tests d'autonomie, mais sur ce genre de batterie sans marque il n'est pas certain que cette baisse nominale de 20% implique forcément une baisse d'autonomie de 20%, les protocoles de mesure variant fortement d'un constructeur à un autre, et par ailleurs des composants plus récents consomment généralement moins. En tout cas, la page des specs techniques indique la même durée en heure qu'avant :)

La NumWorks N0110 nous offre également un tout nouvel écran. Plus précisément on passe de TFT-LCD sur NumWorks N0100, à du IPS-LCD sur NumWorks N0110. Cela implique entre autres un bien meilleur angle de vision, avec des couleurs désormais quasiment plus altérées lorsque l'on regarde l'écran de biais ! :bj:

Penchons-nous pour finir sur la carte.

Comme sur la NumWorks N0100, on note que la broche d'identification USB n'est toujours pas connectée sur la NumWorks N0110, ce que l'on confirme au multimètre. Il ne sera donc toujours pas possible de faire fonctionner des périphériques USB (clavier, souris, clé, capteurs...).

Niveau puces, on note :
  • À l'emplacement U1, à la place de la STM32F412 de la NumWorks N0100, la NumWorks N0110 nous offre une STM32F730V8.
    C'est-à-dire que l'on reste sur un coeur Cortex/ARMv7, à la différence que nous passons d'un Cortex-M4 cadencé à 100 MHz, à désormais un Cortex-M7 cadencé à 216 MHz ! :bj:
    Par contre pour la Flash interne à cette puce, oubliés les 1 Mio de la NumWorks N0100, ce ne serait pas non plus du 512 Kio comme supposé plus haut, mais apparemment seulement du 64 Kio. Peut-être pour ça que le test de notre firmware allégé n'a pas marché, il était en effet quand même plus gros que ça.
    Niveau mémoire de travail maintenant, on reste sur du 256 Kio de SRAM.
  • Et comme dans 64 Kio de Flash interne il ne rentre pas grand chose, on note à l'emplacement U4 une puce Flash externe, plus précisément une Adesto AT25SF641, comme par hasard l'une des deux puces utilisées pour le le challenge NumWorks++, offrant 8 Mio de capacité.
    Globalement, on passe donc de 1 Mio de Flash sur la NumWorks N0100 à 8,0625 Mio sur la NumWorks N0110 ! :bj:




Conclusion :

Go to top

Après avoir chamboulé le marché avec la calculatrice graphique qui "fait aimer les Maths" pour la rentrée 2017, et après avoir été brièvement dépassé en performances par la HP Prime G2, NumWorks t'offre à nouveau pour la rentrée 2019 la calculatrice graphique la plus performante du marché ! :bj:

Mais ce n'est pas tout. Bouton reset désormais externe qui évitera de casser et laisser des mines de criterium dans sa calculatrice, nouveau couvercle qui évitera de rayer l'écran quand on le retire, plus de déclenchement automatique déroutant du mode DFU (avec écran restant noir) en cas de batterie déchargé... Nous ne pouvons que féliciter à nouveau NumWorks qui semble avoir été à l'écoute de tous les moindres retours de ses utilisateurs ! :bj:

NumWorks avait déjà été très productif niveau mises à jour sur les années scolaires 2017-2018 et 2018-2019, pas moins de 15 mises à jour publiées soit en moyenne une toutes les 6 semaines (contre au mieux 0 à 2 par an et par modèle chez la concurrence), une grande réactivité et pertinence par rapport aux actuelles évolutions des programmes scolaires dans le cadre de la réforme du lycée et du BAC.
Mais voilà avec plus de 800 Kio pour le dernier firmware NumWorks N0100, la limite de 1024 Kio de Flash commençait à s'approcher dangereusement, et on aurait pu craindre des mises à jour moins fréquentes ou moins intéressantes.
A priori il n'en sera rien, avec désormais 8 Mio de Flash sur la N0110 NumWorks vient de faire sauter la limite, nous avons hâte de voir ce que les prochaines mises à jour vont bien pouvoir donner maintenant qu'il n'y a plus à se préoccuper de la taille du firmware ! ;)

Nous avons également hâte de voir ce que la communauté NumWorks va pouvoir faire de ces 8 Mio de Flash. Quid de porter le moteur programmable de calcul formel Xcas/KhiCAS comme déjà fait pour HP Prime, TI-Nspire, Casio Graph 35+E II et Graph 90+E ? ;)

Se pose par contre la question des anciennes NumWorks N0100, qui avec seulement 1 Mio de Flash ne pourront plus un jour ou l'autre bénéficier de toutes les dernières nouveautés. Selon le le challenge NumWorks++, il est possible de leur rajouter la puce Flash externe manquante, mais cela risque de ne pas suffire pour que le Workshop NumWorks leur envoie un firmware compatible et le programme bien dans la Flash externe, puisque c'est donc le workshop ici qui détecte le type de calculatrice et choisit le firmware approprié. Il reste donc des outils à inventer à la communauté NumWorks. ;)


Téléchargements :

Challenge NumWorks++: résumé / wrap up...

New postby Lionel Debroux » 31 Jul 2019, 23:02



En octobre 2017, j'avais lancé le Challenge NumWorks++, visant à réaliser une modification matérielle relativement simple de la calculatrice NumWorks (modèle "N0100"), en l'occurrence l'ajout d'un chip de Flash externe sur l'emplacement de la carte mère prévu par NumWorks pour cet usage, et la réalisation de logiciel tirant parti de ce nouveau chip. Adriweb avait d'ailleurs écrit la news avec moi.
In October 2017, I had launched the NumWorks++ Challenge, aiming at making a relatively simple hardware mod of the NumWorks calculator ("N0100" model), i.e. the addition of an external Flash chip on the pins suitably provided by NumWorks for this usage, and the making of software leveraging this new chip. Adriweb wrote the news item with me.

Plusieurs personnes se sont lancées publiquement dans le challenge, aux 4 coins du monde. En France, plus particulièrement, Jean-Baptiste Boric et Damien "zardam" Nicolet. Ces personnes ont donc reçu par courrier un exemplaire des chips de Flash NOR QSPI Adesto AT25SF641 de 8 MB (le modèle suggéré par les schémas officiels de NumWorks) et Winbond W25Q128JV de 16 MB, à pinout compatible, que nous avions achetés pour ce challenge, et se sont mises au travail…
Several persons, over the world, took on the challenge. In France, there were especially Jean-Baptiste Boric and Damien "zardam" Nicolet. Therefore, these persons were mailed two QSPI Nor Flash chips, and started working with them: 1 x Adesto AT25SF641 of 8 MB (the model suggested by NumWorks' official schematics) and 1 x Winbond W25Q128JV of 16 MB, whose pinout is compatible. We had bought the chips for this challenge…

Trois (!) semaines plus tard, zardam disposait d'un firmware permettant de flasher le chip externe, comme il l'annonçait par ici. Seulement quelques semaines supplémentaires plus tard, toujours le même zardam avait produit une version patchée du firmware NumWorks de l'époque, comportant un build du puissant moteur CAS "giac" de Bernard Parisse (bien connu ici parce qu'il est à la base de Xcas, le logiciel des HP Prime G1 et G2 depuis le début, KhiCAS sur TI-Nspire et Casio, etc.), qui s'exécute depuis la Flash externe ajoutée sur la calculatrice. Une partie du firmware, en gros le code de NumWorks avec quelques modifications de zardam, s'exécute toujours depuis la Flash interne, grâce au script linker adéquat.
Three weeks later (!), zardam had a firmware able to flash the external chip, as he announced here. By only several weeks later, the same zardam had produced a patched version of the contemporary NumWorks firmware, featuring a build of the powerful "giac" CAS engine by Bernard Parisse (well known here because it's the foundation of Xcas, the HP Prime G1 and G2 firmware from the beginning, KhiCAS on the TI-Nspire and Casio calculators, etc.), running from the external Flash chip added to the calculator. Part of the firmware, basically NumWorks' code with several modifications by zardam, keeps running from the internal Flash memory, thanks to the appropriate linker script.

Voici la vidéo réalisée par zardam, présentant une version antérieure de son code, qui n'activait pas encore le mode QSPI qui a quadruplé la vitesse de lecture de la Flash (donc c'est nettement plus rapide maintenant):

Bref, des fonctionnalités plus proches de celles d'une calculatrice haut de gamme dans le corps d'une calculatrice de milieu de gamme, grâce à l'ajout d'un circuit coûtant moins d'1€ à l'unité (pour le chip de 8 MB) dans ce modèle conçu par le fabricant pour monter en gamme. le processus de soudage d'un circuit au pas de 1.27mm étant habituellement considéré comme faisable, même sans grande expérience, tant qu'on dispose d'un fer à souder avec une pointe dans un état correct. La performance est plutôt bonne pour le milieu de gamme, grâce au Cortex-M4 32 bits à 100 MHz utilisé par NumWorks - d'autant que contrairement à l'eZ80 à ~48 MHz des TI-84 Plus CE / TI-83 Premium CE (micro-architecture beaucoup moins efficace par cycle d'horloge et réalisant des opérations moins avancées que les ARM), le Cortex-M4 des calculatrices NumWorks n'est pas ralenti par des waitstates, car la RAM, les bus mémoires et les mémoires Flash peuvent fonctionner à 100 MHz.
Here's the video made by zardam, showcasing an older version of his code, which didn't enable the QSPI mode which quadrupled the Flash memory bandwidth (so it's much faster now):

Well, to sum up, this is a feature set closer to that of a higher-end calculator, in the body of a mid-range calculator, thanks to the addition of a < 1 USD/EUR chip (for the 8 MB one) into that model designed by the manufacturer for upgradability. The process for soldering a 1.27mm (50 mil) pitch chip is usually considered doable, even with limited experience, as long as the soldering iron's tip is in a decent state. The performance is rather good for a mid-range calculator, thanks to the 32-bit Cortex-M4 running at 100 MHz used by NumWorks - all the more unlike the ~48 MHz eZ80 powering the TI-84 Plus CE / TI-83 Premium CE (much less efficient micro-architecture per clock cycle, which performs less advanced operations), the NumWorks calculators' Cortex-M4 processor speed isn't hampered by waitstates, as the RAM, the memory bus and the Flash memories can run at 100 MHz.

zardam a donc clairement gagné le challenge, dès novembre 2017 :bj:
Un an plus tard, il a posté un résumé de certains éléments techniques et procédures dans un article sur son blog: modifications matérielles et logicielles réalisées, et la façon de les compiler et installer.
Je dois donc lui présenter mes excuses pour avoir pris beaucoup trop de temps, malgré un certain nombre de relances par d'autres membres de l'équipe, pour écrire, en partie à l'occasion de congés d'été, cet article promis dans la news annonçant le défi (sans indication de durée il est vrai, mais ce n'est pas une raison valable :P). A vrai dire, je ne pensais pas que quelqu'un s'en emparerait et produirait aussi rapidement un tel résultat... j'avais tort :)
All in all, zardam clearly won the challenge, as early as November 2017 :bj:
A year later, he posted a summary of several technical notes and procedures in an article on his blog: hardware and software changes, and the way to build and install them.
Therefore, I need to apologize to him for taking way too much time, despite multiple pings by other staff members, to write, partially during summer holidays, the article promised in the news item announcing the challenge (without giving a timeline, granted, but that's not a valid reason :P). To tell the truth, I didn't expect that anyone would raise up to the challenge and would produce such a result so quickly... I was wrong :)

Résumons et commentons certaines parties de son travail:
  • le premier programme permettant de flasher le chip externe de Flash se base sur deux éléments principaux de logiciel open source: libopencm3, une librairie pour gérer divers microcontrôleurs à base de coeurs ARM Cortex-M et leurs périphériques sans avoir à tout réinventer soi-même à partir de la datasheet et des éventuels exemples fournis par le fabricant, et Flashrom, auquel il faut fournir les paramètres et commandes du chip de Flash s'ils ne font pas encore partie de la banque de données standard du programme, mais qui s'occupe de tout (effacement de blocs, écriture, etc.) à partir de ces paramètres. zardam a eu bien raison d'utiliser ces briques de construction logicielle, d'autant qu'à l'époque, le firmware officiel NumWorks ne fournissait pas encore de capacité de communication USB: elle est arrivée 5 mois plus tard, dans la version 1.4 d'avril 2018.
  • zardam a implémenté un bootloader offrant le multi-boot dans un mini-firmware, pour permettre le basculement d'un firmware à un autre (y compris de quoi flasher une partie de la Flash interne du microcontrôleur à partir de la Flash externe) sans devoir passer par un ordinateur. Bonne idée, cela peut être utile dans certaines configurations de test qu'il devait rencontrer.
  • il semble que l'activation du mode QSPI de la Flash externe (pour plus de vitesse) avec le programme qu'il a fait ne doive être réalisée qu'une fois. C'est important, il pense que c'est en le faisant plusieurs fois qu'il a grillé le microcontrôleur principal STM32 de sa calculatrice, il a dû le remplacer. Cette opération de remplacement du chip principal est nettement plus difficile que le soudage du chip de Flash externe, car le pas des pattes est plus fin et les pattes sont beaucoup plus nombreuses. NdT: Il paraît que l'utilisation de flux de soudage aide.
Let's summarize, and comment on, several parts of his work:
  • the initial program for flashing the external chip ls based on two main pieces of open source software: libopencm3, a library for handling a variety of microcontrollers based on ARM Cortex-M cores and their devices without having to reinvent the wheel from scratch from the datasheet and code examples provided by the manufacturer (if any), and Flashrom, which needs to be given the Flash chip's parameters and commands if they're not part of the standard database of the program yet, but which takes care of everything (block erases, block writes, etc.) from these parameters. zardam totally did the right thing using these software building blocks, all the more at the time, NumWorks' official firmware didn't provide a USB communication ability yet: it came up 5 months later, in the 1.4 version released in April 2018.
  • zardam implemented a multi-boot-capable bootloader in a mini-firmware, so that the calculator can be switched from a firmware to another (including something to reflash the internal Flash chip from the external Flash chip) without having to be connected to a computer. It's a good idea, it can be useful in some testing configurations which were probably relevant to him.
  • it seems that the QSPI mode of the external Flash chip (for higher speed) with the additional program he made needs to be done only once. This is important, he thinks that doing it multiple times is the reason why fried his calculator's main STM32 microcontroller. He had to replace it, and the process for replacing the main chip is much harder than soldering the external Flash chip, as the pitch is finer and there are many more pins. Translator's note: it appears that using soldering flux can help.

Si vous voulez utiliser votre calculatrice NumWorks comme cobaye pour répliquer le travail de zardam, et ainsi la faire monter en gamme pour un très faible coût et un risque limité, basez-vous sur son billet de blog, qui détaille, comme déjà indiqué, les différentes étapes de la construction des images et du flashage :)
Peut-être que quelqu'un sera intéressé par la mise à jour de l'intégration firmware NumWorks <-> giac vers la version actuelle du firmware NumWorks ? ;)

Une nouvelle fois, bravo à zardam pour son travail :)

Liens externes utiles :
If you want to use your NumWorks calculator as a testbed for replicating zardam's work, thereby upgrading it at a very low cost and a limited hardware risk, use his blog's article, which lists, as already mentioned, the steps for building images and flashing the calculator :)
Maybe someone will be interested by upgrading the NumWorks firmware <-> giac integration to the current version of the NumWorks firmware ? ;)

Once again, congratulations to zardam for his work :)

Useful external links:
Link to topic: Challenge NumWorks++: résumé / wrap up... (Comments: 5)

Super-firmware 11.0.0 tiers: calcul littéral & autres ajouts

New postby Admin » 13 Jul 2019, 23:59

11247Dans sa dernière version 11.2.0, NumWorks a supprimé les fonctionnalités de calcul littéral de sa calculatrice.

Un choix probablement contraint par le fait que le constructeur ne commercialise actuellement qu'un seul modèle, et que nos voisins européens (Italie, Pays-Bas, Portugal, Royaume-Uni) interdisent les modèles disposant d'un moteur de calcul littéral aux examens de l'enseignement secondaire.

Tu pouvais certes remettre le calcul littéral sur ta NumWorks en réinstallant la dernière version précédente 10.1.0 via notre outil en ligne.

Mais voilà cela n'était pas une solution pérenne; cela te faisait renoncer à toutes les nouveautés de la version 11.2.0, ainsi qu'à toutes les nouveautés futures. Un choix bien difficile... :'(

1139011391Mais aujourd'hui, comme il l'a déjà fait à plusieurs reprises, jean-baptiste boric revient à la charge avec la compilation d'un firmware amélioré. Déjà, le firmware 11.0.0 tiers qu'il vient de te partager te réactive les fonctionnalités de calcul littéral tout en incluant toutes les dernières améliorations nouveautés de la version 11.2.0 officielle ! :bj:

L'usage de ce firmware spécial aux examens interdisant les fonctionnalités de calcul littéral/symbolique/formel est bien évidemment strictement interdit, et ce même si la calculatrice NumWorks fait partie des modèles autorisés/validés. :#non#:

Il suffira tout simplement aux surveillants des pays interdisant le calcul littéral de taper x+x pour vérifier que la calculatrice utilise bien un firmware dépourvu de capacités de calcul littéral.

Pour nos voisins ayant adopté le mode examen (Pays-Bas et Portugal), Jean-Baptiste a même inclus de quoi permettre une vérification collective sans effort à distance : avec son firmware la diode ne clignotera plus en rouge mais en bleu.

Mais ce n'est pas tout, Jean-Baptiste a également inclus dans son firmware plusieurs fonctionnalités qu'il a développées, mais qui n'ont à date pas été acceptées dans la branche officielle :

Mais ce n'est pas fini, Jean-Baptiste t'a également inclus dans sa compilation une sélection de nouveautés développées par d'autres utilisateurs, et là encore non acceptées à ce jour dans la branche officielle :


Téléchargement : firmware tiers 11.0.0 amélioré (installable via notre outil en ligne)

-
Search
-
Social TI-Planet
-
Featured topics
Grand Concours 2024-2025 - Programmation Python
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
12345
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1082 utilisateurs:
>1043 invités
>33 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)