Aller au contenu

GO Print

Marlin : comment le reverse engineering a été effectué ?


coliss86

Messages recommandés

Bonjour,

 

je suis curieux de savoir par quels moyens techniques vous avez pu faire marcher marlin sur la U20.

Etes vous parti du firmware proprietaire puis analyser le contenu ? ou bien à partir de la doc constructeur du cpu vous avez commencer à faire un "hello world" ? J'ai suivi le début des échanges de cette aventures et j'ai constaté qu'il y avait un oscilloscope qui a été utilisé ainsi qu'un ST Link (que j'avais acheté en prévision).

D'après ce que j'ai compris, l'écran a son propre firmware également, comment il communique avec la CM ? Via un bus série comme on peut le voir sur certaines autres plateforme (MKS Gen L + TFT)

Je ne veux pas savoir comment configurer le firmware mais bien comment le processus de dev a pu aboutir.

 

Merci pour vos éclaircissements 🙂

Lien vers le commentaire
Partager sur d’autres sites

Salut @coliss86,

En ce qui me concerne, j'ai commencé par curiosité à savoir quelle base de firmware comportait la machine et creuser son bootloader.

J'ai bricolé avec quelques outils de "décompil" pour voir ce que c'était. Cela m'a poussé à demander aux intéressés (fabriquant), des infos techniques qu'il n'était pas possible d'avoir. A force de harcèlement, et d'autres choses que je ne peut citer ici, j'ai fini par obtenir un premier schéma puis un deuxième. On les a parcouru et même un peu corrigés.

Ensuite est venu le travail sur Marlin, en l'adaptant avec ce que les schémas présentaient. Sinon le détail fait 125 pages 😅

Modifié (le) par CacaoTor
  • +1 1
  • Merci ! 1
Lien vers le commentaire
Partager sur d’autres sites

  • 6 months later...

Bhein pour que ca marche on y est alle pas a pas... 

1 - le STM 32 / Core à ete porte dans Marlin, et ca a bien aide. 

2 on a analyse longtemps les schemas pour identifier tous les composants, et voir ce qui etait deja fait, et ce qui manquait comme drivers - L'ecran

3 - on a identifie un codeur qui avait fait l'interface de l'ecran dans marlin, dans un configuration proche.. JMZ32

4 on a mis tout ca ensemble....

5 on a sorti un analyseur logique pour trouver pourquoi ce qui devait marcher ne marchait pas! le plus gros bug HW de la carte : Le port SPI avec miso / mosi inverses, du coup driver SW pour le trouchscreen.. Le plus gros bug : un problème dans le contrôleur d’interruption du STM32... oui oui ... 

Cacaotor, Epsylon3 et moi meme travaillons dans l'electronique et l'informatique... Ca aide. 

La phase de documentation a dure environ 2 mois. Le portage initial environ 2 mois afin d'avoir l'image, et le nettoyage du code pour avoir qqchose de vraiment fonctionnel au moins 4 mois. 

 

Et voila! 

Modifié (le) par Hobi
Lien vers le commentaire
Partager sur d’autres sites

Bon ben cela parait assez facile pour un béotien comme moi. Mais je suis toujours bluffé par ce genre de travail, et surtout par la mise à disposition sans contrepartie.

C'est pourquoi je veux vous remercier pour ce travail, cela va changer cette machine de fond en comble;

Donc un grand MERCI à vous.

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...