π
<-
Chat plein-écran
[^]

Remplacement TI-Python par Adafruit Trinket M0 ou autre

:32ti73: :32ti73e: :32ti73e2: :32ti76f: :32ti80: :32ti81: :32ti82: :32ti85: :32ti86: :32ti82s: :32ti82sf: :32ti82sfn: :32ti83: :32ti83p: :32ti83pb: :32ti83pr: :32ti83pfr: :32ti83pse: :32ti84p: :32ti84pse: :32ti84ppse: :32ti84pfr: :32ti84pcse: :32ti83pfrusb: :32ti82p: :32ti82a: :32ti84pce: :32ti83pce:

Re: Remplacement TI-Python par Adafruit Trinket M0 ou autre

Unread postby zardam » 31 Mar 2019, 10:35

J'ai un peu joué avec les descripteurs USB remontés par CircuitPython, et les premiers octets du nom du périphérique MSC semblent influencer les 4 derniers digits du numéro de version affiché par la calculatrice, mais pour l'instant, je n'arrive pas à faire que la calculatrice ne mette pas à jour le module. C'est peut être un mécanisme de "protection"...
User avatar
zardamPremium
Niveau 9: IC (Compteur Infatigable)
Niveau 9: IC (Compteur Infatigable)
Level up: 34.6%
 
Posts: 233
Images: 13
Joined: 11 Oct 2017, 23:39
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Remplacement TI-Python par Adafruit Trinket M0 ou autre

Unread postby critor » 31 Mar 2019, 10:40

Merci pour ta découverte, c'est très intéressant. :)

Sinon, on a une question pour toi par ici :
viewtopic.php?t=22242&p=241078#p241078
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 42.3%
 
Posts: 41496
Images: 14632
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Remplacement TI-Python par Adafruit Trinket M0 ou autre

Unread postby zardam » 03 Apr 2019, 00:04

J'ai un peu continué mes investigations, et je suis à peu près certain que TI à implémenté une authentification "non triviale" du firmware du module. À suivre...
User avatar
zardamPremium
Niveau 9: IC (Compteur Infatigable)
Niveau 9: IC (Compteur Infatigable)
Level up: 34.6%
 
Posts: 233
Images: 13
Joined: 11 Oct 2017, 23:39
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Remplacement TI-Python par Adafruit Trinket M0 ou autre

Unread postby zardam » 06 Apr 2019, 03:19

J'ai perdu une bonne partie de ma nuit, mais j'ai fini par comprendre le mécanisme d'authentification du module :D

Je vais essayer de préparer un truc sympa si j'ai un peu de temps ce weekend (et bien sûr avec les détails du comment :) )
User avatar
zardamPremium
Niveau 9: IC (Compteur Infatigable)
Niveau 9: IC (Compteur Infatigable)
Level up: 34.6%
 
Posts: 233
Images: 13
Joined: 11 Oct 2017, 23:39
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Remplacement TI-Python par Adafruit Trinket M0 ou autre

Unread postby parisse » 06 Apr 2019, 06:19

Excellent! Voila qui ouvre peut-etre la possibilite de transformer le poisson d'avril du portage de giac sur ti83 en realite.
User avatar
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 77.8%
 
Posts: 3511
Joined: 13 Dec 2013, 16:35
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Remplacement TI-Python par Adafruit Trinket M0 ou autre

Unread postby Lionel Debroux » 06 Apr 2019, 07:51

Très bonne nouvelle, en effet :)
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
User avatar
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 11.2%
 
Posts: 6859
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Class: -
GitHub: debrouxl

Re: Remplacement TI-Python par Adafruit Trinket M0 ou autre

Unread postby critor » 06 Apr 2019, 08:15

Merci @zardam. :)

Par simple curiosité, la validation se ferait comment actuellement ?
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 42.3%
 
Posts: 41496
Images: 14632
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Remplacement TI-Python par Adafruit Trinket M0 ou autre

Unread postby Lionel Debroux » 06 Apr 2019, 12:38

Ce matin, j'ai cherché des boards avec 256+ KB de RAM et 2+ MB de Flash, pour un éventuel portage de giac + giacpy + micropython. Beaucoup de références n'ont pas de telles caractéristiques pourtant pas fantastiques...

Parmi les matériels sympa, il y a:
* le MAX32620 (256 KB RAM, 2 MB Flash) et sa board MAX32620FTHR, https://www.maximintegrated.com/en/prod ... 0FTHR.html / https://os.mbed.com/platforms/MAX32620FTHR/ , qui, contrairement à beaucoup de boards, n'a pas de chip BLE / WiFi;
* le MAX32630 (512 KB RAM, 2 MB Flash) et sa board MAX32630FTHR, http://www.maximintegrated.com/max32630fthr / https://os.mbed.com/platforms/MAX32630FTHR/ , mais là, il y a un chip BT;
* l'Adafruit Feather HUZZAH32 à base d'ESP32, https://www.adafruit.com/product/3405 , 520 KB SRAM + 4 MB Flash (et dual core, mais ça...), donc théoriquement de quoi faire un portage raisonnablement complet de giac, si le code Xtensa est aussi compact que le code ARM ou SH-4. En revanche, WiFi, comme standard sur ESP8266 et ESP32;
* la moins chère et la plus puissante, la WEMOS D32 Pro à base d'ESP32, https://wiki.wemos.cc/products:d32:d32_pro , 4 MB RAM persistante + 4 MB Flash... mais donc WiFi, elle aussi.
* les PyBoards D "récentes", comme celle à base de STM32F767, https://store.micropython.org/product/PYBD-SF6-W4F2 , 512 KB RAM et 2 MB Flash interne + 2 MB Flash externe XIP + 2 MB Flash externe stockage utilisateur. Bien entendu, le portage de MicroPython est "parfait", puisque ce sont les boards de référence (dont l'achat doit aider à financer le développement de MicroPython ?). En revanche, il y a BT + WiFi, et le prix est plus du double de celui des autres boards, qu'on trouve vers 20€ :(

Le pinout des deux boards Maxim est le même que celui des Adafruit Feather, et les deux permettent d'ajouter des chips de Flash QSPI jusqu'à 16 MB, avec XIP bien entendu, ça se vérifie facilement dans les datasheets. On pourrait donc monter les mêmes chips que pour les machines NumWorks, peut-être avec un boîtier différent.

En revanche, gros défaut des deux boards Maxim: je ne vois pas de portage de MicroPython / CircuitPython... c'est évidemment faisable, d'autant que "même pinout que les Feather" implique "même sous-ensemble commun de périphériques" (en revanche, pas nécessairement "mêmes contrôleurs" et encore moins "mêmes MMIOs"), mais c'est du boulot supplémentaire.


Pourquoi pas les Adafruit Feather M4 Express, ItsyBitsy M4 Express ou Metro M4, au fait ? Parce qu'elles n'ont que 192 KB de RAM, mais surtout, que leurs 2 MB de Flash externe QSPI complétant les 512 KB internes sont utilisés par CircuitPython comme stockage de données plutôt qu'en mode XIP pour le code, et qu'il n'y a pas d'autre port QSPI accessible.
Il y a aussi les Teensy 3.6, dont Adafruit fait partie des revendeurs... mais j'ai du mal à trouver des infos claires sur la disponibilité et l'accessibilité d'un bus QSPI. La datasheet de 2200+ pages, c'est bien, mais ce n'est pas ce que je considère comme clair.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
User avatar
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 11.2%
 
Posts: 6859
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Class: -
GitHub: debrouxl

Re: Remplacement TI-Python par Adafruit Trinket M0 ou autre

Unread postby zardam » 06 Apr 2019, 16:36

Par simple curiosité, la validation se ferait comment actuellement


Rien de très compliqué en fait. La calculatrice vérifie principalement 96 octets aléatoirement du firmware, et le numéro de version.

Il y a certainement autre chose, mais qui ne pose pas de problème avec un CircuitPython de base (mais qui coince encore avec une implémentation ad-hoc)
User avatar
zardamPremium
Niveau 9: IC (Compteur Infatigable)
Niveau 9: IC (Compteur Infatigable)
Level up: 34.6%
 
Posts: 233
Images: 13
Joined: 11 Oct 2017, 23:39
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Remplacement TI-Python par Adafruit Trinket M0 ou autre

Unread postby critor » 06 Apr 2019, 16:39

Merci.

Hm. Donc l'application PyAdaptr est incapable en l'état de fonctionner avec un firmware qu'elle ne connaît pas, par exemple une future version officielle ?

J'ignore quelle commande l'application utilise pour récupérer des octets firmware, mais il faudrait donc un firmware qui lui renvoie toujours ce qu'elle veut. Firmware qui devra possiblement être redécliné pour chaque future version de l'application.

Et bref, si la version est bonne mais que les 96 octets ne lui plaisent pas, la calculatrice fait quoi ? Abandon ? Reflash ?
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 42.3%
 
Posts: 41496
Images: 14632
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

PreviousNext

Return to News TI-z80 (TI-73, 76, 80, 81, 82, 83, 84, 85, 86)

Who is online

Users browsing this forum: No registered users and 199 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
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.
1497 utilisateurs:
>1482 invités
>9 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)