Firmware Upload nicht mehr möglich!

Hallo,

nach Updates auf die aktuelle Version (0.90.7) ist ein Upload der Firmware auf meinem Ender-2 nicht mehr möglich. Ich erhalte immer folgende Fehlermeldung:

Lade Firmware Abbild hoch ...
Druckerverbindung trennen ...

avrdude: Version 6.1, compiled on Sep 9 2015 at 16:45:41
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch

System wide configuration file is "/usr/local/Repetier-Server/modules/firmware/bin/avrdude.conf"
User configuration file is "/var/lib/Repetier-Server/.avrduderc"
User configuration file does not exist or is not a regular file, skipping

Using Port : /dev/ttyUSB0
Using Programmer : arduino
Overriding Baud Rate : 57600
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xee
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xe6
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x32
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xce
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x73
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x3a
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xe6
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x63
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x4d
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x94

avrdude done. Thank you.

Hochladen beendet
Druckerverbindung wieder herstellen ...
Firmware-Upload beendet.

Wie kann ich dieses Problem lösen?

Gruß
Morpheus66

Comments

  • Am upload modul haben wir nichts geändert. Wie es aussieht wird es ja auch alles korrekt gestartet, nur das avrdude es nicht schafft die Verbindung herzustellen.

    Was einen Versuch wert währe ist den Drucker erst explizit zu deaktivieren und dann den Upload zu starten. Möglicherweise versucht der Server zwischendurch die Verbindung neu zu starten was man allerdings auch sehen würde.

    Das andere was möglich ist, ist das der Boardtyp nicht mehr passt weil er ausversehen verstellt wurde. Nur mit dem richtigen Typ stimmt auch baud rate und Protokoll.

  • Repetier said:

    Was einen Versuch wert währe ist den Drucker erst explizit zu deaktivieren und dann den Upload zu starten.
    Klappt leider nicht!

    Repetier said:

    Das andere was möglich ist, ist das der Boardtyp nicht mehr passt weil er ausversehen verstellt wurde. Nur mit dem richtigen Typ stimmt auch baud rate und Protokoll.
    Als Boadtyp habe ich "Arduino 1284 Boards" ausgewählt, welcher für den Ender-2 ja passen sollte.

    Habe mal zum testen "Arduino Mega 2560 boards" eingestellt und ein Update versucht.
    Dabei kam das heraus:


    Lade Firmware Abbild hoch ...
    Druckerverbindung trennen ...

    avrdude: Version 6.1, compiled on Sep 9 2015 at 16:45:41
    Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
    Copyright (c) 2007-2014 Joerg Wunsch

    System wide configuration file is "/usr/local/Repetier-Server/modules/firmware/bin/avrdude.conf"
    User configuration file is "/var/lib/Repetier-Server/.avrduderc"
    User configuration file does not exist or is not a regular file, skipping

    Using Port : /dev/ttyUSB0
    Using Programmer : wiring
    Overriding Baud Rate : 115200
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_getsync(): timeout communicating with programmer

    avrdude done. Thank you.

    Hochladen beendet
    Druckerverbindung wieder herstellen ...
    Firmware-Upload beendet.


    Stehe gerade auf dem Schlauch!




  • Hast du denn früher damit uploads gemacht? Hier
    http://www.kinder-technik.de/ender-2-3d-drucker-kit-aus-china-gut-und-guenstig/
    steht das der ohne bootloader kommt. Damit würde es nicht klappen bis ein bootloader drauf gespielt ist.

    Grundsätzlich kann man natürlich auch direkt von der Arduino-IDE aus die firmware hochladen. Also als gegentest ob es überhaupt möglich ist. Hast ja vermutlich die Sanguino Erweiterung eh schon drauf um die firmware compilieren zu können.
  • Ich habe aktuell Marlin 1.1.8 auf dem Ender, die ich bereits über den Repetier-Server aufgespielt habe. Der Bootloader ist direkt nach Aufbau draufgespielt worden. Es ging ja auch bis jetzt alles reibungslos mit den Firmwareuploads.

    Auch der Upload  einer Firmware, die ich bereits mit dem Repetier-Server übertragen habe, funktioniert nicht mehr. Gleiche Fehlermeldung.

     Damit kann ich, glaube ich zumindest, ausschließen, daß beim kompelieren was schiefgelaufen ist.
  • Am kompilieren liegt es definitiv nicht, problem ist ja mehr das avrdude sich nicht mehr mit dem board verbinden kann. Wobei wir avrdude auch seit dem es dabei ist nicht aktualisiert haben.

    Wenn es früher funktioniert hat nehme ich mal an das der Bootloader noch da ist. Wurde ja bestimmt mit den richtigen Fuses vor löschen/überschreiben geschützt.

    Was sich geändert hat ist aber zumindest bei unseren Images die Debian version. Neueste Images nutzen jetzt das aktuelle stretch und nicht mehr jessie oder wheezy. Aber avrdude startet ja offenbar weiterhin normal.

    Wie oft hast du es bisher versucht? Ich hab auch am PC schon gehabt das sync nicht klappte und nach einem reboot oder mehreren Versuchen ging es plötzlich. Ist alles etwas timing abhängig denke ich. Er verusacht ja einen Reset und muss mit dem bootloader reden bevor er die Firmware startet. Sobald die Firmware startet klappts nicht mehr.
  • Wenn der Bootloader nicht mehr da wäre, dann würde der Drucker doch nicht starten, oder?

    Die Firmware habe ich schon ca 50 mal versucht zu überspielen!!!
  • Mit den richtigen Fuse Einstellungen kann man auch ohne Bootloader starten. Dann kann man aber nur noch mit einem ISP Gerät neue Versionen hochladen, ist also nicht so sinnvoll wenn man mal Updates hat.

    Versuch es doch mal bitte am PC mit der IDE direkt. Was mich ein wenig irritiert ist das er Protocol wiring sagt, wobei die Definition der Boards so aussieht:

    firmwareUploadBoards = {
    {id=1,name="Arduino Mega 2560 boards",tool="avrdude",maximum_data_size=8192,maximum_size=253952,mcu="atmega2560",speed=115200,protocol="wiring"},
    {id=2,name="Arduino DUE Programming Port",tool="bossac",protocol="sam-ba",maximum_size=524288,use_1200bps_touch=true,wait_for_upload_port=false,native_usb=false},
    {id=3,name="Arduino DUE Native Port",tool="bossac",protocol="sam-ba",maximum_size=524288,use_1200bps_touch=true,wait_for_upload_port=true,native_usb=true},
    {id=4,name="Printrboard with CDC bootloader",tool="avrdudeCDC",mcu="at90usb1286",protocol="avr109",maximum_size=130048,speed=115200,extraPort=true},
    {id=5,name="Teensy 2++ boards",tool="teensy",protocol="halfkay",mcu="at90usb1286"},
    {id=6,name="Arduino 1284 boards",tool="avrdude",maximum_data_size=8192,maximum_size=131072,mcu="atmega1284p",speed=57600,protocol="arduino"}
    } Da steht für 1284 arduino, aber vielleicht sind die ja eh identisch. Vielleicht zeigt der Test mit der IDE ja mehr. Ansonsten mal sanguino avrdude: stk500v2_ReceiveMessage(): timeout googeln. Gibt fast 1000 Treffer mit dem selben Problem ohne server. Ist leider weiter verbreitet als man denkt.
  • Das "wiring" kam nur, als ich das "Arduino Mega 2560 boards" zum testen ausgewählt hatte.

    Werde später mal den Drucker direkt am PC anschließen.
    Melde mich dann!
  • Sooo, ich habe jetzt dem Ender einen neuen Bootloader verpasst. Dafür habe ich mir erst einmal ein Arduino UNO besorgt und den Bootloader neu aufgestzt. Anschließend die Firmware über Arduino IDE übertragen- und es läuft! :D

    Die Verbindung von Arduino IDE zum Ender läuft also reibungslos. Beim Versuch es mit dem Repetierserver zu machen kamen wieder die gleichen Feflermeldungen!!!

    Ich glaube schon, dass bei den letzten Updates etwas bei euch schief gelaufen ist. Schade das diese Funktion mit dem Firmware-Upload über den Server zur Zeit nicht läuft!
  • Ok, habe es jetzt mit 0.90.7 auf Pi mit Stretch getestet. Hab keine Sanguinos daher muste ein Mega2560 herhalten, der ja auch avrdude zum hochladen benutzt. Hat geklappt wie üblich, hier das Protokoll:

    Lade Firmware Abbild hoch ...
    Druckerverbindung trennen ...

    avrdude: Version 6.1, compiled on Sep 9 2015 at 16:45:41
    Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
    Copyright (c) 2007-2014 Joerg Wunsch

    System wide configuration file is "/usr/local/Repetier-Server/modules/firmware/bin/avrdude.conf"
    User configuration file is "/var/lib/Repetier-Server/.avrduderc"
    User configuration file does not exist or is not a regular file, skipping

    Using Port : /dev/ttyUSB0
    Using Programmer : wiring
    Overriding Baud Rate : 115200
    AVR Part : ATmega2560
    Chip Erase delay : 9000 us
    PAGEL : PD7
    BS2 : PA0
    RESET disposition : dedicated
    RETRY pulse : SCK
    serial program mode : yes
    parallel program mode : yes
    Timeout : 200
    StabDelay : 100
    CmdexeDelay : 25
    SyncLoops : 32
    ByteDelay : 0
    PollIndex : 3
    PollValue : 0x53
    Memory Detail :

    Block Poll Page Polled
    Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
    ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
    eeprom 65 10 8 0 no 4096 8 0 9000 9000 0x00 0x00
    flash 65 10 256 0 yes 262144 256 1024 4500 4500 0x00 0x00
    lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
    hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
    efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
    lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
    calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
    signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00

    Programmer Type : Wiring
    Description : Wiring
    Programmer Model: AVRISP
    Hardware Version: 15
    Firmware Version Master : 2.10
    Vtarget : 0.0 V
    SCK period : 1.1 us

    avrdude: AVR device initialized and ready to accept instructions

    Reading | ################################################## | 100% 0.04s

    avrdude: Device signature = 0x1e9801
    avrdude: reading input file "/var/lib/Repetier-Server/tmp/tmplua1.hex"
    avrdude: writing flash (176888 bytes):

    Writing | ################################################## | 100% 44.23s

    avrdude: 176888 bytes of flash written
    avrdude: verifying flash memory against /var/lib/Repetier-Server/tmp/tmplua1.hex:
    avrdude: load data flash data from input file /var/lib/Repetier-Server/tmp/tmplua1.hex:
    avrdude: input file /var/lib/Repetier-Server/tmp/tmplua1.hex contains 176888 bytes
    avrdude: reading on-chip flash data:

    Reading | ################################################## | 100% 39.29s

    avrdude: verifying ...
    avrdude: 176888 bytes of flash verified

    avrdude done. Thank you.

    Hochladen beendet
    Druckerverbindung wieder herstellen ...
    Firmware-Upload beendet.

    Daher leider nicht ganz ersichtlich warum es nicht klappt. Was ich mich aber frage ist, warum du den Bootloader installiert hast. War er wirklich weg so dass es mit der IDE auch nicht geklappt hat? Ist der Bootloader nach dem hochspielen immer noch funktionstüchtig, also kannst du auch 2 mal hochladen ohne bootloader neu zu brennen? Der Prozessor hat Fuses die ein überschrieben verhindern sollen, die müssen aber auch gesetzt sein. Wobei ich normal annehmen würde das die IDE das richtig macht wenn sie einen Bootloader installiert. 

    Das letzte was noch sein kann ist das
    {id=6,name="Arduino 1284 boards",tool="avrdude",maximum_data_size=8192,maximum_size=131072,mcu="atmega1284p",speed=57600,protocol="arduino"}
    
    
    nicht zum bootloader passt. Wenn die unterschiedliche Protokolle haben klappts ja auch nicht. Es gibt ja noch
    {id=4,name="Printrboard with CDC bootloader",tool="avrdudeCDC",mcu="at90usb1286",protocol="avr109",maximum_size=130048,speed=115200,extraPort=true},
    {id=5,name="Teensy 2++ boards",tool="teensy",protocol="halfkay",mcu="at90usb1286"}, die auch für den Prozessor sind aber mit dem Teensy bootloader funktionieren.
  • Ich konnte mit Arduino IDE keine Verbindung herstellen und habe, um eventuelle Fehler auzuschließen, den Bootloader neu aufgespielt. Hat ja auch geklappt und ich konnte mittlerweile ohne Probleme die Firmware mehrfach flashen. Habe das jetzt 6 mal hintereinander mit Arduino IDE gemacht.

    Hier das Log

    avrdude: Version 6.3, compiled on Jan 17 2017 at 12:00:53
             Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
             Copyright (c) 2007-2014 Joerg Wunsch

             System wide configuration file is "C:\Users\Thomas Eggemann\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf"

             Using Port                    : COM6
             Using Programmer              : arduino
             Overriding Baud Rate          : 115200
             AVR Part                      : ATmega1284P
             Chip Erase delay              : 55000 us
             PAGEL                         : PD7
             BS2                           : PA0
             RESET disposition             : dedicated
             RETRY pulse                   : SCK
             serial program mode           : yes
             parallel program mode         : yes
             Timeout                       : 200
             StabDelay                     : 100
             CmdexeDelay                   : 25
             SyncLoops                     : 32
             ByteDelay                     : 0
             PollIndex                     : 3
             PollValue                     : 0x53
             Memory Detail                 :

                                      Block Poll               Page                       Polled
               Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
               ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
               eeprom        65    10   128    0 no       4096    8      0  9000  9000 0xff 0xff
               flash         65    10   256    0 yes    131072  256    512  4500  4500 0xff 0xff
               lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
               lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
               hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
               efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
               signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
               calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00

             Programmer Type : Arduino
             Description     : Arduino
             Hardware Version: 3
             Firmware Version: 5.0
             Vtarget         : 0.3 V
             Varef           : 0.3 V
             Oscillator      : 28.800 kHz
             SCK period      : 3.3 us

    avrdude: AVR device initialized and ready to accept instructions

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

    avrdude: Device signature = 0x1e9705 (probably m1284p)
    avrdude: reading input file "D:\Temp\arduino_build_206599/Marlin.ino.hex"
    avrdude: writing flash (127450 bytes):

    Writing | ################################################## | 100% 23.85s

    avrdude: 127450 bytes of flash written
    avrdude: verifying flash memory against D:\Temp\arduino_build_206599/Marlin.ino.hex:
    avrdude: load data flash data from input file D:\Temp\arduino_build_206599/Marlin.ino.hex:
    avrdude: input file D:\Temp\arduino_build_206599/Marlin.ino.hex contains 127450 bytes
    avrdude: reading on-chip flash data:

    Reading | ################################################## | 100% 26.33s

    avrdude: verifying ...
    avrdude: 127450 bytes of flash verified

    avrdude done.  Thank you.

    Könnte es vielleicht daran liegen, dass in den Druckereinstellungen anstatt

    /dev/ttyUSB0

    /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A106ZXBA-if00-port0

    eingetragen ist??

    Bin mit Linux nicht so wirklich vertraut!
  • /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A106ZXBA-if00-port0 ist nur ein link auf /dev/ttyUSB0, kann abe raufgrund der ID von anderen boards unterschieden haben die auch ttyUSB= erzeugen können.

    In deiner ausgabe steht aber 115200 baud und im server 57600 baud. Das wäre eine Erklärung. Geh mal mit ssh (putty) auf den server und gib ein

    cd /usr/local/Repetier-Server/modules/firmware/lua/
    sudo nano firmware.lua

    Ändere ab Zeile 12 Inhalt zu

    firmwareUploadBoards = {
    {id=1,name="Arduino Mega 2560 boards",tool="avrdude",maximum_data_size=8192,maximum_size=253952,mcu="atmega2560",speed=115200,protocol="wiring"},
    {id=2,name="Arduino DUE Programming Port",tool="bossac",protocol="sam-ba",maximum_size=524288,use_1200bps_touch=true,wait_for_upload_port=false,native_usb=false},
    {id=3,name="Arduino DUE Native Port",tool="bossac",protocol="sam-ba",maximum_size=524288,use_1200bps_touch=true,wait_for_upload_port=true,native_usb=true},
    {id=4,name="Printrboard with CDC bootloader",tool="avrdudeCDC",mcu="at90usb1286",protocol="avr109",maximum_size=130048,speed=115200,extraPort=true},
    {id=5,name="Teensy 2++ boards",tool="teensy",protocol="halfkay",mcu="at90usb1286"},
    {id=6,name="Arduino 1284 boards 57600 baud",tool="avrdude",maximum_data_size=8192,maximum_size=131072,mcu="atmega1284p",speed=57600,protocol="arduino"},
    {id=7,name="Arduino 1284 boards 115200 baud",tool="avrdude",maximum_data_size=8192,maximum_size=131072,mcu="atmega1284p",speed=115200,protocol="arduino"}
    }

    hab hier Zeilen mit id 6 geändert und 7 hinzugefügt. Danach server neu starten und die Variante mit 115200 baud nehmen. Zumindest der neue Bootloader scheint ja diese Baudrate zu nutzen. Denke korrekte baud rate hilft hier mehr.



  • Sooooooo, damit hat es jetzt wieder geklappt!!!! :D


    Lade Firmware Abbild hoch ...
    Druckerverbindung trennen ...

    avrdude: Version 6.1, compiled on Sep 9 2015 at 16:45:41
    Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
    Copyright (c) 2007-2014 Joerg Wunsch

    System wide configuration file is "/usr/local/Repetier-Server/modules/firmware/bin/avrdude.conf"
    User configuration file is "/var/lib/Repetier-Server/.avrduderc"
    User configuration file does not exist or is not a regular file, skipping

    Using Port : /dev/ttyUSB0
    Using Programmer : arduino
    Overriding Baud Rate : 115200
    AVR Part : ATmega1284P
    Chip Erase delay : 55000 us
    PAGEL : PD7
    BS2 : PA0
    RESET disposition : dedicated
    RETRY pulse : SCK
    serial program mode : yes
    parallel program mode : yes
    Timeout : 200
    StabDelay : 100
    CmdexeDelay : 25
    SyncLoops : 32
    ByteDelay : 0
    PollIndex : 3
    PollValue : 0x53
    Memory Detail :

    Block Poll Page Polled
    Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
    ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
    eeprom 65 10 128 0 no 4096 8 0 9000 9000 0xff 0xff
    flash 65 10 256 0 yes 131072 256 512 4500 4500 0xff 0xff
    lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
    lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
    hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
    efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
    signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
    calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00

    Programmer Type : Arduino
    Description : Arduino
    Hardware Version: 3
    Firmware Version: 5.0
    Vtarget : 0.3 V
    Varef : 0.3 V
    Oscillator : 28.800 kHz
    SCK period : 3.3 us

    avrdude: AVR device initialized and ready to accept instructions

    Reading | ################################################## | 100% 0.01s

    avrdude: Device signature = 0x1e9705
    avrdude: reading input file "/var/lib/Repetier-Server/tmp/tmplua0.hex"
    avrdude: writing flash (127450 bytes):

    Writing | ################################################## | 100% 23.97s

    avrdude: 127450 bytes of flash written
    avrdude: verifying flash memory against /var/lib/Repetier-Server/tmp/tmplua0.hex:
    avrdude: load data flash data from input file /var/lib/Repetier-Server/tmp/tmplua0.hex:
    avrdude: input file /var/lib/Repetier-Server/tmp/tmplua0.hex contains 127450 bytes
    avrdude: reading on-chip flash data:

    Reading | ################################################## | 100% 27.18s

    avrdude: verifying ...
    avrdude: 127450 bytes of flash verified

    avrdude done. Thank you.

    Hochladen beendet
    Druckerverbindung wieder herstellen ...
    Firmware-Upload beendet.


    Danke für die Hilfe!!!

  • Danke auch fürs testen da ich kein solches Board besitze. Werde die Änderung im offiziellen nächsten Release auch drin lassen, damit alle die Wahl haben.
Sign In or Register to comment.