Page 1 of 2

Spécifications complètes Zero: STM32F413, 5M Flash, 832K RAM

Unread postPosted: 11 Apr 2022, 09:35
by critor
Dans une actualité précédente nous t'annoncions pour la rentrée 2022 la sortie d'une toute nouvelle calculatrice graphique, la Zero par l'entreprise du même nom (façon de faire qui rappelle la NumWorks). Le projet se veut offrir une version améliorée et plus abordable de la TI-84 Plus CE, équivalent à l'international de notre TI-83 Premium CE française, tout en étant compatible avec ces dernières niveau utilisation.

Par rapport à ce dernier point, on peut justement noter les claviers aux inscriptions absolument identiques :


Les nombreuses améliorations concernent le logiciel et le matériel.

Niveau logiciel par exemple, on peut noter une fenêtre graphique tirant grandement profit de la définition en 320×240 pixels de l'écran, alors que Texas Instruments la limite pour sa part à une zone centrale de 265×165 pixels alors entourée d'une épaisse bordure inesthétique et totalement inutile sur ses parties latérales.

Niveau matériel, le site officiel annonce par rapport à la TI-84 Plus CE :
  • à la place du processeur 8 bits eZ80 à 48 MHz, un 32 bits à pas moins de 100 MHz ! :bj:
  • à la place de l'antique port mini-USB AB, une connectivité USB enfin contemporaine et facile avec un port USB-C, première calculatrice graphique au monde à nous proposer cette évolution tant attendue ! :bj:
  • par rapport aux 4 Mio de Flash 20% de stockage supplémentaire, ce qui nous amène donc à 5 Mio

Par la suite nous creusions un petit peu la chose :
  • D'une part sur la mémoire Flash, nous expliquions que les 5 Mio étaient probablement répartis sur 2 puces de capacités respectives 4 Mio et 1 Mio, règle binaire des puissances de 2 oblige. La dissymétrie suggérait de plus que les 1 Mio étaient probablement internes à une puce microcontrôleur.
  • D'autre part sur l'identification de ce mystérieux processeur 32 bits à 100 MHz, grâce au travail de RapidZapper nous expliquions qu'il s'agissait d'un processeur Cortex-M4 implémentant l'architecture ARMv7, exactement comme sur la première NumWorks, la N0100 de la rentrée 2017.

Toutfois niveau microcontrôleur renfermant le processeur en question, nous étions restés sur une hésitation :
  • soit le STM32F412 avec 1 Mio de Flash interne et 256 Kio de RAM, comme la NumWorks N0100
  • soit le STM32F413 avec 1 Mio de Flash interne mais 320 Kio de RAM

Et bien grâce à roccolox programs et TIny_Hacker qui ont simplement envoyé la question à Zero, nous sommes aujourd'hui en mesure de te révéler les spécifications complètes de ce futur produit. :favorite:

Nous avions raison sur le microcontrôleur et bonne nouvelle c'est le STM32F413 qui est utilisé, le meilleur des deux cas donc ! :bj:

Nous confirmons donc 1 Mio de Flash interne au microcontrôleur, auquel s'ajoutent 4 Mio de Flash sur puce externe pour un total de 5 Mio.

Sur la RAM maintenant énorme surprise, car TIny_Hacker nous annonce 832 Kio, nombre qui semble sortir de nulle part. :o
Pour comprendre décomposons un peu la chose : 832-320=512K.
L'explication en est alors simple, nous avons les 320 Kio de RAM internes au microcontrôleur, auxquels s'ajoutent 512 Kio de RAM sur puces externes pour un total enfin suffisant de 832 Kio ! :bj:

Et enfin, la batterie est une Lithium de type LiPo avec 2200 mAh de capacité.

Bref si l'on adopte le point de vue d'une TI-84 Plus CE, la Zero en révolutionne clairement et indiscutablement le matériel avec des composants bien plus récents et très supérieurs.
Imagine ce que donneront tes programmes TI-Basic et peut-être même assembleur sur un tel matériel... ;)

Mais il est amusant de constater d'autre part la proximité entre les choix matériels pour la Zero et pour la NumWorks N0100 de 2017. Il n'empêche que même de ce point de vue, la Zero en est également une amélioration très significative :
  • non pas 1 Mio de mémoire Flash mais 5 Mio soit 5 fois plus ! :bj:
  • non pas les ridicules 256 Kio de mémoire RAM qui nous font cruellement souffrir en Python depuis des années mais 832 Kio soit 3,25 fois plus ! :bj:
  • non pas 1200 mAh de capacité pour la batterie mais 2200 mAh soit plus de 1,8 fois plus ! :bj:
A quand des versions des firmware Omega/Upsilon et application KhiCAS pour la Zero ? ;)
Si jamais la Zero n'inclut pas officiellement d'application Python ce qui n'est pas annoncé à ce jour, ce serait l'occasion de pouvoir disposer enfin d'un heap Python correctement dimensionné, au-delà des très insuffisants 32K de la NumWorks qui nous font souffrir depuis des années, et des 19K des TI-84 Plus CE Python et TI-84 Plus CE-T Python Edition avec lesquels on ne peut quasiment rien envisager de sérieux une fois les bibliothèques graphiques importées.

Espérons pouvoir prochainement te compléter cela de photos du matériel et affiner la chose d'un test logiciel. À bientôt on espère... ;)

Référence : Comparaison Zero avec TI-84 Plus CE Python et NumWorks N0100

Source : roccolox programs via TIny_Hacker

Crédits photos : TIFreak8x

Re: Spécifications complètes Zero: STM32F413, 5M Flash, 832K

Unread postPosted: 11 Apr 2022, 11:13
by parisse
J'ai contacte Zero la semaine derniere et pose la question du portage de KhiCAS, mais je n'ai pour l'instant pas eu de reponse.

Re: Spécifications complètes Zero: STM32F413, 5M Flash, 832K

Unread postPosted: 11 Apr 2022, 11:22
by jean-baptiste boric
Si c'est bien un STM32F413, ça nous indique:
  • Que c'est bien un Cortex-M4 qui ne dispose que d'un FPU 32 bits. Si des calculs utilisent une précision des nombres à virgule flottante de 64 bits ça sera émulé logiciellement avec un coût en performance, mais ce n'est pas nécessairement un problème en soi.
  • Pas de driver LCD intégré, ce qui m'interroge à la fois sur l'architecture matérielle (les calculatrices NumWorks ont un framebuffer déporté via un bus i8080 avec un accès indirect à la VRAM, le tout avec une lenteur affligeante) et sur l'architecture logicielle (la TI-84 Premium CE a 256 KiB de RAM + ~153 KiB de VRAM, ils n'ont clairement pas besoin de 832 Kio de RAM + éventuellement de la VRAM déporté juste pour la simuler).
Pour ce qui est d'un port d'Omega ou de KhiCAS, je ne vois pas pour l'instant de contre-indications d'ordre techniques, mais il reste à voir la politique de Zero sur le développement tiers, aussi bien d'un point de vue applicatif que firmware. C'est un point où ils pourraient se dispenser de reprendre la position de TI...

Re: Spécifications complètes Zero: STM32F413, 5M Flash, 832K

Unread postPosted: 11 Apr 2022, 12:23
by TIny_Hacker
According to Zero, development in ASM or other compiled languages is something they're looking into, but they don't think they'll have everything ready for it in the first OS versions. Hopefully they won't get any ideas from TI and change their minds...

Re: Spécifications complètes Zero: STM32F413, 5M Flash, 832K

Unread postPosted: 11 Apr 2022, 13:45
by critor
parisse wrote:J'ai contacte Zero la semaine derniere et pose la question du portage de KhiCAS, mais je n'ai pour l'instant pas eu de reponse.

Le contact est également difficile pour moi ces dernières semaines, donc ce n'est pas contre vous. :)

Soit ils sont très occupés afin de tenir la date de sortie annoncée (automne 2022), soit ils ont reçu une charmante lettre de la part des avocats de TI.

Re: Spécifications complètes Zero: STM32F413, 5M Flash, 832K

Unread postPosted: 11 Apr 2022, 14:23
by jean-baptiste boric
On the topic of third-party programs, I have several observations:

ASM will be a misnomer here. On a 32-bit Cortex-M class core with excellent modern toolchain support, there is no practical reason to develop apps entirely in assembly. At most, select performance-critical hot paths or ISA intrinsics not available in high-level languages will be written in assembly both in the firmware and in third-party apps. Zero's own calculator firmware has traces of C and C++ in the binaries.

If they do third-party apps, I sincerely hope that they'll take a good look at what has been done on other calculators, including beyond TI:
  • NumWorks calculators officially had until recently no such support at all, unofficially some really janky stuff (third-party apps needed to be either compiled in the firmware or be custom linked at fixed addresses, using array of pointer functions for API...) and the newly introduced official app support is arguably even jankier (fixed applications slots). That hot mess we've stumbled upon is not something you want for your developers and users.
  • HP Prime only had HP PPL until Python support was introduced recently. While these are powerful languages, there's next to no outside support for HP PPL and embedded MicroPython isn't the same as CPython. This makes it very difficult to port existing code to the HP Prime.
  • I don't know much about Casio and modern TI calculators to comment on those, but they have vibrant developer communities with a lot of tooling and documentation available.
It is something that they should definitively involve the community with before they go ahead and start working on that particular feature, to create together a specification that fulfills the requirements of the developers and users instead of second-guessing these and miss the mark.

Re: Spécifications complètes Zero: STM32F413, 5M Flash, 832K

Unread postPosted: 11 Apr 2022, 20:47
by Lionel Debroux
Completely agreed.

Re: Spécifications complètes Zero: STM32F413, 5M Flash, 832K

Unread postPosted: 19 Apr 2022, 10:17
by Ifndev
Le fait que le site soit offline me rends un peu sceptique vis-a-vis de ce projet mais si ça devient vraiment concret, et qu'on peut développer des programmes tiers, j’essaierai sûrement de mettre la main dessus. Comme pour ma n0100 en fait... en espérant une conclusion différente !

Re: Spécifications complètes Zero: STM32F413, 5M Flash, 832K

Unread postPosted: 19 Apr 2022, 11:34
by critor
Peut-être que TI a protesté contre le clavier ?


Exemple avec Casio :
https://www.marks-clerk.com/insights/sh ... or-design/
(sauf que dans ce cas même si le jugement se concentre sur le clavier c'était bien pire : copie du clavier, du boîtier, du logiciel visuellement identique au pixel près, et même un nom de modèle assez proche de celui de l'original à un caractère près)

Re: Spécifications complètes Zero: STM32F413, 5M Flash, 832K

Unread postPosted: 19 Apr 2022, 15:12
by Ifndev
critor wrote:(sauf que dans ce cas même si le jugement se concentre sur le clavier c'était bien pire : copie du clavier, du boîtier, du logiciel visuellement identique au pixel près, et même un nom de modèle assez proche de celui de l'original à un caractère près)


Pour le coup c'est le cas aussi, et c'est assez clair que le clavier est volontairement le même: c'est l'argument de vente principale de Zero d'être parfaitement similaire à la TI.