CTC prusa i3 clone-Bootloader-Firmware

  • Hallo,

    ich habe vor wenigen Tagen einen CTC prusa i3 clone DIY Drucker bei ebay erstanden.


    Der Zusammenbau lief soweit ganz gut. Es hat mich einige Zeit gekostet dir richtigen Einstellungen für den 3D druck zu finden.

    Dann habe ich die Firmware versucht zu aktualisieren.

    Mein GT2560 Board hatte eine Firmware ohne Bootloader, d.h ich konnte über die usb-Schnittstelle des GT2560-Boards mit Hilfe von Arduino keine Firmware aufspielen.

    Also habe ich versucht mit einem usbasp-Programmer und Arduino den Bootlaoder zu injizieren.

    Vorher habe ich natürlich eine Sicherung der Firmware gemacht.

    Allerdings ging nach dem ersten Versuch den Bootlaoder zu injizieren nichts mehr. Die rote L-LED blinkte, am Display wurde nichts mehr angezeigt.


    Auch das Backup der Firmware wieder einzuspielen half nichts. Nach vielen, vielen vergeblichen Versuchen ist es mir doch gelungen den Bootloader zu installieren und beliebige Firmware über die usb-Schnittstelle mit Hilfe von Arduino in das GT2560 Boards einzuspielen.

    DieVerkabelung des usbasp-Programmers mit dem GT2560-Board) zeigt die Datei: ctc-i3 prusa-anschluss-pins-programmierung firmware-12.03.17.pdf(siehe Anhang)


    Auf Windows winavr installieren (https://sourceforge.net/projects/winavr/).

    cmd in Windows aufrufen.

    Im cmd-Fenster in das bin-Verzeichnis von winavr wechseln (bei mir C:\WinAVR-20100110\bin).

    Jetzt, damit die Bootlaoder installation gelingt die fuses des Boards verändern mit:


    avrdude -c usbasp -p m2560 -P usb -b 115200 -e -u -U lock:w:0x3F:m -U efuse:w:0xFD:m -U hfuse:w:0xD8:m -U efuse:w:0xFF:m


    Mit diesem Befehl wird es erst möglich den Bootloader zu installieren. Jetzt mit:


    avrdude -c usbasp -p m2560 -P usb -b 115200 -V -U flash:w:stk500boot_v2_mega2560.hex


    den Bootloader installieren. Die Datei stk500boot_v2_mega2560.hex (siehe Anhang) muß dabei im selben Verzeichnis wie avrdude sein.


    Jetzt ist der Bootloader auf dem GT2560 installiert. Beliebige Firmware kann jetzt über den USB-Anschluß des GT2560 Baords mit Hilfe von Arduino (Version > 1.6) eingespielt werden ( in Arduino über Werkzeuge->Board: Arduino/Genuino Mega oder Mega2560 wählen, den richtigen Comport auswählen, der in der Windows Systemsteuerung angezeigt wird).


    Als Marlin Firmware passt auf diesen CTC prusa i3 DIY 3D Drucker folgende Firmware von Marlin:


    Marlin_1_1_0_RC7_CTC_Prusa_Screw_0_1_D86F201C (siehe Datei im Anhang)


    Beim kompilieren dieser Firmware gibt es noch Fehler. Ein Fehler kann eliminiert werden, wenn in der Datei: Marlin_main.cpp

    in Zeile 2787:


    Nozzle::clean(pattern, strokes, objects);


    auskommentiert wird und zwar so:


    //Nozzle::clean(pattern, strokes, objects);


    Darüberhinaus muß für Arduino im Verzeichnis libraries das Verzeichnis ug8lib von ug8lib.zip hinzugefügt werden.


    Jetzt wird die Marlin-firmware ohne Fehler kompiliert und kann in Arduino auf das GT2560 hochgeladen werden.


    Die Komponenten des CTC prusa i3 clone DIY 3D Druckers werden dann entsprechend der Datei 'Anschlüsse GT2560.pdf' an das GT2560 Board angeschlossen.


    Bei mir läuft dann der Drucker.

  • Hallo Schartei, Sehr interessant. Ich bin seit letzter Woche ebenfalls Besitzer des CTC I3 Pro B. Auch bei mir ging der Zusammenbau relativ einfach von der Hand, allerdings stehe ich nun vor dem Problem, das der Drucker von Cura nicht erkannt wird. Laut Gerätemanger sind die Treiber fdm funktionstüchtig installiert. Daher denke ich werde ich ebenfalls ein Firmware Update benötigen. Leider bin ich absoluter Arduino Unbekannter... Kannst du mir hier bitte etwas Licht ins dunkel bringen.. Danke dir schon einmal.

  • Hallo, ich habe zusätzlich auch einen CTC I3 Pro B und hatte keine Probleme, ihn über USB zum Drucken zu bewegen.


    Es gibt da jedoch ein paar Dinge zu beachten:


    Schmeiss das mitgelieferte USB-Kabel weg, denn es ist meistens Schrott und soll schon so manchen User in den Wahnsinn getrieben haben. Nimm ein gutes eigenes Kabel!


    Solltest Du vorher eine andere Software wie z. B. Makerbot zum Probieren gestartet haben, blockiert diese alle Versuche eine weitere Verbindung über ein anderes Programm herzustellen. Es hilft hier auch nicht, Makerbot einfach nur zu beenden, da im Hintergrund die Prozesse weiter laufen. Hier ist zwingend notwendig, im Programm unter dem Menuepunkt "Services" den Punkt "Stopp Background Services" anzuwählen. Danach kannst Du MB beenden und Cura starten.


    Bei Cura solltest Du unter Maschine "Add new machine" auswählen, dann bei "Wählen Sie Ihr Gerät aus" ->"Andere"->" Benutzerdefiniert".

    Da gibst Du dem Gerät einen beliebigen Namen z. B. "CTC mein Prusa" und gibst die entsprechenden Werte für den Bauraum, Düse ect. ein.

    Unter Maschine wählst Du dann den entsprechenden Drucker mit Deinem Namen und gehst anschliessend auf "Maschineneinstellungen". Hier kannst Du dann Feintuning betreiben. Wichtig ist hierbei die Einstellung "Verbindungseinstellungen" erst einmal auf "Auto" zu belassen. Einen eigenen COM-Port kannst Du immer noch eingeben, wenn der Drucker gar nicht erkannt wird. Nicht verzweifeln, es braucht manchmal etliche Anläufe mit Ein- und Ausschalten des Prusa und/oder PC-Neustart bevor es funktioniert.


    Sollte der Drucker sich über die Auto-Einstellung gar nicht verbinden wollen, schaue in den Gerätemanager von Windows welcher COM-Port es ist und gebe ihn manuell unter Maschineneinstellungen ein. Spätestens jetzt sollte es funktionieren.


    Manchmal hilft es auch schon, die BAUD-Rate manuell runter zu setzen.

    .::. CTC - Combat Tournament Center - Es ist immer ein Kampf mit dem Teil .::.


    3D-Drucker:

    CTC Bizer Dual • CTC I3 DIY (3 Stück) • TEVO Black Widow mit BL-Touch


  • Hallo Kollegen,


    ich habe 2 CTC Prusa I3 und habe die Anleitung von schartei durchgeführt. Der erste Ging mit dem GT2560 ohne Probleme und Marlin RC 7 konnte nach anpassungen upgeloadet werden. Dieser geht.


    Nun zum Problem:


    Bei 2ten CTC Prusa i3 wollte ich das gleiche machen hatte aber übersehen das es ATMEGA1280 chip ist. Habe die Fuses geöffnet und nur noch errors erhalten.


    Daraufhin habe ich mir in Chinaland ein neues GT2560 bestellt. Habe darauf hin die Steppers für die Spannung 1 zu 1 umgesetzt und dann die Anleitung durchgeführt ging ohne Probleme Marlin ist drauf und auch der Bootloader. Die Verkabelung habe ich 1 zu 1 vorgenommen.


    Nun habe ich folgendes Problem, das sich der Motor für die Heizplatte denke es sollte Y sein nicht bewegt bei Autohome und auch nicht über das Manuelle stellen

    .

    Halte ich den Schalter für den Heizplattenanschlag gedrückt um den Anschlag zu simulieren das merkt das System. Aber wie gesagt der Motor bewegt sich gar nicht. Egal auf welchler Postion die Heizplatte steht,

    Alle anderen Achsen gehen ohne Probleme


    1. Defekt des Motors konnte ausgeschlossen werden

    2. Habe auch mal die Spannungswandler umgesteckt.


    Kann mir hier jemand helfen oder einen Tipp geben? Muss hier in der Marlin Configuration was geändert werden? Bitte dringend um Hilfe.


    Danke

    Raini

  • Hallo Schartei,


    erst mal besten Dank für die super Anleitung,


    einen usbasp-Programmer V2.0 habe ich liegen ... will/muss meine FW wegen eines Auto_Bed_Leveling anpassen ... habe mal geschaut au meinem GT2560-Board ist ein


    verbaut, sollte also keine Probleme machen ...


    Du schreibst, das Du die installierte FW gesichert hast, wie geht das ?

  • So ...

    bin einen Schritt weiter, Boot-Loader ist drauf ... hatte schon die Befürchtung das ich das Boad geschrottet habe ... habe es wie folgt gemacht :


    Eckdaten WIN7_64


    USPASP habe ich wie oben beschreiben angeschlossen, Vcc aber weg gelassen und das Board mit 12V über ein Labor-Netzteil versorgt, nur am USB hatte ich Abrüche beim schreiben ...


    Jetzt da der Boot-Loader drauf ist, habe ich mit der Arduino 1.8.4 ... entsprechende I3-FW compiliert ...

    nur die Aktuelle FW von "Marlin-1.1.x" bekomme ich Fehlerfrei compiliert und somit auch übertragen ...

    nutzt nur nichts ... kein Display und der Summer piept, wuste gar nicht das da einer dran ist ...


    bei "Marlin_1_1_0_RC7_CTC_Prusa_Screw_0_1" bekomme ich folgende Meldung:

    Code
    1. C:\Users\Ralf\AppData\Local\Temp\ccgMsTUa.ltrans5.ltrans.o: In function `gcode_G12()':
    2. ccgMsTUa.ltrans5.o:(.text+0x9a8): relocation truncated to fit: R_AVR_7_PCREL against `no symbol'
    3. collect2.exe: error: ld returned 1 exit status
    4. exit status 1
    5. Fehler beim Kompilieren für das Board Arduino/Genuino Mega or Mega 2560.

    Da kann ich ja gar nichts mit anfangen ...

  • Update ...


    wieder einen Schritt weiter, habe die FW "Marlin-1.1.x" genommen, kopie angelegt und Einstellungen so wie in

    "Marlin_1_1_0_RC7_CTC_Prusa_Screw_0_1" gemacht wurden, soweit ich diese gesehen habe übernommen ...


    compiliert und hochgeladen ... Anzeige geht schon mal und das in DE ...

    für heute ist erst mal schluss

  • Super das jetzt hier auch noch jemand ist der sich dafür interessiert habe mein Prusa seit letzter Woche Donnerstag schon viel geschraubt und gebastelt !!!Als erstes nach vielen Stunden Filament Nachdrücken da es nicht so recht wollt ist jetzt der Mk8 DIY extruder drauf als nächstes sollen auf jedenfall https://www.marcuslausch.de/2017/04/21/marlin-config/Trapezgewindespindeln an die Z Achse und dafür muss erst mal neue Firmware drauf

  • Hallo Leute,

    ich bin neu hier und wollte mich einfach mal an der Diskussion anschließen.

    Mein Drucker ist ein CTC Prusa i3 Pro B (CTC 10449) mit einem 2560 Rev A Board.


    Der Zusammenbau ging, trotz der "Anleitung" gut allerdings waren die Druckergebnisse bisher nicht wirklich zufriedenstellend, deshalb habe ich mich nun dazu entschieden, erstmal alles umzubauen.

    Der letzte Druck war O.K. aber dafür musste ich die Geschwindigkeit sehr weit runterschrauben... Vorallem die Verschiebung auf der Y-Achse und die "Lücken im Netz" waren stark zu sehen...


    Dafür habe ich mir jetzt neue Teile bestellt:

    • 2x Trapezgewindespindel mit Trapezgewindemuttern
    • 2x Kugellager für Gewindespindel
    • 4x Kugellager Typ 693
    • 2x Kugellager Typ 608
    • 2x Wellenkupplung 5mm zu 8mm
    • 4x Zahnriemenrad für 5mm Welle mit 20 Zähnen

    Ich überlege mir noch einen neuen Extruder zu kaufen. Könnt ihr mir einen Empfehlen ?


    Da sich die Vorder und Rückseite, durch das Spannen der Y-Achse bereits nach kurzer Zeit verbogen haben, habe ich den Rahmen abgemessen, gezeichnet und werde alles aus Acrylglas lasern lassen.

    Desweiteren lasse ich mir einige neue Teile von einem Freund drucken, in denen die Kugellager passen.

    Nun zu der Firmware:

    Ich habe mir einen USBASP V.2 und die Jumper Wire (weiblich) bestellt und schonmal die Software von hier installiert.


    Sobald alles da ist melde ich mich wieder.

  • habe gerade mal von https://www.marcuslausch.de/wp…lin-1.1.0-RC8_CTC_Org.zip auf meinem Boad hochgeladen, zuvor muss man aber noch U8glib nach ...\Arduino\libraries\U8glib kopiert werden ...


    was mich wunder, das unter Einstellungen/Bewegen gemachte Einstellungen nicht abgespeichert werden, nach einem Reset / Neustart sind alle gemachten Einstellungen wieder weg ... da macht der Menupunkt Einstellung/Standardkonfiguration irgend wie keinen Sinn ...

  • Vielen Dank erstmal !


    Im CMD gibt er mir immer diese Meldung:

    "

    C:\WinAVR-20100110\bin>avrdude -c usbasp -p m2560 -P usb -b 115200 -e -u -U lock:w:0x3F:m -U efuse:w:0xFD:m -U hfuse:w:0xD8:m -U efuse:w:0xFF:m


    avrdude: warning: cannot set sck period. please check for usbasp firmware update.

    avrdude: AVR device initialized and ready to accept instructions


    Reading | ################################################## | 100% 0.00s


    avrdude: Device signature = 0x1e9703

    avrdude: Expected signature for ATMEGA2560 is 1E 98 01

    Double check chip, or use -F to override this check.


    avrdude done. Thank you."


    Hat jemand einne Idee ? Kabel und Verkabelung sind richtig...

  • Habe es jetzt so gemacht:


    **

    C:\WinAVR-20100110\bin>avrdude -c usbasp -p m2560 -P usb -b 115200 -V -U flash:w:stk500boot_v2_mega2560.hex -F


    avrdude: warning: cannot set sck period. please check for usbasp firmware update.

    avrdude: AVR device initialized and ready to accept instructions


    Reading | ################################################## | 100% 0.00s


    avrdude: Device signature = 0x1e9703

    avrdude: Expected signature for ATMEGA2560 is 1E 98 01

    avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed

    To disable this feature, specify the -D option.

    avrdude: erasing chip

    avrdude: warning: cannot set sck period. please check for usbasp firmware update.

    avrdude: reading input file "stk500boot_v2_mega2560.hex"

    avrdude: input file stk500boot_v2_mega2560.hex auto detected as Intel Hex

    avrdude: writing flash (262106 bytes):


    Writing | ################################################## | 100% 143.48s




    avrdude: 262106 bytes of flash written


    avrdude: safemode: Fuses OK


    avrdude done. Thank you.


    **


    Bekomme aber nicht die firmware drauf....