Updated Firmware selbst ändern und kompilieren (markdown)

Oliver Köster
2022-01-30 16:46:10 +01:00
parent ccb6510909
commit ecbc1f4ada

@@ -1,5 +1,3 @@
# !!!!!! WORK IN PROGRESS !!!!!!!
# Firmware selbst ändern und kompilieren
## Inhalt:
@@ -31,7 +29,7 @@ Hierzu klicken wir links auf das Symbol, welches wie ein Quadrat, bestehend aus
Wer will, kann hier auch gleich das Sprachpaket seiner Wahl installieren (z.B. Deutsch).
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/max_fanspeed_cura.jpg | width = 600px ]]
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/platformio_01_install.jpg | width = 800px ]]
Nach der Installation sollte der blaue Button auf "uninstall wechseln" und links in der Leiste mit den Symbolen ein neues auftauchen, welches wie ein Alien aussieht.
@@ -43,20 +41,25 @@ Ich empfehle, immer eine bestimmte Version des Quellcodes herunterzuladen, da es
Um eine bestimmte Version herunterzuladen, klicken wir links oben auf "switch branches/tags" und dort auf den Reiter "Tags". Hier suchen wir die gewünschte Version und klicken sie an. Daraufhin wechselt die gesamte Quellcodeseite auf den Stand zu diesem Zeitpunkt und man kann oben rechts auf den grünen Button klicken, der mit **Code** beschriftet ist und hier beispielsweise den Code als .zip-Datei herunterladen.
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/max_fanspeed_cura.jpg | width = 600px ]]
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/platformio_02_select_fw_1.jpg | width = 800px ]]
Alternativ liegt übrigens jedem Release auch der zugehörige Quellcode als Zip und tar.gz schon bei. Dies dient als Sicherheit, falls irgendwann doch mal Tags gelöscht werden oder sich das [Repository](https://de.wikipedia.org/wiki/Repository) ändert. Das ist unwahrscheinlich, aber man weiß ja nie ;)
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/platformio_03_select_fw_2.jpg | width = 800px ]]
## 4. Öffnen des Quellcodes in Visual Studio Code / PlatformIO
Haben wir unseren gewünschten Quellcode heruntergeladen, muss dieser natürlich entpackt werden. Am besten an einen Ort, den man leicht wiederfindet, und der nicht zu tief auf der Festplatte vergaben ist, da auch die Pfadlänge gerade unter älteren Windows-Versionen zu einem Problem werden kann.
Der entpackte Ordner sieht nun nicht mehr sehr übersichtlich aus und beinhaltet sowohl sichtbare, als auch versteckte Dateien. (Dazu später mehr).
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/max_fanspeed_cura.jpg | width = 600px ]]
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/platformio_04_unzipped.jpg | width = 300px ]]
Jetzt öffnen wir Visual Studio Code und klicken oben links auf das Symbol mit den zwei Seiten Papier und danach auf **Open Folder**. Hier wählen wir einfach den Ordner aus, den wir eben entpackt haben und warten ein bisschen, bis VSCode alle Erweiterungen geladen hat. Danach begrüßt uns die Oberfläche mit einer Liste auf der linken Seite mit Dateien, die wir eben schon im Ordner gesehen haben.
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/platformio_05_open_folder.jpg | width = 800px ]]
## 5. Das erste mal kompilieren
Der erste Schritt nach dem Öffnen sollte sein, einmal eine Variante der Firmware zu _bauen_, also zu kompilieren. Hier klicken wir links auf das Alien, scrollen in der Liste herunter, bis wir unseren Drucker und die passende Konfiguration gefunden haben (hier im Beispiel ein Mega S mit DGUS Clone Display und TMC2208 Treibern). Dort reicht es, diesen Eintrag "aufzuklappen" und dort auf **build** zu klicken. Das Kompilieren kann je nach Geschwindigkeit des PCs zwischen einigen Sekunden und mehreren Minuten dauern.
@@ -65,7 +68,8 @@ Nach einem erfolgreichen Kompilieren der Firmware, steht unten in dem Terminalbe
Herzlichen Glückwunsch! Du hast das erste Mal eine Firmware kompiliert! :)
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/max_fanspeed_cura.jpg | width = 600px ]]
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/platformio_06_build.jpg | width = 800px ]]
## 6. Firmware auf dem Drucker installieren
@@ -73,7 +77,7 @@ Hier gibt es zwei Möglichkeiten. Entweder, man schließt den Drucker direkt an
Die zweite Möglichkeit ist das sichern der .hex-Datei, um diese dann über Cura oder Octoprint zu installieren. Hierzu gehen wir genau in den Ordner, in dem sich der Quellcode befindet. Möglicherweise müssen versteckte Dateien angezeigt werden, doch der Ort, an dem sich die Firmware befindet, ist immer derselbe: **/Firmwareordner/.pio/build/[VARIANTE]/firmware.hex**
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/max_fanspeed_cura.jpg | width = 600px ]]
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/platformio_07_build_finished.jpg | width = 300px ]]
## 7. Änderungen vornehmen
@@ -83,4 +87,6 @@ Als Beispiel ändere ich hier den Sensor-Pin, welcher normalerweise für den BLT
Also navigieren wir zu **/Marlin/src/pins/ramps/** und suchen hier nach der Datei *pins_ramps.h*. Dort befindet sich ein define 'Z_MIN_PROBE_PIN', welchem man von **2** auf **21** ändern kann. Danach nur noch mit STRG+S abspeichern und die Firmware wie in Abschnitt 5 beschrieben kompilieren.
[[ https://raw.githubusercontent.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/master/images/platformio_08_pin21.jpg | width = 800px ]]
**Fertig!**