I have never seen anyone make something so simple as complicated as this, you go so fast that I have had to skip back about 30 times and I haven't even downloaded Marlin yet.
Just some additional info: A third issue you might run into uploading new firmware is if your printer uses the MKS TFT family of display screens (ie: JGAurora A5 & A3S). These 'intelligent' controller screens constantly communicate with the mainboard and have been shown to interfere and even corrupt the upload of firmware. So its recommended that you disconnect the MKS TFT board from the mainboard before uploading new firmware. Also, if you are uploaded a different version of the firmware (not just newer), you MUST reset EEPROM to factory defaults or it Will Indeed be all wrong and very strange things will occur when printing (homing the wrong direction, over-temperature faults, wrong acceleration/movement settings, etc) Thanks for the great video!
I assume this isn't necessary when you actually flash bootloader (it deletes the board content, no?), and then you flash firmware to it? Otherwise, I'm not clear how to reset EEPROM. Everything seems to work like a charm after flashing bootloader followed by TH3D (even though some options are missing, like stuff from the Motion submenu of Control menu). xD
Important before uploading the firmware: Disconnect all other serial connections to the printer. Close Simplify3d or Pronterface and disonnect the TFT32 (in case you have one). If either of these are connected to the board when uploading the firmware you will get a generic error message. That took me wayyy too long to find out.
Superb info as always. Looking forward to your 'from scratch' video, it may show me something I missed as I just finished upgrading my CR-10 S4 from scratch to Marlin 1.1.9. Loads of new features and fixes.
Appreciate the video! I had just bought the 1.1.5 silent board for my Ender 3 Pro and accidentally bought one with the Ender 5 firmware. Your video was the easiest to understand and simplest solution for me since the board already had a bootloader. I just downloaded the source code from Creality, followed the tutorial and was immediately able to start printing. Thank you!
Hello Thomas I have the following error, for compiling it was ok however I cant upload it onto the board, any idea? Sketch uses 122088 bytes (93%) of program storage space. Maximum is 130048 bytes. Global variables use 4629 bytes (28%) of dynamic memory, leaving 11755 bytes for local variables. Maximum is 16384 bytes. avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x65 avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x63 avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x68 avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x6f avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x3a avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x53 avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x44 avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x20 avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x69 avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x6e An error occurred while uploading the sketch
I "know" Arduino and thought I understand the steps you took. I suspect most people who are not programmers won't. I'll be honest. I don't know how you could make it any easier as you did do a great job explaining it. But the word "easy" is a bit of a stretch. ☺
Thank you for instructions! I did the upgrade for my Creality Ender-4. There are some differences comparing to Ender-3: the processor is ATmega2650 and its support is included to Arduino AVR Boards by default, so no need to set up Sanguino board and steps associated with setting up the board may be skipped (I set it up first and then just removed:-) Also, I made some more configuration 'cause I have extra gears attached to the printer: auto-leveling and filament sensor. So, went through the config files and un-commented lines to activate corresponding features. Configs are well commented and it is easy to find proper lines responsible for certain features...
While i agree that it is frustrating, you should watch the video to its end and know the plan, BEFORE trying to follow along. There are also other videos on youtube on how to flash Ender 3 Bootloader. Sup you don't HAVE to wait for Tom's2nd half. I do like how informative he made this first half.
Yes, Teaching Tech is who I used to flash my bootloader. I just wish he used official Marlin Software instead of TH3D. I'm trying to install a BLTouch and he used TH3D and the new software doesn't really work with BLTouch. It's almost like they purposefully sabotaged BLTouch users in the new version. So I'm stuck now with a BLTouch that probes, but doesn't actually do any leveling.
Sketch uses 97374 bytes (74%) of program storage space. Maximum is 130048 bytes. Global variables use 6193 bytes (37%) of dynamic memory, leaving 10191 bytes for local variables. Maximum is 16384 bytes.
5 years in with my Ender 3, nothing substantial other than basic upgrades that are must have from the get go, there is little to no point in upgrading the firmware, but 80% chance that one might brick their only 3d printer and leave a sour experience. Mine is still having no thermal runaway protection and there's no mention of it here, like the tutorial or someone could've made it simpler to test exactly that, and do a first update project where that project is the first to go and make it so they're not burning their house down accidentally. I am happy with what it could do, it hold bed level for years, accurate to
Hi Tom, Kudos for a great tut. It makes my day seeing how open source and community based projects' work, reaches the level of world class commercial setups (there effectiveness, efficiency and reliability are second to none) Marlin and Arduino are 2 great software and hardware examples (I know there are many others out there); great times.
Very thankful for the video, I can't help but mention though -it would have been nice to mention _at the beginning_ that even though you are demonstrating on the Ender 3, you can't actually complete the process on that printer using this video alone. -as I sit here with a USB sticking out of my laptop...
Yeah, I realized the Ender-3 wouldn't work way too late into making this video. Sorry 'bout that, I'll try to follow up with the hardware flashing instructions asap!
@@alexandrevaliquette1941 "M" codes are commands you type in, eg, Repetier that give direct instructions to your Marlin board. By typing one of the many M-codes plus a number you can change the behaviour of your printer, or, in this case, backup the contents of the Eprom.. Just search for M codes on Google
Alexandre, it's not you. These people are used to messing around with commands being sent directly to the printers and not using user interfaces and software to do this for them. As I said before there needs to be a step-by-step explanation of the process first (ie what they plan on doing and why) followed by the method of updating (ie the execution of the plan). The programming etc is relatively simple but if you don't know what you are doing it is not obvious.
Nice video! Especially like the part about showing how to install the Sanguino option to the Boards Manager and the u8glib. I had just used the TH3D unified software to run Arduino and then pointed that to the Marlin 1.1.x folder to get around it before seeing this video. The TH3D is a good option for those wanting a simpler option, but I like to know what each setting does (or at least the main ones). Looking forward to your video where you go through all the options in Marlin.
Thomas, great job. After downloading the files and updating the boards manager, using the correct processor and adding the custom library it compiled on first try.
It wasn't really easy, but you walked me through most of the hard stuff. I still had two errors (very similar) where they put something in comments AFTER the command and apparently my board wanted the comments BEFORE the command on a separate line. Fixed both of those errors and everything else went smooth as butter.
Don't have a problem myself, but some printers have separate enable jumper for firmware programming (safety feature, so that you can prevent ANYONE from flashing your printer). Just another thing to check, if your firmware flashing attempts are failing. At least my Megatronics 2.0 has one.
Thanks for the step by step. Worked great. I could not have done it with your instructions keep up the good work. Needed to upgrade the firmware to eliminate the extruder stopping with the quiet main board when using Simplify 3D
As I was trying to upload the firmware to my Ender 3, I was given the error "avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x65 avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x63 avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x68 avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x6f avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x3a avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x54 avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x46 avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x20 avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x69 avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x6e An error occurred while uploading the sketch " Does anyone know how to fix this?
Wow this is much easier now. My BLTouch came with a usb with a ribbon cable and adapter to update the ender 3 firmware. I’ve flashed mine several times when I was figuring out the BLTouch.
You said it will apply to any future 1.1.x version. But the developers have stated there won't be any more of those 🤔🤔🤔🤔. Regardless I can personally attest to 2.0.x being the exact same process.
If you want to compile and upload de last version of Marlin bugfix 2.0 for ender 3 (in my case: Ender 3 Pro with 1.1.4 board ) the u8glib must be the 1.18.1 or later. Your guide is the best guide on youtube for Marlin and Ender 3.
Great video. But have a problem with my printer . It's a sainsmart 300 . Out of nowhere something when wrong . It's like the print head is lost . What ever I print it starts ok for the first 2 or 3 lines then it goes sync and wondering all over the print plate . I dont know if it's the firmware or a hardware problem all the step motor are good . . Can you help . Can I send you a video of what it's doing.
Hey Thomas, great video as usual. I own a Creality CP-01 and was curious ho to update to Marlin 2.0? There is no files inside Marlin for CP-01. Please help
you said you were going to explain the issue with Ender 3 and other required hardware then have us sit through the video but at the very end you say oh wait no it's going to be in another video. I do enjoy your content but this bait-and-switch is frustrating.
If you follow one of the video tutorials on how to install a bootloader on a Melzi/Sanguino board (such as the CR-10 v1.0), then you can go ahead with the firmware flash described here.
@@ScottLahteine I know that and I have done it rather I use the Raspberry Pi method and needed to go buy a secondary board I have no use for. It's just misleading I don't know why he added it that way just say it's going to be a two-part video at the beginning.
Because this is enough for most printers. It's just the Tronxy\Creality machines mostly that sometimes dont bother including bootloader. It's pretty easy though.
I do agree, this video should have been put out after the Arduino one mentioned at the end. Especially with the machine, you are demonstrating on needing the bootloader flashing before this upgrade is done
I agree that he is over-simplifying the process. I have just updated my Ender 3 and I had to use an Arduino as an AVRISP_MKII and use it as an Arduino as ISP to program the boot-loader first. Then you can go and compile/flash the Marlin firmware and do the 1284P Sanguino stuff. Again this is not explained that well either. Having used a lot of AVR's and SAM devices in the past I know the process but the Arduino tools are new to me. There really needs to be a newer explanation of the process and then the method. I bought an Arduino Uno as I was under the impression I needed it whereas I could have probably used my AVR JTAGICE-II.
It was getting my usbasp to work in windows 10 at my workshop (it works at home after a lot of swearing and then is very good). The one I have has all sorts of driver signing problems and you have to boot into a special mode and it's a pain. I ended up using an arduino uno and use the arduinoisp sketch and this did work. One thing you need to know is after loading the bootloader the ender 3 the display can be blank so don't worry if you think you broke it. After the bootloader was loaded I could just plugin to the usb on the printer and the th3d firmware was super easy to compile with if you download the complete package.
Bro very nice video very nice absolutely amazing just wanted to confirm one thing that i have ender 3 pro with 4.2.2 board does that need a bootloader or will it just work the way you did thankyou so much waiting for reply
As others have said, the work you put into this is greatly appreciated, but for those of us who aren't technically-minded, it's like falling down a very deep rabbit hole with pointy bits along the way. But that's a heck of a shirt, Tom.
How do you convert an old configuration to the new Marlin 2.0 when there is no manufacturers version available. I only can get hold of Marlin 1.0.4 for my Geetech and i'm havin g problems, I would like to upgrade to either 1.1.9 or 2.0. but don;y know how Thanks
Same here. We need to enable the Thermal Runaway protection too. Tom did a video showing CR-10's come without this enabled on the firmware, so I know I've needed to do this for too long.
Great video and very informative. Thanks for this. I have a CR20 Pro and when I hit "About the Printer", I get ver. 1.1.6BL_ver3.1. All I find on Internet never mention the CR20 Pro... Is the procedure the same as the one you describe here?
Hey Thomas, I got a new motherboard for my Ender 3 and now I was updating the firmware but in the end when I was uploading it says that an error occurred while uploading the sketch
Great video explaining how to, but I am having trouble with configuration.h file. I did not find another video that you may have done pertaining to this exercise (you mentioned you would). But I am hoping you can help. I keep getting "Multiple libraries were found for "U8glib.h"" Do you have a video for this?
a couple things that I found need to be changed in config.h are the minimum y set to -8 and set the bed to 232 mm. now you will print more in line with the center of the bed and take advantage of the larger build surface
Thanks for the excellent info as always, do you have some info on changing the code for the printer knowing where the center of your bed is? My Ender 3 is 4mm left and 11mm back from what the slicer thinks is center.
Thanks very much Tom! How can we update the firmware if we do not have any support or file from the manufacturer? How do we only have the firmware loaded on the Mega board and no other data? How do we adjust the values for the different types of extruders, rods of the Z axis, etc? Thanks for your kind support.
Lot to keep up with when you're a noob. Saved this video because I'm going to watch it 100000000 times till it all clicks. I got issues just like loading firmware for my bl touch I just got for my ender 3. Great video btw and I will be trying to catch up.
@@MadeWithLayers A PC? Like Apple says if you fix something in your computer by a non official service? Hehehehehehe... I won't remove mine until I print a proper cover, not that I will ever enter Facebook to get support or anything... Ever.
WTF does a sticker have to do with firmware in the first place, please provide some slid evidence that removing the sticker changes something in the firmware
Hello Tom, I would like to upgrade Marlin for my printers but ... for my old Hypercube I have a Printrboard which I can flash only with an old version of Arduino IDE, with some customized bootloader, probably the new .ino file for Marlin 1.1.9 will not compile on older Arduino IDE ? Also my new Hypercube has a RAMPS1.4, for this probably Marlin 1.1.9 will work, but still I am afraid I will crash them both ... so actually for the Ender you need a programmer ? Fail video ...
Your videos are awesome. Much appreciated. I am trying to update my CR-10S. I have watched several video’s for this. I have worked through all the issues, clean compile, and I am getting what looks like comms timing out. The link between my laptop and printer is timing out. Could you help? I want to ensure my temp safety features are activated properly. Much appreciated.
Great video! I have seen that other "3d printing gurus" have installed the TH3D firmware instead, the installation procedure seems more or less the same, so what is the difference?
Great info Tom!! I do have one question. I build a dolly back when you did that build series. Does this work for upgrading the firmware on it as well or will I have alot to fix since its not a "production" kit??
Glad you posted this, I was just talking the other day about updating the firmware on my Ender 3. However, I'm getting multiple errors saying that there are "too many decimal points in number" in places that say 1.0.0, 1.0.1, 1.0.2, 1.0.2-2, and so forth. How should I go about fixing this. I have no prior knowledge of Arduino programming, so forgive me if this is a dumb problem to have. Thanks!
Great video, Tom. I'm pretty much a newbie and not real computer smart, but I followed your directions step by step and successfully replaced the original Ender 3 firmware with the current version of Marlin. It added some nice functionality (like being able to move the Z-axis up and down from the LCD screen) and I'm enjoying it a lot. Thanks!
Thomas, how about a review of Marlin 2.0? I know it is still late beta, but a review of the features and the 32-bit boards that it will run on would be very useful.
Thx Thomas! What if your company pushed a version of Marlin with closed source necessary modifications (I know they *should not*) wouldn't this just brick the printer?
Thanks, just followed your instructions for the Ender 1.1.5 board for an ender 5. Worked fine once I found ender5 config.h files and I had to use 1.18 of the U8glib but it compiled ok and I guess the board had the bootloader as it loaded fine. Now to put the board in the printer and test.
@Thomas Sanladerer HUGE THANK YOU! This made me finally reflash Marlin on my CR10s. Was thinking about it for months, but was too afraid from complexity. Done it, and it worked.
hi Tom, thanks for the video! I followed these instructions but when i get to the point where i want to burn my bootloader (with the USBTinyISP) I get the error below, can you help? avrdude: verification error, first mismatch at byte 0x1fc00 0xff != 0x1f avrdude: verification error; content mismatch Error while burning bootloader. thanks, Mike
Thanks for the vid. It was a very helpful walkthru to getting the correct versions of everything and getting the Arduino IDE all set up and able to compile the project. Thanks to your vid I was able to confidently get Marlin compiled and ready to load on my ENder 3 pro. I lost my USBASP board during a move, and so I'm waiting for a new one to talk to my board. (I prefer this to using my UNO which I also can't find, LOL. It's been a few years since I did a lot of microcontroller and Arduino work.) But your video was a confidence builder.
What about printers with a touch screen lcd? Are those not open source? Example would be the Snapmaker printer that says they will be open source eventually but would the firmware update not work great with the fancy touch screen?
SO, as of Sep 18, 2018, the config files on GitHub for the Ender 3 are requiring the board to be set to an Arduino Mega, not a Sanguino board. Is that an error? I know Creality has a 1.1.4 board out now ... does it refer to this? Just asking because the onboard MOFSET for the bed heater went out on mine. I've got a 1.1.3 board from Comgrow coming in tomorrow and figured flashing to Marlin before installing the new board may be the way to go. I've never gone through the process before and figured I'd ask some questions FIRST. I plan on getting the "silent 1.1.4" board from Creality, but the lead time is much more than a direct replacement board and I really hate running with the bed heater disconnected - even with PLA.
Hi butty.Can I follow this step without having to buy arduino etc. Just use my usb to my pc. I have a board that shows 1.1.3 on the board. Appreciate a reply.
Help Please. my printer doesnt have an example config. would it be wise to just copy my old config files over OR is it better to take a similar example config and just change the values?
Thank you Thomas, you got me the furthest I have ever gotten to succeeding, except these errors popped up! Is there somewhere I could send you my error messages..... not quite sure what they are referring to. All I did was take my ender 3 example, placed the right motherboard upgrade, and changed the max temp settings cause I have all metal hotend. and crazy errors pop up.
What version of marlin is this and what version of Arduino? I get error cant compile all you show on your side is nothing like my side i don't see the Jason link that your referring too .
Two questions: 1) How do you make a backup of the current firmware just in case all of this does not work and you need to go back to it? 2) Is there any way of doing this on the Ender-5?
Great Video, Tom. Super easy to follow. The following is an error message I received in Arduino. Marlin-2.0.x\Marlin\src\HAL\AVR\u8g_com_HAL_AVR_sw_spi.cpp:65:10: fatal error: U8glib-HAL.h: No such file or directory #include Not sure where to find this in the latest Marlin Website layout. If you could assist would be great. Thank you.
Please link in the description or pinned comment to the "other video" you mention. You didn't even give a hint as to what it's called which will make it hard for people looking to do this on their ender 3 (like me).
I tried to verify my build on the Anet A6 but it failed because it's 40 bytes too big with the BL Touch sensor enabled. Had to enable Linear auto bed leveling to reduce the size. Thanks!
This may be off topic.Keep doing the unboxing and assembly and first prints as you have. With no mods. Its the most honest way for the consumer,to determine if its a good manufacturer. Continue to show box stock with all the flaws. Let the machine either stand on its own,or embarrass the manufacturer into trying harder.
Please some help I do everything as on video and get error Creality ender 3 Board :1.1.4 I tested on 2 different computers 2 different versions of Arduino, 1.8.5 and 1.8.9 Sketch uses 126004 bytes (96%) of program storage space. Maximum is 130048 bytes. Global variables use 6279 bytes (38%) of dynamic memory, leaving 10105 bytes for local variables. Maximum is 16384 bytes. avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x65 avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x63 avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x68 avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x6f avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x3a An error occurred while uploading the sketch avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x54 avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x46 avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x20 avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x69 avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x6e
Great videos Thomas, very informative and helpful for windowers. How about a few for us Mac.ers??? I have my Anet for a couple of years now and I still haven't managed to flash Marlin from my MacBook! Great work! keep it up!
@@MadeWithLayers Yeah, thought so. Thanx for responding anyhow. You don't happen to know of a follower or a you tuber with a Mac and an A8 with a Bowden setup and BlTouch do you?
I flashed 1.1.9 last week on my older RepRap with a mega / ramps combo. Never had any problems with the older versions and my endstops but when I flashed 1.1.9 I couldn't get it to G28 without running the command like 3 times. Eventually had to turn on the ENDSTOP_NOISE_FILTER in config. I have some .1uf ceramic caps on the way to attach to the endstops so hopefully I can turn that feature off again.
Marlin 1.1.9 out of the box is less tolerant of noisy endstop signals. ENDSTOP_NOISE_FILTER is the workaround, but adding a capacitor and/or resistor is the correct solution.
Cheers - this was my issue. If you get an error before the library install step (talking about PIN, just uninstall 1.8.6 and install 1.8.4. Open the Marlin.ino file and it will compile without having to refollow all the steps again - edit see commenting out option below.
hi guys! .. so at least i´m not alone with this "pins" problem, but unfortunately neither of your proposals does work out for me like described here. :-( (TH3D works without problems!)
Hello Thomas I am trying to update the firmware on my board v1.1.2 from creality cr 10 following the steps in your video but when I click on check I get an error "Error resolving FQBN: missing. Error compiling for card sanguinow / ATmega1284 or ATmega1284P (16MHz The card currently selected needs the Arduino core: Arduino that is not installed. " How can I solve? Can you help me please? And one more question can I buy a v1.1.5 card and install it on creality cr10? because i see some sites that recommend it for ender 3 / 3pro or ender 5 but there are also sites that claim to be compatible with cr 10. Thanks
Will I need a bootloader when trying this with an Ender 3 pro with the updated 4.2.7 board? There is nothing showing up under my ports tab.
6 лет назад
Hey come on Tom I wanna got to Hollyday`s and always remember and thinking of flash my board with marlin firmware. And now your coming up with this video. Thanks for al the great vids out there and your share of all that knowleage. Schöne grüsse aus München ;)
Ok... I searched your videos hoping you had posted something on my current problem. Either I missed it or you haven't experienced it. So I'm going to ask here. I just updated to Marlin @t. Before this, I used the factory settings for about a week and marlin 1.9 for a couple days. I didn't have this issue until 2.0.4. Every time I print the calibration squares (I have been using the mesh bed level feature) but now, when gantry returns home after print, I get "thermal runaway bed printer halted: reset machine" But only after the print every time. I used an IR probe to measure temps and the bed never goes above my setting. So i'm worried something is programmed wrong in Marlin, but I never changed any thermal settings. please help.