Journal [Tuto] Compiler Marlin sur le Raspberry Pi sans Visual Studio Code (spécial Ender-3)

Posté par  . Licence CC By‑SA.
Étiquettes :
4
14
fév.
2023

Dans la continuité de mon précédent journal, voici la méthode pour ne pas utiliser VSCode.

Installation

Seul PlatformIO est nécessaire, installable par la commande pip install platformio (ou python -m pip install platformio si votre pip est mal installé).

Préparation du code

MĂȘme procĂ©dure que la derniĂšre fois, on fait tout pareil de ce cĂŽtĂ©-lĂ .

Compilation

Ouvrez votre terminal, naviguez jusqu'au dossier MARLINFIRMWARE, et lancez la commande platformio run -e <votre_environnement> (ou alors python -m platformio 
 Vous avez compris). Dans mon cas ça donne platformio run -e STM32F103RE_creality. Si vous ne connaissez pas votre environnement, essayer de chercher un peu sur le net, ou alors vous pouvez essayer de le trouver avec :

cat Marlin/src/pins/pins.h | grep <chipset>

(Si vous ne trouvez rien, enlevez quelques lettres Ă  la fin du chipset au cas oĂč.)

Erreurs de compilation

En plus de toutes les erreurs citées dans mon dernier journal, vous pouvez en trouver une autre : « AttributeError: type object 'Callable' has no attribute '_abc_registry' »
Une solution trùs simple : pip uninstall typing (ou alors python -m pip machin
 voilà quoi !)

Conclusion

VoilĂ , c'est la fin.

  • # Pourquoi?

    Posté par  (site web personnel) . Évalué à 4.

    Le seul intĂ©rĂȘt que je vois Ă  compiler Marlin sur un Raspberry, c'est que celui-ci est reliĂ© Ă  l'imprimante 3D et peut lui envoyer le firmware. Il manque donc une derniĂšre Ă©tape pour envoyer le firmware sur l'imprimante.

    Pour ma part j'avais compilé (et uploadé) Marlin avec l'IDE Arduino sur PC pour des Mega2560, ça m'avait l'air plus simple que dans tes tutoriel :)

    Un LUG en Lorraine : https://enunclic-cappel.fr

    • [^] # Re: Pourquoi?

      Posté par  (site web personnel) . Évalué à 3.

      Sinon, avec un raspberry, souvent, on utilise Octoprint et celui-ci contient un plugin permettant de flasher les cartes des imprimantes.

    • [^] # Re: Pourquoi?

      Posté par  . Évalué à 2.

      Mon Raspberry est l'ordinateur le plus puissant dont je dispose, et je fais quasiment tout dessus. Donc pour moi, pouvoir compiler Marlin avec un Raspberry est intĂ©ressant, mĂȘme si je mets ensuite le firmware dans ma carte SD pour l'envoyer Ă  l'imprimante.

      Si ce tutoriel est un peu compliquĂ© Ă  premiĂšre vue, c'est parce qu'il tente de rĂ©soudre tous les problĂšmes auxquels pourraient ĂȘtre confrontĂ©s les trois clampins qui n'utilisent pas la mĂȘme architecture pour leur PC que tout le monde et s'entĂȘtent Ă  vouloir tout compiler sur une pauvre aarch64. Mais sinon, une compilation peut ĂȘtre trĂšs simple et ne poser aucun problĂšme, la partie la plus longue Ă©tant la configuration pour avoir un firmware aux petits oignons.

      Il existe deux versions de Marlin, Marlin 1 et Marlin 2. Si si, je vous assure.
      Marlin 1 est réservé aux imprimantes 8 bits, et Marlin 2 aux 32 bits.
      Si on compilait beaucoup Marlin avec l'Arduino IDE avant, c'est parce qu'il fallait ensuite brancher une carte Arduino Ă  ton imprimante avec le code pour flasher le firmware. Maintenant, grĂące Ă  PlatformIO, on peut compiler beaucoup plus facilement un firmware pour n'importe quelle carte mĂšre, et pas seulement pour l'impression 3d.

      Il y a 10 sortes de gens dans le monde – ceux qui comprennent le ternaire, ceux qui ne le comprennent pas et ceux qui le confondent avec le binaire.

      • [^] # Re: Pourquoi?

        Posté par  (Mastodon) . Évalué à 3.

        Mon Raspberry est l'ordinateur le plus puissant dont je dispose,

        Ça m'en bouche un coin.

        L'autre jour je cherchais une vieille bĂ©cane pour tester des distros sur des machines Ă  moins de 512MB de ram. Et bien maintenant ça ne se trouve presque plus, les gens ne tentent mĂȘme plus de les vendre puisque mĂȘme pour 15-25€ tu trouves dĂ©jĂ  des pc d'occasion avec 4GB de ram alors que mĂȘme les raspberry pi 3 model b sont vendus plus cher.

  • # VSC

    Posté par  . Évalué à 4.

    Il me semble que le nom est Visual Studio Code et donc l'abbréviation serait plutÎt VSC. Parce que VCS, ça fait penser à autre chose.

    « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

    • [^] # Re: VSC

      Posté par  . Évalué à 1.

      En effet, la remarque a déjà été faite dans l'autre journal, j'espÚre qu'un modo puisse bientÎt passer corriger ça.

      Il y a 10 sortes de gens dans le monde – ceux qui comprennent le ternaire, ceux qui ne le comprennent pas et ceux qui le confondent avec le binaire.

      • [^] # Re: VSC

        Posté par  (site web personnel) . Évalué à 3.

        J'ai remplacé VCS par VSCode, comme mentionné dans les commentaires de l'autre journal, et j'ai remis de l'ordre dans le titre. En espérant que ça te convient :)

        Un LUG en Lorraine : https://enunclic-cappel.fr

        • [^] # Re: VSC

          Posté par  . Évalué à 1.

          Merci beaucoup !
          Si tu pouvais faire pareil dans l'autre journal, tu auras toute ma gratitude.

          Il y a 10 sortes de gens dans le monde – ceux qui comprennent le ternaire, ceux qui ne le comprennent pas et ceux qui le confondent avec le binaire.

  • # Un beau bazar

    Posté par  (site web personnel) . Évalué à 1.

    Ca a l'air d'etre un beau bazar:

    https://github.com/MarlinFirmware/Marlin

    "Marlin 1.0 does not support PlatformIO. For older versions of Marlin use Arduino IDE.
    Marlin 1.1 fully supports PlatformIO, and Marlin 1.1.9 even provides an automated build process.
    Marlin 2.0 and up include 32-bit ARM support. PlatformIO is not required for AVR boards."

    Tout ca pour cross compiler un peu de C?

Suivre le flux des commentaires

Note : les commentaires appartiennent Ă  celles et ceux qui les ont postĂ©s. Nous n’en sommes pas responsables.