π
<-

Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium CE

: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:

Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium CE

Unread postby critor » 26 May 2019, 21:35

10901
Le module externe TI-Python permet à ta TI-83 Premium CE d'exécuter des scripts Python.

Nous avions déjà vu que le module externe TI-Python pour ta TI-83 Premium CE :
  • était bien modeste en capacités, et utilisait en conséquence une implémentation Python assez légère, CircuitPython d'Adafruit
  • qu'il était possible de recompiler une version un peu plus étoffée de CircuitPython, notamment avec la gestion des nombres complexes et le module cmath associé, mais que c'est difficile à maintenir ou faire évoluer tellement on se retrouve à la limite des capacités matérielles
  • que l'utilisation de tels firmwares non officiels n'était pas sans inconvénients, puisque l'application PyAdaptr côté calculatrice vérifie le firmware du module externe, et le remplace si il ne lui plaît pas

10213Ce week-end, nouveau triple exploit de zardam le magicien.

Il a eu l'idée de rajouter dans son module externe TI-Python une pyboard ESP8266, carte de développement Python qui d'origine fait tourner une implémentation MicroPython beaucoup plus complète. Le TI-Python quant à lui est reprogrammé avec un firmware le faisant se comporter comme un pont série, relayant alors différents messages UART entre la TI-83 Premium CE et la carte ESP8266. :bj:
Techniquement, ce sont les points de tests TP5 et TP6 au dos de la carte du TI-Python qui sont mis à contribution en tant respectivement que RX (réception) et TX (émission).

Plus précisément, le firmware officiel du TI-Python n'est ici pas remplacé. Le firmware alternatif est en fait programmé et amorcé dans la zone de stockage de données qui est de toutes façons inutile dans cette configuration, puisque c'est la carte ESP8266 qui fait tout le travail. Donc quand l'application PyAdaptr de la TI-83 Premium CE tente de vérifier le firmware dans la mémoire Flash du TI-Python elle le trouve et n'y voit que du feu, ne comprenant pas que ce firmware qui reste bel et bien présent en mémoire aux mêmes adresses n'est pas celui qui est amorcé. :P

Mais ce n'est pas tout. Suivant le chemin des cartes de développement, de plus en plus de Pyboards disposent d'une antenne sans-fil exploitable en WiFi et/ou Bluetooth, et c'est le cas de l'ESP8266. Comme démontré dans la vidéo qui suit, depuis un ordinateur tu peux donc te connecter en WiFi sur l'ESP8266, et ainsi par extension envoyer des données sans fil sur ta TI-83 Premium CE, même en mode examen : :o

Source : https://zardam.github.io/post/ti83-python-2/ via viewtopic.php?f=10&t=22632&p=242477#p242477
Code source : https://github.com/zardam/tipythonserial
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48.1%
 
Posts: 41993
Images: 15900
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium

Unread postby edgar13 » 28 May 2019, 17:40

Mes programmes sont ici: archives_cat.php?auteur=201254
User avatar
edgar13Modo
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 97.4%
 
Posts: 589
Images: 24
Joined: 04 Jan 2019, 20:31
Location: Sur TI-Planet voyons
Gender: Male
Calculator(s):
MyCalcs profile
Class: 2eme annee de medecine
YouTube: Non
Twitter: Non
Facebook: Non
GitHub: Non

Re: Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium

Unread postby edgar13 » 28 May 2019, 18:30

Je me demande quelle est la distance maximale PC-Module? :#roll#:
Mes programmes sont ici: archives_cat.php?auteur=201254
User avatar
edgar13Modo
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 97.4%
 
Posts: 589
Images: 24
Joined: 04 Jan 2019, 20:31
Location: Sur TI-Planet voyons
Gender: Male
Calculator(s):
MyCalcs profile
Class: 2eme annee de medecine
YouTube: Non
Twitter: Non
Facebook: Non
GitHub: Non

Re: Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium

Unread postby critor » 28 May 2019, 18:31

Tu nous diras. ;)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48.1%
 
Posts: 41993
Images: 15900
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium

Unread postby Lionel Debroux » 28 May 2019, 18:34

L'USB est limité aux environs de 5m, j'avais vu que c'était une histoire de timings.
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.3%
 
Posts: 6865
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Class: -
GitHub: debrouxl

Re: Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium

Unread postby wawachief » 08 Jun 2019, 11:34

Je viens de tester et ça marche bien. C'est assez impressionnant, voire même effrayant, de voir la TI83 connectée au wifi. Cela laisse à penser que l'adaptateur TI Python doit être interdit au bac !
Image

J'ai utilisé un wemos d1 mini. Il faut raboter l'intérieur du cache transparent pour que ça rentre.

Bravo à Zardam pour cet exploit !
User avatar
wawachief
Niveau 2: MI2 (Membre Initié)
Niveau 2: MI2 (Membre Initié)
Level up: 93.3%
 
Posts: 44
Joined: 10 Nov 2013, 08:57
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium

Unread postby critor » 08 Jun 2019, 11:38

Merci.

On peut avoir quelques photos ciblant le montage ?
Si bien sûr ce n'est pas trop fragile.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48.1%
 
Posts: 41993
Images: 15900
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium

Unread postby critor » 08 Jun 2019, 11:49

Personnellement, je doute que grand monde le fasse. Il faut reprogrammer le boot si j'ai bien compris, à partir d'une documentation qui à ce jour n'est selon moi pas exhaustive pour le non spécialiste (mais tu nous diras), ce qui met le TI-Python dans un état où il n'est plus fonctionnel seul, et ne peut plus être restauré facilement à son état d'origine. En gros, si tu rates la manip, il est presque bon pour la poubelle.

Bref, c'est très technique, possiblement que les rares candidats qui en seraient capables seront ceux qui en auront le moins besoin.

Egalement, il ne sera pas très malin d'utiliser le Wifi du centre d'examen... ni un smartphone qu'il va falloir laisser allumé alors que l'on te demande de l'éteindre, et même si on en apporte deux pour en éteindre un devant le surveillant tout en laissant l'autre allumé quelque part, ça risque quand même d'attirer l'attention (écran, sonnerie, vibreur, alertes SMS/courriel/batterie...). En prime, l'autonomie du smartphone chute nettement lorsque utilisé en tant que relais 3G/4G <-> WiFi.

L'idéal pour le fraudeur, c'est un appareil dédié qui fait le relais 3G/4G <-> WiFi, comme déjà utilisable avec les calculatrices Android de Lexibook :


Pas d'écran, pas de sonnerie, pas de vibreur, pas d'alertes, ne ressemble pas au smartphone interdit, consommation batterie optimisée pour le mode relais 3G/4G <-> WiFi. Juste à le dissimuler pas trop loin de sa salle/place. Dans un rayon de 10 mètres je dirais. Peut-être davantage selon le modèle ou avec les murs en papier de certains centres.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48.1%
 
Posts: 41993
Images: 15900
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium

Unread postby wawachief » 09 Jun 2019, 08:20

Voici des images du montage :

Image Image

Image Image

Le plus délicat est de charcuter le capot transparent pour enlever la structure interne. Il tient encore très bien sans vis grâce aux pitons sur le côté.

La carte ESP8266 est une Wemos D1 mini. Elle est un peu grosse. Si j'avais à le refaire je tenterai un module ESP01 ou ESP12 plus compacts, mais il faut une alimentation en 3,3V donc ajouter un régulateur de tension. Je ne sais pas si le 3,3V de la carte TI a assez de pèche pour l'ESP.

Avant de commencer le montage, il faut installer et configurer micropython sur l'ESP. La procédure est décrite ici
https://lecluseo.scenari-community.org/CircuitPython/co/AA_install.html
- Installation de MicroPython : J'ai utilisé la derière version : 1.11
- Configuration du réseau Wifi : notez bien l'adresse IP que vous récupèrerez
- WebREPL pour accéder à distance à micropython par le wifi

Une fois micropython fonctionnel sur l'ESP, vous pouvez attaquer les connexions, cela a été très bien expliqué sur les différents posts, je récapitule:
TP11 -> G
TP1 -> 5V
TP6 -> RX
TP5 -> TX
J'ai soudé un condensateur électrolytique de 100uF entre 5V et G (attention au sens)

Concernant le côté logiciel, cela a été parfaitement conçu et documenté par Zardam. J'ai récupéré le contenu par git, lancé le script build et ai obtenu en qqes instants les deux binaires au format uf2. Il faut dire que ma machine (sous linux) possèdait déjà tous les outils de compilations nécessaires car j'avais déjà compilé circuitpython dessus. L'installation des outils pour compiler circuitpython est décrite ici : https://learn.adafruit.com/building-circuitpython/linux

Une fois le boitier branché à la TI, pyAdaptr fera une mise a jour mais qui ne sert a rien puis on accèdera à Python. Il faut bien comprendre que le python auquel on a accès alors n'est pas circuitpython de la carte TI mais le micropython de la carte Wemos. Les modules, la mémoire disponible sont donc ceux de la wemos, ce qui permet entre autre d'utiliser les modules network et urequest pour les accès internet.

Dernière chose : Cette bidouille n'est à réaliser que pour une utilisation chez soi, afin de réaliser des projets sympas autour de l'innternet des objets (récupérer la météo sur sa calculatrice par exemple). Il est hors de question de l'utiliser au bac car il n'y a ici aucune ambiguité : c'est illégal et sera considéré comme une fraude !
User avatar
wawachief
Niveau 2: MI2 (Membre Initié)
Niveau 2: MI2 (Membre Initié)
Level up: 93.3%
 
Posts: 44
Joined: 10 Nov 2013, 08:57
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Rajoute MicroPython + WiFi sur TI-Python pour 83 Premium

Unread postby critor » 09 Jun 2019, 08:39

Merci pour toutes tes précisions détaillées. :)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48.1%
 
Posts: 41993
Images: 15900
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Next

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 7 guests

-
Search
-
Social TI-Planet
-
Featured topics
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 !
1234
-
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.
1039 utilisateurs:
>1005 invités
>25 membres
>9 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)