π
<-

News 2024
July (2)
June (1)

News 2023
May (2)
April (1)
March (1)

News 2022
March (3)

News 2021
June (1)
May (5)
April (3)

News 2020

News 2019
July (2)
April (1)

News 2018
August (1)
July (1)
June (3)

News 2017
August (2)
July (2)
March (1)

News 2016
April (3)
March (3)

News 2015
August (2)
July (2)
June (1)
May (4)
March (1)

News 2014
August (2)
July (2)
June (1)
May (1)

News 2013
August (12)
July (1)
June (1)
May (5)
April (4)
March (1)

News 2012

Contrôle total HP Prime G2 via JTAG

New postby critor » 04 Jan 2019, 14:52

9783La nouvelle HP Prime en révision matérielle D est sortie pour la rentrée 2018, mais n'est pas encore disponible dans tous les pays et en passant toujours pas en France.
Surnommée HP Prime G2, la machine succède aux révisions matérielles A à C et fait un véritable bond technologique en passant :
  • d'un processeur ARM9/ARMv5 comme sur les TI-Nspire à un processeur i.MX 6ULL de chez NXP, un Cortex/ARMv7 comme chez NumWorks mais cadencé ici à 528 MHz ! :bj:
  • de 32Mio comme sur les TI-Nspire monochromes à 256Mio de SDRAM, et en DDR3 cette fois-ci ! :bj:
  • de 256Mio de mémoire Flash-NAND à 512Mio ! :bj:

Sur les HP Prime G1, Lionel Debroux avait développé le tout premier firmware non officiel.

jean-baptiste boric s'était remarquablement illustré en prenant la suite avec :

Mais suite au changement de processeur, tout ce qui avait été développé en langage machine et donc notamment ces firmwares tiers, ne fonctionne plus. :'(

Tout est donc à recommencer intégralement.

Une des méthodes qui a rendu possibles des tests qui ont à leur tour permis de tels développements sur les HP Prime G1, c'est la prise de contrôle du processeur via son interface JTAG.

Une piste pour trouver le JTAG était de chercher sur la carte électronique un groupe d'au moins 5 points de tests, à identifier par la suite en :
  • TCK
  • TDI
  • TDO
  • TMS
  • TRST ou/et RESET (peuvent partager le même point de test)
  • VCC (alimentation - peut être partagée avec d'autres choses que le JTAG, et donc éloignée des points de test précédents)
  • GND (masse - peut être partagée avec d'autres choses que le JTAG, et donc éloignée des points de test précédents)
  • RTCK (optionnel)

9785Problème sur HP Prime G2, la carte électronique ne présente apparemment rien de tel...

Notons que les HP Prime G1 identifiaient clairement deux points de tests pour une communication série (UART), points que l'on ne retrouve pas non plus ici.

Mais jean-baptiste boric ne se décourage pas pour autant, et a eu l'idée de décoller l'écran de l'autre face de la carte, révélant ainsi plein de points de tests supplémentaires, ici clairement identifiés. Ceux qui nous intéressent ici sont préfixés en JT_, mais sont plus dispersés cette fois-ci :
  • JT_TCK
  • JT_MOD
  • JT_TMS
  • JT_TDI
  • JT_TDO
  • JT_NTRST
On retrouve également les deux points de test du port série UART avec :
  • UART1_RX
  • UART1_TX
Notons aussi des points de test permettant apparemment le rajout d'un lecteur de carte mémoire SD comme sur les HP 49G+ et HP 50G :
  • SD1_DATA0
  • SD1_DATA1
  • SD1_DATA2
  • SD1_DATA3
  • SD1_CMD
  • SD1_CLK
C'est bien sympa de la part de HP de nous avoir ici identifié clairement les points de test qui nous intéressent.
Mais inversement, les avoir cette fois-ci cachés au dos et collé l'écran par-dessus les rend inaccessibles au commun des mortels ainsi qu'à nombre de bricoleurs du dimanche.

Laissons de côté la carte mémoire SD pour le moment, car même si elle est gérée matériellement il faudrait encore le code logiciel pour pouvoir l'exploiter, ce qui ne serait pas raisonnable pour de premières tentatives d'injection de code non officiel.

L'UART est quant à lui resté jusqu'à présent muet comme une carpe malgré les tentatives de jean-baptiste boric.

Par contre, la connexion via une interface JTAG FTDI MPSSE et OpenOCD est bien plus bavarde : :bj:
boricj@debian-boricj:~$ openocd -f Documents/hp-prime/G2/c232hm.cfg -f Documents/hp-prime/G2/imx6ull.cfg
Open On-Chip Debugger 0.9.0 (2018-01-21-13:43)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
adapter speed: 100 kHz
Warn : imx6.sdma: nonstandard IR value
adapter speed: 1000 kHz
Info : clock speed 1000 kHz
Info : JTAG tap: imx6.dap tap/device found: 0x5ba00477 (mfg: 0x23b, part: 0xba00, ver: 0x5)
Info : TAP imx6.sdma does not have IDCODE
Info : JTAG tap: imx6.sjc tap/device found: 0x088c101d (mfg: 0x00e, part: 0x88c1, ver: 0x0)
Info : imx6.cpu.0: hardware has 6 breakpoints, 4 watchpoints
Info : accepting 'gdb' connection on tcp/3333
Info : ttbcr 0ttbr0 900009ttbr1 4a3d30f0
Info : imx6.cpu.0 rev 5, partnum c07, arch f, variant 0, implementor 41
Info : number of cache level 2
Error: cache l2 present :not supported
Info : imx6.cpu.0 cluster 0 core 0 multi core
target state: halted
target halted in Thumb state due to debug-request, current mode: System
cpsr: 0x200000ff pc: 0x8035afd8
MMU: enabled, D-Cache: enabled, I-Cache: enabled


Le processeur est maintenant entièrement à nos ordres, et voici déjà jean-baptiste boric en train de jouer via les commandes ci-dessous avec la partie censée être la plus sécurisée de la machine, les diodes du mode examen : ;)
  • diode rouge :
    • allumer : set GPIO1_DR[7] = 0
    • éteindre : set GPIO1_DR[7] = 1
  • diode verte :
    • allumer : set GPIO1_DR[2] = 0
    • éteindre : set GPIO1_DR[2] = 1
  • diode bleue :
    • allumer : set GPIO1_DR[9] = 0
    • éteindre : set GPIO1_DR[9] = 1


Téléchargement : configuration JTAG OpenOCD HP Prime G2
Source : viewtopic.php?f=69&t=22127#p238167
Link to topic: Contrôle total HP Prime G2 via JTAG (Comments: 9)

-
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.
753 utilisateurs:
>709 invités
>37 membres
>7 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)