Hier findet ihr jeweils die aktuellen Version meiner angepassten Firmware für den Tevo Tornado.

Standard Firmware

Diese Firmware-Versionen sind für Tornados der 2. Generation gedacht, die ab Werk mit dem MKS Gen L Mainboard und A4988 Treibern ausgestattet sind.

    • BLTouch Versionen ab 1.1.9 mit Offsets in der Firmware gemäß Vorgaben für Petsfang. Bei anderen Haltern muss ggf. Offset angepasst werden
    • Unified Bed Leveling (UBL) in der BLTouch Version
    • Custom Bootscreen
Tornado (2018 Gold) Marlin 1.1.9 für MKS Gen L, Standard-Treiber und BLTouch

TMC2130 Firmware

Ihr findet unten verschiedene Versionen, die alle für einen umgebauten Tornado mit MKS Gen L Mainboard und Trinamic TMC2130 Treiber ausgelegt sind. Alle umfassen im Wesentlichen aber die gleichen Features:

    • Volle Unterstützung für TMC2130 mit SPI Bus*
    • HybridMode (StealthChop bis 100mm/s, SpreadCycle >100mm/s, bzw 30mm/s für E)*
    • Driver Health Monitoring (Schutz vor Überhitzung der Treiber)*
    • Microstepping Interpolation auf 256 Microsteps
    • Sensorless Homing auf X und Y*
    • TMC Debugging per Gcode M122*
    • BLTouch Versionen ab 1.1.9 mit Offsets in der Firmware gemäß Vorgaben für Petsfang. Bei anderen Haltern muss ggf. Offset angepasst werden
    • Unified Bed Leveling (UBL) in den BLTouch Versionen
    • Custom Bootscreen

* Diese Features sind NICHT in der TMC2130 Standalone-Version enthalten

Aktuellste Downloads (Marlin 1.1.9)

Tornado Marlin 1.1.9 für MKS Gen L mit TMC2130 Tornado Marlin 1.1.9 für MKS Gen L mit TMC2130 und BLTouch Tornado Marlin 1.1.9 für MKS Gen L mit Standalone TMC2130 Tornado Marlin 1.1.9 für MKS Gen L mit TMC2130, E3D V6 Hotend und BLTouch

Achtung: Firmware für E3D V6 Hotends gilt für das originale Hotend. Bei Nachbauten können Anpassungen erforderlich sein

Vorherige Versionen

Tornado Marlin 1.1.8 für MKS Gen L mit TMC2130 und BLTouch Tornado Marlin 1.1.8 für MKS Gen L mit TMC2130

Support

Hast du Fragen zur Firmware oder Probleme bei der Nutzung? Dann nutze bitte die Kommentarfunktion, um mich zu kontaktieren.

41 Gedanken zu “Firmware”

  1. Klasse Anleitung, aber welche Firmware kann ich denn nun für den “normalen” Ender 3 einsetzen? In keiner der aufgeführten Files finde ich eine HEX Datei. Stehe gerade etwas auf dem Schlauch. Vielen Dank im Voraus.

    1. Hallo Herb,

      nur der Vollständigkeit halber: Alle Firmware-Versionen hier sind für den Tevo Tornado ausgelegt. Die kannst die grundsätzlich zwar auch für den Ender 3 nutzen, aber in dem Fall müsstest du einige Anpassungen vornehmen, wie die Größe des Druckbereichs, den Punkt fürs Homing, ggf. auch Temperaturlimits und Pinbelegungen.
      Die HEX kannst du dann auch selbst über die Arduino IDE erzeugen. Wie das geht habe ich hier beschrieben. Falls du keine .hex findest, suche mal nach einer .bin, habe schon gehört, dass manchmal auch die erzeugt werden. Würde dann auch funktionieren.

  2. Hallo,
    wäre super wenn Du mir bei einem Problem helfen könntest.Ich habe nun schon verschiedene Firmware ausprobiert jedoch hat das Display immer so kommische Grafikfehler mit kleinen strichen und die Schrift kann man nicht richtig klar lesen…es muss irgendwas zuviel aktiviert sein habe ich das gefühl.
    Vieleicht auch die Encoder settings….?
    Auch die Firmware von tevo.cn macht diesen Fehler.
    Vor dem update war alles gut…bin am verzweifeln.

    Gruß Jörg

    1. Hallo Jörg,

      also wenn du sagst, dass der Fehler mit sämtlicher Firmware, selbst der originalen von Tevo auftritt, dann klingt das für mich weniger nach einem Software-, als nach einem Hardwareproblem. Hast du denn an der Hardware irgendwas verändert oder hattest du die Box mal offen? Womöglich ist nur eines der beiden Flachbandkabel, über die das Display angeschlossen wird, lose. Oder dein Display hat eine kalte Lötstelle. Denn im Bezug auf das Display und den Encoder entspricht zumindest bei meiner Firmware alles den Vorgaben aus der werksseitigen Firmware.

      Ist natürlich merkwürdig, dass es ausgerechnet nach dem ersten Flashen aufgetreten ist. Aber ich habe bislang noch nichts gehört, dass die Firmware das Display zerschießen würde, wenn man nicht grad den komplett falschen Typ in der Firmware definiert hat. Das wäre dann aber schon bei anderen aufgefallen, inkl. mir, denn ich nutze meine Firmware ja selbst auch. Falls es das Display bzw. das Modul ist, bekommt du das recht günstig in China als Ersatzteil: Makerbase RepRap Full Graphic LCD

      1. Hallo Kevin,danke für Deine schnelle Antwort.
        Die Flachbandkabel habe ich heute mal überprüft,da ist alles in Ordnung.Schon merkwürdig das es nach dem Flashen aufgetreten ist.In einem Forum wo jemand das selbe problem hatte wurde ein tip gegeben was in der Config auszuslashen,leider finde ich das forum nicht mehr…und kann mich auch nicht erinnern was es war,irgendwas mit den LCD einstellungen oder so…es war aber nicht in der Config.h oder adv.h…

        Falls ich das nicht hinbekomme…soll ich mir das Original Display bestellen oder gibt es auch bessere Alternativen?
        Gruß Jörg

        1. Ich habe gerade gemerkt das wenn ich an dem Drehknopf drehe die fehler stärker werden…
          scheint doch was mit der Software zu sein?

          Gruß Jörg

          1. Hallo Jörg,

            aus der Ferne ist das ziemlich schwer zu sagen. Einen Hardware-Defekt würde ich nach wie vor nicht ausschließen. Wenn du am Knopf drehst, ändern sich ja die Anzeigen auf dem Display und es werden Daten vom Display-Board zum Mainboard übertragen. Hast du irgendwo eine kalte Lötstelle oder andere Defekte, kann das schon dazu führen, dass korrupte Daten an das Display gehen und dir dann Quatsch angezeigt wird. Wie gesagt, bislang habe ich nicht von softwareseitigen Problemen gehört, zumal es offenbar Versions-unabhängig auftritt.

            Wenn du ein neues Display bestellst, nutze ruhig das originale, das ich dir verlinkt habe. Es soll ja auch wieder in die Box passen und was schlechteres willst du sicher nicht. Besseres gäbe es z.B. in Form eines farbigen Touchscreens, wie dem MKS TFT32. Aber das funktioniert eigentlich nur als Ergänzung zum originalen LCD, nicht als Ersatz, da es einige Menüs und Funktionen nicht ansteuern kann.

  3. Ich besitze einen “stinknormalen” Tevo Tornado (im März 2018 erhalten). Habe mir einen BL Toch Sensor (BIQU Nivellierungssensor für BL-Drucker, für Kossel Delta Rostock – Amazon) besorgt und installiert (rein hardwaremässig). Ich habe nun keine Ahnung welche Software ich jetzt nehmen kann. Kann mir da wer helfen? Liebe Grüße
    Peter aus Wien

    1. Hallo Peter,

      wenn du im März 2018 gekauft hast, nehme ich an, dass du zumindest schon das neuere Modell mit dem werkseitigen MKS Gen L Board hast? Erkennbar vor allem daran, dass die Controlbox nur üben Lüfter hat.

      In dem Fall könntest du eine der hier veröffentlichten BLTouch Versionen nehmen und die Treiber-Konfiguration anpassen. Ich kann aber später auch gern eine entsprechende Version erstellen und hier hochladen.

    2. Hi Peter,

      Firmware hab ich dir hochgeladen und hier abgelegt. Bitte gern Feedback dazu. Kompilieren tut sie ohne Probleme, aber real testen, kann ich sie natürlich nicht.

  4. Hallo,

    geniales Projekt,habe mir auch schon die Platine für die LED-Steuerung bestellt 🙂

    Frage meinerseits: Wird es aucheine Version der Marlin 2.xx von Dir geben?

    Viele Grüße

    Burkhard

    1. Hallo Burkhard,

      vielen Dank! Deine Bestellung habe ich auch heute schon bei der Post abgegeben. Der Weg ist ja kurz, sollte also bald bei dir sein.

      Ich hatte schonmal eine 2.x an dieser Stelle veröffentlicht, habe sie aber gerade vor kurzem erst wieder rausgenommen. Dafür habe ich mich bewusst entschieden, weil 2.x nach wie vor in Entwicklung ist. Ich hatte damals eine Version erstellt, aufbauend auf einer recht frühen DEV-Version. Die habe ich aber nicht weiter gepflegt und aktualisiert, weil dann 1.1.9 kam und darin vieles enthalten war, was die 2.x zu dem Zeitpunkt auch hatte und sogar einiges darüber hinaus. Da 1.1.9 ein Stable Release war, habe ich meinen Drucker auch wieder darauf umgestellt und bin dadurch auch wieder das eine oder andere Problemchen losgeworden.

      Inzwischen hat sich sicher einiges getan, aber nach wie vor ist 2.x nicht offiziell released. Mit einem “normalen” Drucker hast du damit also nicht so viele Vorteile. Und mir wäre dafür auch die regelmäßige Pflege zu aufwändig, da sich die Version ja immer wieder, auch recht grundlegend, ändert.

      Nützlich wäre das Ganze derzeit ja nur für die Leute, die schon mit einem 32-Bit Board, wie dem SKR oder dem MKS SBase arbeiten. Da ich ein solches Board noch nicht habe, könnte ich die Firmware dann auch nicht testen und würde sie so ungern anbieten. Aber wenn du schon auf 32-Bit umgestiegen bist und ein entsprechendes Board hast, dann schick mir gern mal deine Spezifikationen zu. Ich kann dann ja mal eine Version dafür aufsetzen und du kannst die für mich testen.

  5. Hallo Kevin,

    na denn hab ich ja bald etwas zu basteln. 🙂

    Bisher bin ich noch nicht auf 32bit umgestiegen, wird aber wohl in Kürze anstehen, dann komme ich gerne nochmal auf Dich zurück. Im Moment wandel ich den guten Tornado erstmal in ein Stand alone modell um, da mir die seperate Box auf den Senkel geht. Da ich nirgends ein Komplett-Satz gefunden hat, der meiner Vorstellung entsprach bastel ich ihn gerade aus drei verschiedenen Lösungen zusammen. Danach ist der BLTouch dran, mit dem ich noch ein bischen auf Kriegsfuß stehe, aber das wird schon.

    Wie ist Deine Einschätzung: Ist der verbaute Tevo Titan für flexible Materialien geeignet? Oder welchen empfiehlst Du da?
    Hatte auch überlegt von Bowden auf Direkt umzusteigen, bin mir nur nicht sicher, ob das der richtige Weg wäre.

    Viele Grüße

    Burkhard

    1. Hallo Burkhard,

      Standalone steht bei mir auch grad auf der Liste. Drucker und Elektronik sollen in ein 19″ Rack umziehen, die Elektronik kommt in ein entsprechendes 19″ Industriegehäuse. Wird aber sicher noch etwas dauern, bis es da vorzeigbare Ergebnisse gibt.

      Flexibles Material habe ich selbst noch nicht gedruckt. Aber grundsätzlich ist es möglich. Du musst nur sehr langsam und ohne bzw. mit minimalem Retract drucken. Der werksseitige Titan sollte das schaffen, da alle Titan Extruder an sich ja einen recht gut geführten Filament-Pfad haben. Evtl. hast du mit dem standard Extruder etwas wenig Grip am Filament, dann würde ich auf den originalen von E3D oder einen guten Clone davon, wie den von Trianglelabs ausweichen. Einen entsprechenden Vergleich der beiden Clones habe ich hier im Blog schonmal gemacht.

  6. Hallo Kevin,

    DANKE gleich vorab für die detailierte Anleitung.

    Nachdem meine Tempeingänge heute gegrillt wurden (k.a. warum)
    steig ich auch gleich mal um auf TMC2130. Am Dienstag sollten so ziemlich alle Teile ankommen, und da wollte ich bis dahin die Firmware in Schuss bringen, um alsbaldigst wieder loslehen zu können.
    Bl-touch hab ich nicht, und werd ich mir auch nicht zulegen, da ich seit dem Umbau auf Hiwin-Führungen nicht einmal was umstellen muste.
    Nun hab ich die Frage zur Version “Tornado Marlin 1.1.9 für MKS Gen L mit TLC2130”
    Wird das x/y Homing per Driver und Z per Switch durchgeführt?

    Danke nochmals und schönes Wochenende
    Martin

    1. Hi Martin,

      danke für dein Kommentar. Die Firmwares ohne BLTouch verhalten sich genau so, wie du das vermutest. X und Y nutzen das Sensorless-Homing der TMC2130 Treiber, Z ganz klassisch den Endstopp-Schalter. Seit der 1.1.9 gibt es auch ein experimentelles Sensorless Homing für Z, aber da hätte ich irgendwie Bauchschmerzen bei. Deswegen habe ich es nicht getestet und werd es auch erstmal hier in keiner Version aktivieren.

    1. Von der Belegung der wichtigsten Pins sollten Gen L und Gen 1.4 gleich sein. Damit müsstest du theoretisch meine Firmware und natürlich auch UBL nutzen können. Der guten Ordnung halber solltest du aber in der configuration.h folgende Zeile ändern:
      #define MOTHERBOARD BOARD_MKS_GEN_L
      zu
      #define MOTHERBOARD BOARD_MKS_GEN_13

      Keine Sorge wegen der 13, das muss so. Es gibt in Marlin nur ein File für das MKS Gen 1.3, das aber das 1.4 ebenfalls mit abdeckt.

        1. Also grundsätzlich gilt auch da das gleiche, nur dass du dann eben als Board “BOARD_MKS_BASE” definieren musst. Ich hab sicher auch noch irgendwo zuhause auf der Festplatte ne Version von meinem Drucker vor dem Umbau rumliegen, aber definitiv keine Version 1.1.9.

          Wenn du aber noch das Base hast, dann lohnt es sich doch auf deine Frage nach einem etwaigen Umbau einzugehen: Das Base hat ja doch ein paar bekannte Probleme (Insbesondere chinesischer Clone-FTDI Chip, der Probleme beim Druck mit Octoprint macht und fest verbaute Treiber, die laut sind und Salmon-Skin produzieren), wenn die dich stören, dann solltest du über ein Upgrade nachdenken. Wenn du aber mit deinem Drucker und den Ergebnissen, die er produziert, zufrieden bist, besteht nicht die unbedingte Notwendigkeit. Dennoch macht so ein Umbau natürlich Spaß, man lernt was dabei und kann gleich noch die Verkabelung etwas aufräumen 😀

  7. Könntest du mir diese Firmware senden? Für erste möchte ich es so belassen, aber Langfristig werde ich vermutlich doch den Umbau wagen. Hab nochmal gelesen Löte ist ja doch nicht von Nöten gibt die Treiber auch schon verlötet.

    1. Kann ich gern nochmal schauen, wenn ich heute Abend zuhause bin.
      Wenn du sensorloses Homing nicht unbedingt brauchst, wären sonst TMC2100 eine Alternative für dich. Da ist nichts zusätzlich zu Verkabeln.

  8. Super,

    Sensorloses Homing hab ich noch nicht durchgelesen, muss ich erst noch machen.
    Neues Board und die Treiber könnt ich mir vorstellen.

  9. Hallo, ich habe das BigTreeTech Skr 1.3 in den Tornado verbaut und bekomme Z-Home nicht hin. X und Y finden ihre Home Position, Z fährt immer 80 – 100 mm nach oben. Dort könnte ich dann drucken 😄 Es ist die aktuelle Marlin-Version 2.0 Als Treiber sind 2130 am werken. Hast du da einen Tip für mich?

    1. Hallo Jürgen,

      hast du da noch ein bisschen mehr Hintergrund-Info für mich? Welche Methode verwendest du denn für das Homing von Z?

      An sich kann es schon gewollt sein, dass die Achse zunächst etwas hoch fährt. Das nennt sich Safe-Homing und soll verhindern, dass die Nozzle übers Bed schabt, während die anderen Achsen homen. Wobei da normalerweise nur 5-10 mm nach oben gefahren wird.

      Möglich wäre, dass dein Z-Offset nicht stimmt. Aber genaueres kann man da erst sagen oder mutmaßen, wenn ich weiß welche Methode du verwendest.

      1. Hallo Kevin,

        ich erstelle die Firmware mit Atom. Wenn ich dann auf Auto-Home beim Tornado stelle, fährt er auch die Endschalter von X und Y an. Bei Z fährt er ein Stück nach oben. Wenn ich jetzt 3x autohome durchführe, ist die Nozzle jedesmal ca. 10 mm höher, also insgesamt 30 mm.

        Was könnte ich falsch eingestellt haben?

        1. Also fürs erste klingt das erstmal so, als wäre da was nicht sauber konfiguriert. Was ist denn, wenn du Z manuell, also über die Controlbox nach oben bewegst. Stimmt dann die Richtung?
          Und womit wird bei dir das Homing für Z gemacht? Über den normalen Endstopp-Schalter oder hast du irgendeinen Sensor, wie einen BLTouch oder sowas?

  10. Mit Pronterface oder auch direkt über die Kontrollbox fährt Z in die richtige Richtung. Ich habe gerade mal probehalber Z invertiert, dann fährt er beim Homing ein kleines Stück nach unten. Was er aber gar nicht macht, ist eine Nullposition bei Z anfahren. Gesteuert wird alles über die normalen Endstopp-Schalter.

    1. Also wenn die Richtung stimmt, die Achse aber erstmal hochfährt und dann stehenbleibt, dann würde ich mal vermuten, dass bei der Firmware etwas nicht passt. Magst du mir vielleicht deine configuration.h und die configuration_adv.h zusenden? Gern an meine info@ Mailadresse. Dann kann ich mir das mal genau ansehen. Vielleicht fällt mir ja was auf.

    1. Also, was mir zuerst aufgefallen ist: Du hast ja sensorless Homing nicht aktiviert, daher nehme ich an, dass du auch an X und Y den klassischen Endstop nutzt? Dann hätten wir das erste Problem hier in der configuration.h:
      // Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
      #define X_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.
      #define Y_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.
      #define Z_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.

      Der Endstop für Z ist nicht invertiert. Bei einem klassischen, mechanischen muss er das aber sein, so wie bei X und Y.

      Weiter gehts im Bereich Homing, denn da finden wir
      /**
      * The BLTouch probe uses a Hall effect sensor and emulates a servo.
      */
      #define BLTOUCH

      Und weiter unten
      * - MESH_BED_LEVELING
      * Probe a grid manually
      * The result is a mesh, suitable for large or uneven beds. (See BILINEAR.)
      * For machines without a probe, Mesh Bed Leveling provides a method to perform
      * leveling in steps so you can manually adjust the Z height at each grid-point.
      * With an LCD controller the process is guided step-by-step.
      */
      //#define AUTO_BED_LEVELING_3POINT
      //#define AUTO_BED_LEVELING_LINEAR
      //#define AUTO_BED_LEVELING_BILINEAR
      //#define AUTO_BED_LEVELING_UBL
      #define MESH_BED_LEVELING

      Deine Firmware ist also für einen Drucker mit BLTouch ausgerichtet (daher auch das hochfahren, wenn du Z homen willst) und nutzt Mesh Bed Leveling. Da der Endstop nicht invertiert ist, löst der in dem Moment aus, wo die Achse sich bewegt.

      Wenn du rein mit Endstops arbeiten willst, musst du die Invertierung bei Z ebenfalls auf true setzen und die beiden aktiven Zeilen für BLTouch und Mesh Bed Leveling müssen auskommentiert werden.

      Ich schick dir die Dateien gleich angepasst zurück. Schau mal, ob es damit klappt.

  11. Habe jetzt die ersten Drucke fertig – wirklich sehr gut. Das Tornado Upgrade lohnt sich auf jeden Fall.

    Ich hätte gerne eine ähnliche Firmware auf dem Tevo Nereus, der hat aber ein MKS Robin Nano und das unterstützt – soweit ich weiß – kein BL Touch.

    Auch erfolgt dort die Konfiguration mittels einer robin_nano_cfg.txt aber auto leveling geht – wie gesagt – wohl nur mit capacitive sensor.

    Eine Möglichkeit wäre wohl, das Board einfach zu wechseln – dann müsste man doch nur die Druckgröße anpassen… Was würdest Du tun? 🙂

    1. Hi Joerg,

      ich kenne das Robin Nano jetzt nicht so genau, aber ich hatte auch im Hinterkopf, dass die MKS Robin Boards mit einer Closed Source Firmware laufen. Wobei, wenn du schreibst, dass es eine config Datei gibt, dann klingt das sehr nach Smoothieware.

      Naja ich hab mal kurz gegooglet und wie es aussieht, kann man durchaus Marlin 2.0 auf dem Robin Nano nutzen. Gibt sogar ein angepasstest Release auf dem Github von Makerbase. Softwareseitig wäre es also kein Problem, da einen BLTouch anzubinden. Was sein kann, aber das kann ich aus dem verfügbaren Material schlecht einschätzen, ist, dass du keinen Anschluss dafür auf dem Board hast. Sollte sich aber auch lösen lassen. Der BLTouch hat ja neben den 2 Leitern für den Endstopp noch drei Kabel: +, – und Signal. 5V Strom bekommst du schon irgendwo abgegriffen und für das Signal brauchts halt einen freien, digitalen Pin. Zur Not könnte man wahrscheinlich einen ungenutzten Endstopp-Anschluss dafür zweckentfremden. Muss nur in Marlin die Pin-Definition angepasst werden.

      Hattest du übrigens meine Mail wegen dem Dankeschön für die Kaffeespende bekommen?

      1. Ich habe zu danken! Hmmm… nein, wie war der Absender? Ging die an die gmail Addresse?

        Ja das hatte ich auch gefunden – hab auch schon den Build mit VisualCode bzw. PlatformIO. Aber offene Tickets beim Makerbase github sagen das hier kein BLTouch läuft… sehr schade.

          1. Hallo Joerg,

            Ja die Mail ging an die Gmail Adresse. Ich hab sie grad einfach nochmal weitergeleitet. Vielleicht ist sie ja im Spam gelandet. Habe leider aktuell öfter mal das Problem, dass manche Maildienste mich nicht durchlassen 😣

            Die „rohe“ Marlin 2.0 gibts ja im Github von Marlin. Auf der würde ich bei was neuem immer aufbauen. Ansonsten hab ich aktuell eine Version für das MKS SGEN_L gebaut. Ist auch ein 32bit Board, das ich bei mir grad teste. Werd da die Tage was drüber bloggen und dann hier auch die Firmware veröffentlichen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.