Firmware upgrade

Please Login to Comment

Hi all !
Thank you for the group !
Is there any way to upgrade the firmware on the printer ? Where can it be found ? Or what settings need to be changed for it to work ?

Thank you

Hi there! Please take a look at my github page:

I also added the original FW that printer came with, in case something goes wrong and you'll need a backup.

Thank you for all, but how can I flash the .hex on the board?
I know arduino but I don't see anything about .hex.

Thank you !

BTW, I use Gentoo Linux ! :)

Will let you know ! Thank you so much !

Hi !

Thank you for the reply ! I'm new to upgrading firmware in 3d printers and don't want to mess it up !
Tell me something, please:

Just need to download the firmware and upload it using arduino (not new to arduino) and what settings do I need to change ? Or nothing at all ?
What board should i choose in Arduino ?
Thank you !

I believe i accidentally flagged my own comment :(((

so will make this one quick, before other one is restored:

You need to add Sanguino "ATmega1284 or ATmega1284P (16 Mhz)" board to your arduino IDE.
As well as u8glib Library.
Both are on github.

Compile inside IDE, and flash it from terminal with similar command:
[email protected]:~/Desktop$ /opt/arduino-1.8.4/hardware/tools/avr/bin/avrdude -C/opt/arduino-1.8.4/hardware/tools/avr/etc/avrdude.conf -v -patmega1284p -carduino -P/dev/ttyUSB0 -b57600 -D -Uflash:w:/tmp/arduino_build_441815/Marlin1.1.3.ino.hex:i

Well, everything went ok ! Had a lot of problems with the U8glib, but was able to correct them ! New firmware on the printer. During this week will try to print something - have to change the belts for a new ones !

Thank you ! Will keep you posted !

I'm glad everything worked for you!
By the way, please check motor steps per mm, as i am using wade's geared extruder, i have set them very high. (~800 instead of default 200 or something...).
Also, as i am printing mainly with ABS, my temperature tolerations are set to very high as well as heating times.
And i have disabled SD card support, as i am not using it anyways, to save that precious ATmega memory.
Anyways, if you'll have any observations on any printer or it's firmware improvements, please do share !

Hi ! Thank you ! A last minute request - Can you tell me where can I change those options you mention ? The extruder steps per mm and enable SD Card support ?

I'll change them for the defaults and compile the firmware again ! I use the SD Card a lot ! Thank you

Most of the configs are inside Marlin/Configuration.h and Marlin/Configuration_adv.h files.

Steps per mm on the extruder are inside Configuration.h file:
Line: 534 || #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 795 } // E=275 default, 795 - wades geared extruder value.

In the same file, for SD card support uncoment this line:
Line: 1334 || // #define SDSUPPORT //SD SUPPORT DISABLED

If I enable SDSUPPORT, it won't compile..

"/tmp/arduino_build_105602/../arduino_cache_656003/core/core_Sanguino_avr_sanguino_cpu_atmega1284p_43abd4772f7d54b3b71b45e6958f8b06.a" "-L/tmp/arduino_build_105602" -lm
/opt/arduino/hardware/tools/avr/bin/../lib/gcc/avr/4.9.2/../../../../avr/bin/ld: /tmp/arduino_build_105602/Marlin.ino.elf section .text' will not fit in regiontext'
/opt/arduino/hardware/tools/avr/bin/../lib/gcc/avr/4.9.2/../../../../avr/bin/ld: region `text' overflowed by 10958 bytes
collect2: error: ld returned 1 exit status
Using library U8glib at version 1.19.1 in folder: /home/feiticeir0/Documents/Arduino/libraries/U8glib
exit status 1
Error compiling for board Sanguino.

THE LCD Has a SD Slot and it's what I've been using.. Does this option affects that SD CARD ? I remember (in the original firmware) putting a SD CARD in the Melvi board slot and it didn't work...

You are getting error because the program is bigger than the flash memory of ours ATmega1284 controller. If i'm not mistaken, "region `text' overflowed by 10958 bytes..." This line says it right there, that your software is ~10kb too big. Try disabling some features.
I just tried enabling SDSupport and it gave me the same error...
In Configuration_adv.h file cocmment this line:
Line 733: || //#define ARC_SUPPORT // Disable this feature to save ~3226 bytes

Or / and this one:
Line: 741 || // Support for G5 with XYZE destination and IJPQ offsets. Requires ~2666 bytes.

If that is not enough, try reducing in lenght some strings inside "language_en.h" file.
Hope this will help.

thank you ! I've seen it and will change when at home ! I can't thank you enough for this ! Thank you , thank you, thank you ! Next time and following your instructions from now will try to compile a new firmware ! :D :D :D :D

Will follow your github account !

First of all, you need to add Sanguino board to Arduino IDE:
Choose > "ATmega1284 or ATmega1284P (16 MHz)"

Then you need to add LCD Library u8glib to the Arduino IDE:

The flashing itself straight from the Arduino IDE does not work for me, so i am using command line from Linux OS. (If you have avrdude installed, any windows command line terminal app will do)

After i compile the firmware inside Arduino IDE, i flash it using this command:
[email protected]:~/Desktop$ /opt/arduino-1.8.4/hardware/tools/avr/bin/avrdude -C/opt/arduino-1.8.4/hardware/tools/avr/etc/avrdude.conf -v -patmega1284p -carduino -P/dev/ttyUSB0 -b57600 -D -Uflash:w:/tmp/arduino_build_441815/Marlin1.1.3.ino.hex:i

On windows machine this command will not be the same, because file paths may differ, but the general logic stays .

Now I've done it... :(

LCD Doesn't display nothing and I only get this:

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00

:( :( :(

Everything ok ! :) Burn the bootloader again and is working ! In this board the SPI pins are ocuppied by the LCD and it's a pain to find out we need to wire from both sockets... :)

Going to test again ! :)