K1/K1 Max Guppy Screen fragen

  • Die nutzen da buildroot linux , damit macht man eigene Minimal OS für z.B. embedded Systems. Wären die beim Board nicht so geizig, hätte man ein normales Linux installieren können. Aber gibt schon Mods im D3vil Team Discord wo sie einen RASP reinhängen bzw. das Board tauschen.

  • Interessante Infos dev09 halt mal wieder so eine Creality Lösung wobei die MKS pi und andere Boards ja auch so ihre Tücken haben.


    Aber dann geht das Lidar und Auto Leveling nicht mehr mit anderem Board oder?


    Ich bin mit meinen raspis sehr zufrieden läuft gut keine Update Probleme und ich kann installieren was ich will :) ( Kein K1 )

  • Code
     apt-get install ca-certificates -y

    Das könnte helfen ( falls so ein Fehler kommt ein sudo davor setzen ).

    Aber auf eigenes Risiko ;)

    ( das sollte die TLS cerificat validation installieren die ja scheinbar fehlt)

    hmm geht nicht weil apt-get nicht gefunden wird

    𝘒1 𝘔𝘢𝘹 , 𝘌𝘯𝘥𝘦𝘳 3 𝘝2 ,2𝘹 𝘌𝘭𝘦𝘨𝘰𝘰 𝘔𝘢𝘳𝘴 2 𝘗𝘳𝘰 , 𝘝𝘰𝘳𝘰𝘯 𝘛𝘳𝘪𝘥𝘦𝘯𝘵 (𝘪𝘮 𝘢𝘶𝘧𝘣𝘢𝘶) 𝘶𝘯𝘥 𝘦𝘪𝘯 𝘈1 𝘮𝘪𝘯𝘪

  • Ich habs auf meinem Max installiert bekommen, ist allerdings etwas fummelig. Ist nicht zu kompliziert aber vielleicht auch nichts für blutige Anfänger im Linux-Umfeld, diese sollten auf jeden fall Geduld mitbringen. Auch muss einen kleine Änderung an Klippy selbst gemacht werden, da die Version von Creality "etwas" angestaubt ist und eine für autotune nötige Hilfsfunktion fehlt.


    Hier eine Anleitung (mit FW 1.3.3.8) - ich versuch die Schritte sogut es geht zu erklären:

    Alles auf eigene Gefahr!


    Was wird benötigt:

    1. root (ist denke ich logisch)
    2. Entware um mit opkg z.B. bash nachzuinstallieren
    3. Etwas Geduld

    Entware lässt sich mit dem Creality-Script-Helper installieren. (siehe https://github.com/Guilouz/Creality-Helper-Script)


    Schritt 1 - opkg paketliste updaten:

    Einloggen via SSH auf dem Drucker und opkg paket-liste updaten

    Code
    opkg update

    Das Ergebnis sollte ungefähr so aussehen, evtl. ist die liste etwas länger:


    Schritt 2 - Bash installieren:

    Bash installieren, viele scripte nutzen bash-scripting und möchten auf anderen shells nicht - ist also so oder so keine schlechte idee das auf dem Drucker zu haben.

    Code
    opkg install bash

    Ergebnis sieht dann so aus:

    Oder sollte bash schon installiert sein so:


    Hinweis: Wer möchte kann sich auch den Midnight-Commander mit installieren, das macht das bearbeiten von Dateien und Navigieren auf dem System etwas angenehmer, zumindest meiner meinung nach - ist aber nicht notwendig:

    Code
    opkg install mc
    
    #starten:
    mc
    
    #Beenden mit F10, Datei ansehen F3, bearbeiten F4, etc. Ist wie der Norton-Commander, wenn's noch jemand kennt :)

    So sieht das dann aus:

    Ist wie gesagt aber nur eine Empfehlung und nicht notwendig.


    Schritt 3 - autotune laden:

    Autotune selbst schlägt folgendes vor - das geht aber bei uns nicht so einfach:

    Code
    wget -O - https://raw.githubusercontent.com/andrewmcgr/klipper_tmc_autotune/main/install.sh | bash

    Wir müssen das installscript erst herunter laden, da wir eine modifikation vornehmen müssen. Wir nutzen dazu diesen Befehl:

    Code
    wget -O - https://raw.githubusercontent.com/andrewmcgr/klipper_tmc_autotune/main/install.sh > install.sh

    Ergebnis sollte so aussehen:


    Jetzt habt ihr die install.sh im /root liegen:


    Schritt 4 - install.sh von autotune anpassen:

    Das installscript ist für ein richtiges linux geschrieben, zusammen mit einer normalen klipper-installation wie sie z.B. auf einem Raspberry Pi stattfinden würde. Entsprechend müssen wir ein paar anpassungen an Befehlen machen und einige Überprüfungen abschalten.

    Ihr könnt dazu die install.sh auf euren lokalen Rechner herunterladen und dort bearbeiten oder auf dem system mit z.B. nano oder mc.

    Wem das alles zu umständlich ist hänge ich die modifizierte install_sh_tmc_py.zip in den Anhang - Beachtet das ihr diese nach dem hochladen ggf. ausführbar machen müsste chmod 0777 ./install.sh


    Änderung 1 - KLIPPER_PATH:

    In der install.sh findet ihr oben die variable KLIPPER_PATH (Zeile 3):

    Code
    KLIPPER_PATH="${HOME}/klipper"

    Bei der embedded Linux Version liegt klipper unter /usr/share/klipper und nicht im Home-verzeichnis, entsprechend ändern wir den Pfad fest auf:


    Code
    KLIPPER_PATH="/usr/share/klipper"


    AUTOTUNETMC_PATH lassen wir wie er ist, dort ist Home vollkommen ok, heißt das er sich in /root installieren wird.


    Änderung 2 - ln parameter:

    In der funktion link_extension (Zeile 43-48) wird ln aufgerufen um links ins klippy verzeichnis zu erstellen damit autotune geladen werden kann.

    Code
    function link_extension {
        echo "[INSTALL] Linking extension to Klipper..."
        ln -srfn "${AUTOTUNETMC_PATH}/autotune_tmc.py" "${KLIPPER_PATH}/klippy/extras/autotune_tmc.py"
        ln -srfn "${AUTOTUNETMC_PATH}/motor_constants.py" "${KLIPPER_PATH}/klippy/extras/motor_constants.py"
        ln -srfn "${AUTOTUNETMC_PATH}/motor_database.cfg" "${KLIPPER_PATH}/klippy/extras/motor_database.cfg"
    }

    Allerdings kennt die ln version auf dem Drucker den parameter -r nicht. Der parameter generiert einen relativen verweis zur Datei, anstelle eines absoluten. Da wir nicht vorhaben verzeichnisse zu verschieben kann uns das egal sein. Wir entfernen den -r parameter also und ändern das ganze in folgendes (-srfn hat sich in -sfn geändert):

    Code
    function link_extension {
        echo "[INSTALL] Linking extension to Klipper..."
        ln -sfn "${AUTOTUNETMC_PATH}/autotune_tmc.py" "${KLIPPER_PATH}/klippy/extras/autotune_tmc.py"
        ln -sfn "${AUTOTUNETMC_PATH}/motor_constants.py" "${KLIPPER_PATH}/klippy/extras/motor_constants.py"
        ln -sfn "${AUTOTUNETMC_PATH}/motor_database.cfg" "${KLIPPER_PATH}/klippy/extras/motor_database.cfg"
    }


    Änderung 3 - Preflight Checks deaktivieren:

    Bevor das script seine arbeit tut prüft es mittels der Funktion preflight_checks einige sachen ab. Es prüft das wir _nicht_ root sind. Dummerweise sind wir das - wie so häufig bei embedded systems. Und es prüft ob der klipper service da ist. Leider listed systemctl das in diesem Linux nicht auf was entsprechend ebenfalls zu einem Abbruch führt.

    Die funktion wird in Zeile 62 Ausgeführt:

    Code
    # Run steps
    preflight_checks #<- die hier
    check_download
    link_extension
    restart_klipper

    Wir kommentieren sie einfach aus:

    Code
    # Run steps
    #preflight_checks
    check_download
    link_extension
    restart_klipper


    Das war es in der install.sh. Ihr könnte diese jetzt speichern und ggf. wieder auf den Drucker laden. Von hier geht's wieder in der ssh console weiter:


    Wichtig: Zwar könnt ihr autotune jetzt installieren ohne Schritt 6 wird es aber nicht funktionieren und Klipper wird euch das ganze mit einem Fehler quittieren. Ihr müsst also zwingend auch Schritt 6 ausführen wenn ihr von hier weiter macht.


    Schritt 5 - Autotune Installieren:

    Jetzt kommt der einfache Teil. Das script lässt sich jetzt ausführen und installieren mittels

    Code
    bash ./install.sh

    Ergebnis sollte so aussehen:


    Wir müssen das ganze mit bash starten da es sich um ein bash script handelt. Zwar hat die Datei im header eine Shebang (#!) anweisung, diese funktioniert aber auf dem linux nicht wie sie sollte und würde uns mit einem permission denied abspeisen:

    Also einfach bash davor und los gehts :)


    Und in unserem /root Verzeichnis finden wir den ordner klipper_tmc_autotune. Hier residiert autotune ab sofort.


    Die install.sh könnt ihr jetzt - wenn ihr wollt - problemlos löschen.


    Schritt 6 - Klipper anpassen:

    Jetzt müssen wir noch Klipper bzw. Klippy nachrüsten. Der Version von Creality ist "etwas" älter und ihr fehlt eine Funktion die Autotune gerne benutzen würde: TMCtstepHelper. Leider hat Creality an der Version rumge(m/pf)uscht und auch einige properitäre Sachen eingebaut, ein simples update direkt vom Klipper-Repo fällt also aus. Die gute Nachricht ist das TMCtstepHelper nur etwas ausrechnet und keine anderen Abhängigkeiten hat. Wir können also die funktion einfach in die richtige Datei kopieren.

    Auch diese hänge ich als zip an. ABER ich gebe zu beachten das die install_sh_tmc_py.zip aus der FW 1.3.3.8 kommt, und ich nicht verglichen habe ob sich hier etwas zur Version 1.3.3.5 geändert hat. Nutzt ihr also eine ältere Version solltet ihr sichheitshalber das ganze manuell machen.



    Also was muss geändert werden?

    Wir müssen die Datei tmc.py ändern. Diese findet ihr auf dem Drucker unter /usr/share/klipper/klippy/extras. Bitte sichert die Datei vorher, falls doch irgend etwas krum läuft beim editieren.


    Die Änderung ist glücklicherweise recht simpel. Ihr müsst folgenden Code-Snippet an's Ende der Datei kopieren:


    Code
    # Helper for calculating TSTEP based values from velocity
    def TMCtstepHelper(step_dist, mres, tmc_freq, velocity):
        if velocity > 0.:
            step_dist_256 = step_dist / (1 << mres)
            threshold = int(tmc_freq * step_dist_256 / velocity + .5)
            return max(0, min(0xfffff, threshold))
        else:
            return 0xfffff


    Im Klipper Repo findet ihr die Datei und funktion unter https://github.com/Klipper3d/k…klippy/extras/tmc.py#L586


    Das war's Datei Speichern und ggf. wieder hochladen.


    Das war's schon. Drucker neustarten und autotune sollte euch zur Verfügung stehen.


    Rollback:

    Sollte irgendwas klemmen könnte ihr autotune einfach deaktivieren indem ihr unter /usr/share/klipper/klippy/extras die datei, bzw. den link zu datei autotune_tmc.py und autotune_tmc.pyc löscht und ggf. die original tmc.py wieder einspielt. Nach einem Neustart sollte Klipper autotune dann nicht mehr laden.


    Konfiguration findet ihr auf der autotune seite. Ich mach demnächst aber noch ein kleines follow-up dazu, wenn ihr wollt, mit den passenden motorennamen und einer geänderten config für die motoren die auch den Z-Stepper von Creality enthält. Für den Extruder hab ich leider keine Daten gefunden.


    Alternativen:

    Wem das alles zu kompliziert ist, oder dem autotune nicht traut, und trotzdem etwas optimieren möchte lege ich folgendes ans Herz:


    Das TMC2209 Calucation Sheet:

    https://www.analog.com/media/en/engineering-tools/design-tools/TMC2209_Calculations.xlsx


    und eine Kurzanleitung:

    External Content www.youtube.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

Disclaimer:
*Externe Links enthalten Affiliate Daten. Wird über diese Links etwas bestellt, erhalten wir eine kleine Provision, Euch kostet es nichts Extra.
**Als Amazon-Partner verdienen wir an qualifizierten Verkäufen.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!

Unread Threads

    1. Title
    2. Replies
    3. Last Reply
    1. SV08 174

      • Masterofknaeckebrot
    2. Replies
      174
      Views
      14k
      174
    3. Jogi-Wan

    1. Druckkopf nicht mittig 8

      • Joba62
    2. Replies
      8
      Views
      83
      8
    3. ma_v

    1. Suche Konstruktionsprofile für Gehäusebau 3

      • Painless Potter
    2. Replies
      3
      Views
      23
      3
    3. agent47

    1. 3D Relief Buchstaben 2

      • PrinterDD
    2. Replies
      2
      Views
      40
      2
    3. Print in 3D

    1. K1 / K1 Max Smalltalk 575

      • unic
    2. Replies
      575
      Views
      22k
      575
    3. Fcsmini