Firmware retraction: Why you should try it out

Поділитися
Вставка
  • Опубліковано 10 лип 2024
  • I’ve wanted to try firmware refraction for a while and I’ve finally gotten around to it. Most folks probably haven’t even heard of it but it may in fact be just what you need. In this video, we cover what retraction is, how it is traditionally handled by the slicer, how firmware retraction differs, and how to set it up. We then explore the advantages and disadvantages based on the entire process.
    Thanks to my patrons who discussed firmware retraction with me to help flesh out the arguments for and against. I guess now I have to add support for it on my free 3D printer calibration website: teachingtechyt.github.io/cali...
    0:00 Introduction
    0:44 What is retraction?
    2:44 Slicer vs firmware retraction
    4:51 Enabling firmware retraction in firmware
    Guide to Marlin firmware editing: • Updated Marlin firmwar...
    Klipper firmware_retraction reference: www.klipper3d.org/Config_Refe...
    RRF M207 reference: docs.duet3d.com/User_manual/R...
    5:35 Slicer config for firmware retraction
    Cura PrinterSettings plugin: marketplace.ultimaker.com/app...
    Simplify3D firmware retraction through post processing guide: thrinter.com/using-firmware-re...
    7:04 Setting firmware retraction parameters
    Marlin M207 reference: marlinfw.org/docs/gcode/M207....
    Marlin M208 reference: marlinfw.org/docs/gcode/M208....
    Klipper firmware retraction gcode reference: www.klipper3d.org/G-Codes.htm...
    RRF M207 reference: docs.duet3d.com/User_manual/R...
    9:06 Advantages
    Retraction test on my free calibration website: teachingtechyt.github.io/cali...
    Fractal vise: • 3D printed fractal vis...
    13:11 Disadvantages
    Buy quality and affordable filament from X3D. Buy 3, get 1 free and a free sample pack with every order: www.x3d.com.au
    Get Quality Resins from 3D Printers Online. 5% off storewide for Teaching Tech subscribers [Code: tech5]
    3dprintersonline.com.au/
    Take a look around and if you like what you see, please subscribe.
    Support me on Patreon: / teachingtech

КОМЕНТАРІ • 160

  • @FilamentFriday
    @FilamentFriday 2 роки тому +40

    Good explanation. I’ve never seen a major benefit to firmware retraction so I still just do all retraction in the slicer.
    Many times stringing appears due to failing PTFE, worn nozzle or slipping extruder gear. Fixing those instead of modifying settings is often times the last thing people do instead of the first.

    • @ishanmamadapur6307
      @ishanmamadapur6307 2 роки тому

      @CHEP Ive been getting hair like stringing after shifting to a dual fan duct with a 5015 blower fan. I'm very perplexed as to why additional cooling is introducing stringing and how could I eliminate it.

    • @TripleJAu
      @TripleJAu 2 роки тому +1

      Another awesome video Michael. I love it when when different content is created. It's always good to see other You Tubers content creators visiting other content creators ( love your channel by the way CHEP)

    • @scleroshima4667
      @scleroshima4667 2 роки тому

      @@ishanmamadapur6307 what are you running your fan at? And are you using dual ducts or single?

    • @Kalvinjj
      @Kalvinjj 2 роки тому

      @@ishanmamadapur6307 As a random crapshot in the dark, I could say maybe your ducts aren't exactly pointing the airflow where you'll want it more, and could be cooling stuff that doesn't need.
      Even a wrong voltage fan could happen without more info (like a 24v fan on a 12v system).

  • @m00seeee
    @m00seeee 2 роки тому +2

    Awesome video yet again Micheal! Appreciate you taking the time to show us configs for different firmwares. This really helps!

  • @videomichel
    @videomichel Рік тому

    I'm catching up with all the Marlin FW features on my Ender3 to prolong it's service life while keeping me proud of it's speeds.
    I've watched this video when it released, and now I am watching it while configuring this setting. Thank you so much for your work Michael.

  • @lloydrmc
    @lloydrmc 2 роки тому +9

    You can tell this man is a teacher, and a good one at that. The video presents repetition and supports different learning styles, as well as being a model of clarity.

  • @bleach_drink_me
    @bleach_drink_me 2 роки тому

    I actually learned about this just a couple days ago when setting up firmware for a couple of my printers. Today your video showed up in my feed.

  • @adrianrubio5396
    @adrianrubio5396 2 роки тому +10

    This is a game changer for me. I knew hardware retraction existed, as I see it when I set up my own firmware, but hadn't considered its advantages. I do a lot of custom printing that requires on-the-fly filament changes and therefore, settings changes. Some of those get missed in the slicers or are no longer valid, because of environmental changes. This will allow me to to tune retraction settings at the printer, as needed.

  • @avejst
    @avejst 2 роки тому

    Great walkthrough of the concept.
    I don't know it was a possibility 👍
    Thanks for sharing your experience with all of us 👍😀

  • @crosswalkguy435
    @crosswalkguy435 2 роки тому

    I had no idea this existed. I am going to try it right away! I really enjoy your channel.

  • @shaunmorrissey7313
    @shaunmorrissey7313 2 роки тому +3

    Everyday is a school day, always something new to learn, I didn't know i could have Z hop as a menu item, so many times i wanted this, That's my weekend sorted, redoing my printers firmware.

  • @jgo3k
    @jgo3k 2 роки тому +1

    First of all, thank you so much for the things I have learned over the past several years 3D printing. I bought an Ender 3, 2 years ago and it runs like a well oiled machine with all its mods thanks to your many tutorials. I finally decided it was time to buy another printer, so I went for the CR10 Smart Pro (despite your review of the non-pro version) because it seemed like it had everything I wanted and I have had so much success with my Ender 3. In any case, after updating the firmware, the printer runs great with one (fairly large) exception: huge blobs and the worst stringing I have ever seen.
    Of course I went to your calibration site to tune my temperature, retraction, e-steps, etc. but nothing seemed to help. Then I realized that, for some reason, every time the printer goes to do a retract, it extrudes instead! I tested this by putting a very large value for the retraction distance, and sure enough, the blobs got bigger, and I still don't detect the filament retracting via the marker marks I made just above the direct drive extruder (rather the printer very forcibly squirts out huge globs of filament every time it travels. Turning retraction off fixes the blobs, but the stringing is still bad (as you might expect when not using retraction).
    So, fingers crossed, I was hoping I could use Firmware retraction instead. So I found the source code that Creality publishes for the CR10 Smart Pro and uncommented FWRETRACT. I set the default retraction distance to 1 (instead of 5), updated the firmware, sliced with the Firmware Retraction setting checked, and I think my result is a little better? Of course, I could continue to keep reupdating the firmware guessing at the settings, but I figured I would post here in case you would be so kind to share any more wisdom you might have that could help fix this issue. Note that I can't find an option on the printer screen to change the retraction settings, and I also have not been able to connect this printer via usb to use pronterface to change settings that way.
    Thanks

  • @Mysguyded40
    @Mysguyded40 2 роки тому

    I've known about this for a while and after watching your video I am going to try it out this weekend when I have time to experiment a bit as I have several different printers to give it a go on.

  • @99prxp
    @99prxp Рік тому

    this exact config worked flawlessly for my direct drive upgrade :) thanks a bunch

  • @enosunim
    @enosunim 14 днів тому

    Very informative! I switched to FW_RETRACT as soon as knew about it. Very useful, as I can modify retract settings on the fly.

  • @muskokaliving2072
    @muskokaliving2072 2 роки тому +38

    When z-hop becomes available in Klipper I'll definitely give it a try. Being able to change z-hop settings mid-print will be helpful from time to time to avoid collision from curling. It's not a big deal but every little thing helps.

    • @pierrelemoine8669
      @pierrelemoine8669 2 роки тому +2

      Have a look at the comment by Pedro Lamas in the start of the comment feed.
      Was gonna post the same as him but he did it first.

    • @muskokaliving2072
      @muskokaliving2072 2 роки тому +1

      @@pierrelemoine8669 I didn't see that comment before. Thanks, I'll try it out.

    • @muskokaliving2072
      @muskokaliving2072 2 роки тому

      @Brian Clymer Yes, cooling was the problem. I have an enclosure for abs and nylon but I have to remember to keep the doors open for PLA.

  • @nagarajaprasad8591
    @nagarajaprasad8591 2 роки тому +1

    Excellent topic and video. Thank you

  • @robincrosscarpenter1
    @robincrosscarpenter1 Рік тому

    Very well stated for everyone to understand. Thank you

  • @schm4704
    @schm4704 2 роки тому

    I will definitely try it, if only for convenience of tuning during stringing test prints. Thanks!

  • @ethansdad3d
    @ethansdad3d 2 роки тому

    Pretty cool feature. Can’t wait for it to be more widely supported.

  • @g.h.c855
    @g.h.c855 2 роки тому

    Tried it after watching this, love it to be able to dial it in mid print is pretty darn useful not all filaments are equal after all

  • @MeyerSantosH
    @MeyerSantosH 2 роки тому +5

    The Professional Firmware for Ender3V2 has firmware retraction in the tune menu, has anyone tried it?

  • @techtalk7018
    @techtalk7018 2 роки тому

    Found an ender 3 pro for 100 will definitely be using this to help with it but not sure I can do this on the adventurer 4. Thanks for another helpful well thought out video. I wish I could make videos so well written.

  • @dac7046
    @dac7046 2 роки тому

    Thanks- I had no idea. I’m a hobbyist and this isn’t top of the list at the moment but I expect to be playing around with 3rd party firmware at some point and will be sure to enable it when I do.

  • @SnorreSelmer
    @SnorreSelmer 2 роки тому

    Definitely testing this on my Klipper'd Tronxy!

  • @truegret7778
    @truegret7778 2 роки тому +1

    Thanks, MIchael - I plan to give it a go.

  • @lescarneiro
    @lescarneiro 2 роки тому

    Never heard of it, now I want to try it out for sure! Let's see if I can do it with my modified Mingda D2

  • @TheVideoGuardian
    @TheVideoGuardian 2 роки тому

    It makes sense to have the feature enabled, I think it has some logistical uses. I personally only use it in start/end scripts and set length long enough to ensure the filament can be removed cold.
    It's a great idea to use it for retraction tests though.

  • @ChrumkavySuchar
    @ChrumkavySuchar 2 роки тому

    Thank you for the detailed video explaining everything. I was wondering how to enable this on my ender 3 S1 when I today flashed Professional Firmware and I found this option in the printer, but didn't know, how to enable it in the slicer. Now i know :)

    • @jamescartash
      @jamescartash Рік тому

      Hi there.. I ve used the suggested start and end gcode or professional firmware but cant find the specific lines i need to add in order to enable it..

  • @ThatJay283
    @ThatJay283 Рік тому

    ive flashed marlin on my printer and i'm trying it out now :)
    i'd say it's definitely very useful as sometimes i want a print to finish and ik it's on its way to completely failing (eg clicking from insufficient cooling), and i really just want to save it. so this'll be really useful for me i imagine.

  • @billclark5943
    @billclark5943 2 роки тому

    I have those tweezers @ 10:12 too. Great for grabbing the purge bugger at Z zero right before the print starts

  • @PedroLamas
    @PedroLamas 2 роки тому +13

    Not sure if you are aware of this, but you CAN override G-Code commands in Klipper, so it would be possible to add z-hop to G10 and G11!

    • @PedroLamas
      @PedroLamas 2 роки тому +3

      Untested, but....
      [gcode_macro G10]
      rename_existing: G10.1
      gcode:
      G1 Z{printer.toolhead.position.z|float + 0.4} F1200
      G10.1 {rawparams}
      [gcode_macro G11]
      rename_existing: G11.1
      gcode:
      G1 Z{printer.toolhead.position.z|float - 0.4} F1200
      G11.1 {rawparams}

    • @justinellis1691
      @justinellis1691 Рік тому

      @@PedroLamas search my comment above (youtube noob, i don't understand tagging)

    • @PedroLamas
      @PedroLamas Рік тому

      @@justinellis1691 sorry, can't find any comment of yours anywhere...

  • @capitalinventor4823
    @capitalinventor4823 2 роки тому

    Excellent video. Thank you very much. A question about the Cure plugin. Do you know if one has to keep the settings for the retraction in the profile or set the distance to 0mm to disable the feature? I'm guessing it depends on how the plugin works. I'm guessing that it modifies what Cura writes into the g-code when the conditions for a retraction are met so one would need to keep the retraction settings enabled in the profile.

  • @yancymuu4977
    @yancymuu4977 2 роки тому

    Thanks for the great videos. I have been using your retraction calibration as I have upgraded my extruder on my new AS-x2. One thing that is a mystery to me is why the retraction has a "sweet spot". That is, no retraction generates much stringing, while too much retraction also can generate as much or worse then none at all. My original simple minded intuition guides me to think that larger retraction should generate smaller stringing. Perhaps you could talk about this in one of your future videos.

    • @filipbronola536
      @filipbronola536 11 місяців тому

      Probably it's retracting so much so quickly that the filament stretches faster than it can be pulled back, causing the effect of the retraction being similar to a lower setting.

  • @woodwaker1
    @woodwaker1 2 роки тому

    Great information.. Like the OmniDrop

  • @marcusbuschbeck1121
    @marcusbuschbeck1121 Рік тому

    FW retraction can be very easy set in a Config File on my Tronxy x5sa-400. I think i will try it, because i want to use may first Gcodes before the Upgrade of an Allmetal Heatbreak. Thank you for the video!

  • @nickdanyluk
    @nickdanyluk 2 роки тому +5

    Just wanted to note that currently Klipper doesn't appear to support a negative unretract distance (my printer.cfg throws an error with the -0.2 shown), however you can modify the python code to allow it if you want

    • @Kalvinjj
      @Kalvinjj 2 роки тому +1

      Wouldn't that mean that instead of adding a tiny bit of material (like Cura has a setting to compensate travel stringing and such), it would return less than it should, and under extrude right after a retract and maybe leave small holes in the seams?

  • @TurnRacing
    @TurnRacing 2 роки тому

    Sweet!

  • @superbrain3848
    @superbrain3848 2 роки тому

    with RRF its worth looking into the filament profiles, makes it quite easy to configure firmware retractions for each filament quite easy

  • @jcdock
    @jcdock 2 роки тому

    I'm going to enable it on my printer, it seems like the benifits out weigh the downsides such as the mixed support from slicers which will hopefully improve

  • @justinchamberlin4195
    @justinchamberlin4195 2 роки тому +1

    I don't think I will be trying it. Other than some basic calibration prints (cubes and temp towers), I rarely keep old gcode laying around - I'm happy to re-slice things if I need to print them more than once over time. I also like printing with a variety of materials, and would rather control the retraction settings automatically with my slicer profiles than having to manually adjust the settings when I switch from PLA to PETG to TPU and back again...and maybe forgetting to do so.
    All that being said, this is a neat concept that I'd never heard of before. Great video!

  • @billallen275
    @billallen275 2 роки тому

    Great, I was wondering if this was supported while printing last night! I wanted to be able to change the parameters while printing! 🙂🙂🙂👍

  • @Kyuosho8276
    @Kyuosho8276 2 роки тому

    Firmware retraction is supported in Cura V 4.13.0. If you go down into the Printer Settings section there is a selectable button called "Firmware Rertraction".
    Thanks, excellent video though!

  • @1967friend
    @1967friend 2 роки тому

    Have taken note of FW retraction when compiling. But never looked into it. Thanks for the explanation. Looks like a fantastic way to calibrate retraction settings very quickly and easily.
    Q: once enabled via FW is it possible to alternate back and forth between FW retraction and Slicer retraction? Or must you re compile with it disabled?
    What do you recommend for someone who uses different material types which require different retractions all the time? Would scripting be the best solution? Or just manually change the FW retraction settings?

    • @TheVideoGuardian
      @TheVideoGuardian 2 роки тому

      I'm not sure about other firmware, but marlin has an option to force fw retractions (which I think is on by default despite when you enable fw retract). If you make sure to comment out FWRETRACT_AUTORETRACT you should then be able to switch between normal and FW retraction just by the options in the slicer. Otherwise it will try to convert small E moves into fw retract moves.

  • @user-ig1eg1jl4p
    @user-ig1eg1jl4p 2 роки тому

    thanks

  • @esotericbear9829
    @esotericbear9829 2 роки тому

    Super cool.
    I only have 1 printer & I'm moving to Klipper very soon, so I won't be using it for now. If they can get Z hop to work, then I'll try it.

  • @FedorAntony
    @FedorAntony Рік тому +1

    Is there a way to communicate the filament type used in the start gcode from the slicer to Klipper? And to then set the retraction settings in the start_print macro in Klipper depending on which filament is being used? I’m currently calling the start_print Klipper macro from within SuperSlicer, along with the initial hot end and bed temperatures so I was wondering if I could pass more variables to that.

  • @mobilechaosyt
    @mobilechaosyt 2 роки тому +10

    It would be nice if all the machine specific settings like speed, retraction, etc were all firmware based, and the gcode had only the specifics about the print. This way you can use the same gcode on all printers (given the print bed was large enough and you are running the same nozzle size) and the firmware would set the default speed and retraction settings. At that point you could then share the gcode with anyone specify with them the nozzle size and away they print. One problem I see is that the gcode has an absolute x0,y0 at the bottom left of the bed and this should be changed to an absolute x0,y0 at the center of the bed (using negative numbers in some directions which is common in geometry classes) making it easier to printer the same gcode on multiple sized printers with printers too small getting a gcode out of range error when starting the print.
    Another usability option would be to make 3d printers similar to 2d printers where they have drivers that would be installed on your computer, and when you open your slicer and 3d file it would use your configured 3d printer driver and you just hit print. This would definitely make it easier for everyone to print as desired especially with a multi user household. I could see a company like HP get into 3d printers where they create an all in one system that would allow you to download the STL file to an STL viewer and print directly to their 3D printer. No slicing required because it would happen automagically. The only issue then becomes maintenance of the printhead, but that could also be a replaceable part.

    • @claws61821
      @claws61821 2 роки тому

      The biggest detractor of putting all machine settings into firmware from the end user perspective is that --
      - it will likely override g-code settings
      - manufacturers will lock it to one setting and make it inaccessible to the user
      - it will get removed from slicers entirely
      -- all of which effectively results in loss of tools and features necessary for regular diagnostics, routine maintenance, and aftermarket upgrades.

    • @mobilechaosyt
      @mobilechaosyt 2 роки тому

      @@claws61821 the idea is to have the firmware settings be user configurable because when you change parts and perform upgrades these settings will change. However for an HP version of a 3D Printer I would expect it to be cheap enough to be throw away with a life expectancy of 10000 hours and print out of the box similar to the way 2D printers are now.

    • @Kalvinjj
      @Kalvinjj 2 роки тому

      @@mobilechaosyt I have kind of that on my printer, setting the important stuff like max acceleration and axis speed in firmware as a value the slicer can try to surpass, but then the printer ignores (unless you do add some M(something) code there to override/store new values of course). In my case with the BTT closed loop steppers, the speed is pretty much hard set for me at ~80mm/s X and Y (they are normally faster than this but not on lead screws), more than that and the motors will lag behind making chanfers in the corners of squares for example, even tho they won't miss their target at the end.
      I just set the firmware to that max speed and then I can run diagonals at 80mm/s per axis (so around 113mm/s) without worrying about it going out of sync.

  • @localhero44
    @localhero44 2 роки тому +3

    Hi Michael, first comment on your channel (but I watched your videos for a looong time). As always very well done video, thanks for all this quality and explanations. I wanted to try the firmware retraction in Klipper but I can't put a negative unretract distance as shown (it returns an error in printer.cfg). How did you manage it ?

    • @TeachingTech
      @TeachingTech  2 роки тому +2

      My apologies, I have just experienced the same. I should have tested more. I guess another small limitation of Klipper currently.

    • @localhero44
      @localhero44 2 роки тому +1

      @@TeachingTech No need to apologize ;)

  • @umranium
    @umranium 2 роки тому +4

    Great video. Only issue with firmware retraction is that it doesn't have wipe. Retract+wipe in my opinion > retract only. And wiping requires knowledge of the model getting printed.

    • @OscarOliu
      @OscarOliu 2 роки тому

      I mean, if you don't retract before you wipe it just oozes out later :-D

  • @AnthonyGriz
    @AnthonyGriz 2 роки тому

    Just waiting on getting a BIQU H2 hotend & BigTreeTech mainboard to upgrade my old Alfawise U10, and will look into firmware retraction once all setup and calibrated. No I hadn't heard of firmware retraction, though like the ability to adjust mid-print as you highlighted. Out of interest, what is the printer that you show running at 10:19 ?

  • @dev-debug
    @dev-debug 2 роки тому +4

    I print a lot of PETG. Stringing varies a bit by brand so I have slicer profiles for them with slightly different retractions. I think moving to firmware for me would be a headache. It is cool though, didn't know the option existed.

  • @chrisharcum4465
    @chrisharcum4465 2 роки тому

    Great video, the ability to change retraction settings mid print would be fantastic for tweaking settings for a new filament in near real time. I'm assuming you could then disable firmware retraction via g-code once you have a profile dialed in enabling easy changes between filament without altering firmware settings each time?

  • @MrBlueDotStudios
    @MrBlueDotStudios 2 роки тому +3

    Great video, and interesting. I'm probably going to stick with in-slicer retraction because I've spent the last 2+ years setting up my printing profiles, and at this point it's just one click to go from PLA to TPU or whatever. That is some insane control you get over your printer though! Might give firmware retraction a try for my next printer build, if only just to calibrate and tune it.

  • @larryfroot
    @larryfroot Рік тому

    I've been struggling with retraction settings after upgrading to a Mosquito / Bondtech setup. I can't tell you how useful it's going to be to change retraction settings on the fly to get my setup tuned in correctly. I just installed the Printer Settings plugin in Cura and voila! This is going to save so much time.

  • @RomanoPRODUCTION
    @RomanoPRODUCTION 2 роки тому

    Brothers and Sisters Vampire 🦇 Brother Michael has spoken ❤️❤️❤️💪💪💪

  • @bassplaya69er
    @bassplaya69er 2 роки тому

    I think a hybrid approach is best though i am not sure how to implement it.
    i want slicer based reaction, but the slicer should output variables for retraction distance, speed, unretract distance, zhop distance etc. this would allow the firmware to modify the variables mid print but also allow features like wipe on retract that are impossible with straight firmware retraction.

  • @schogaia
    @schogaia 2 роки тому

    The only printer where I am using firmware retraction is one with a mixing hotend. When you have that you want both extruders to equally retract no matter what mixing ratio you have.

  • @janikhen7736
    @janikhen7736 2 роки тому +1

    I originally just looked at fw retract for retraction tuning, but then stuck with it mostly because it enabled me to easily specify the retraction settings in the start gcode of the different filaments.

  • @scleroshima4667
    @scleroshima4667 2 роки тому +2

    I’m with the Klipper crowd on it. Great feature but it is kind of useless until z-hop is integrated somehow.

  • @christosminiotis
    @christosminiotis 2 роки тому

    Wait, so other than temperature, what's stopping us from using the same Gcode for different materials / printers?

  • @someguy2741
    @someguy2741 2 роки тому +5

    Looks like your BLtouch had an incident. I broke a probe at a poor time. Aside from buying 10 replacement probes I also printed a guard around the BLtouch such that the retracted probe is hidden completely. Hopefully that works... but being a rather secure guard it will probably smash into a failed print with force and create worse damage :p learning is fun!

    • @Kalvinjj
      @Kalvinjj 2 роки тому

      I've had a failing 5v cable to my toolhead once, the clone BL Touch (A Triangle Labs 3D touch, pretty good build and precision) kept resetting mid print, which means it went through that cycling up/down on the probe... Of course it happened in a print once that it bent it beautifully.
      Could still "fix" it by bending it back but thankfully those probe needles/stylus (whatever it's called) are cheap and readily available even locally, bought 2 as spares and replaced the bent one when I could.

  • @geekyboi
    @geekyboi 2 роки тому +12

    Could definitely get z-hop going in Klipper by overriding the g10 and g11 gcodes with Macros. Bit hacky but would work

  • @RomanoPRODUCTION
    @RomanoPRODUCTION 2 роки тому

    Grinning Michael is cute 🥰

  • @linearlink
    @linearlink 2 роки тому

    I’ve not done any testing to figure out what the root cause is, but after switching to Klipper (initially with slicer retraction in Cura) and setting up firmware retraction on my Ender 5+, any stringing I previously had with retraction was all but eliminated. Print speed doesn’t seem to affect it either.

  • @IAmTheCraftsman
    @IAmTheCraftsman 3 місяці тому

    Thank you for this video! I have done all the steps you outlined for Klipper, but I do not see the option to adjust retraction parameters in my lcd screen menu. I am running a Switchwire conversion with 12864 lcd screen with a STM32 USB board controlling the screen via my pi which is running Klipper. Any ideas on how to fix the menu?
    EDIT - Got it sorted!

  • @bepstein111
    @bepstein111 2 роки тому +4

    My hesitation to enable FW Retraction is that I have different retraction settings dialed in for every filament I have, and profiles setup in slicer to handle all that. If my only option is to manually dial those in every time I switch filament, then nah, I'm good. I don't need to fix what ain't broken.

    • @bzhang438
      @bzhang438 2 роки тому

      In a proper implementation, your slicer will use a gcode command to update the fw retract parameters to match your filament. That said, it's not in Cura by default and you have to write it in your start gcode

    • @bepstein111
      @bepstein111 2 роки тому

      @@bzhang438 ohhhhhh is that what the per-filament custom gcode is for in prusa/superslicer!?
      you learn something new every day....

  • @DLSDKING
    @DLSDKING 2 роки тому

    I would try this on my ender 3. During one of my prints at finer resolution, the filament thinned out with bowden extruder and failed mid print. This feature might be helpful foe those cases.
    Thank you

  • @OldCurmudgeon3DP
    @OldCurmudgeon3DP 2 роки тому

    Superslicer appears to allow Zhop even with f/w retraction enabled. Not a pure f/w solution, but then I don't know if Klipper allows retraction changes during a print. Never looked for it.
    I've been using f/w retraction in Klipper for a over a year. Combined with Pressure Advance it's only about 0.4mm for direct drive.

  • @bigtst36
    @bigtst36 3 місяці тому

    Noob question. If using firmware retraction, should I disable retraction in slicer? Or does enabling firmware retraction in slicer bypass the sli8cer retraction settings?

  • @michaelplaczek9385
    @michaelplaczek9385 2 роки тому +4

    Won't ideal retraction amounts differ between filament?

  • @HighT3ch
    @HighT3ch 2 роки тому

    I have an Ender 3v2 I enabled retraction in firmware but I don't have the dedicated retraction menu in my display. Is it only available in Ender 3 non v2 printers?

  • @bluedeath996
    @bluedeath996 2 роки тому

    Is there some way to put material in the header of the g-code and have it pick different retractions based upon this? I understand you could put the retraction settings in the start g-code, but that stops it from working automatically if you change the printer. I am running duet, and would prefer knowledge on this, but klipper would be good too.

    • @haysoos123
      @haysoos123 2 роки тому

      Some slicers can do per-filament custom g-code, so this should be possible. Haven't checked others in a while, but superslicer and prusaslicer can do this. I don't know about duet, but in klipper you can set it with SET_RETRACTION. For this to work you'd have to have the same firmware on different printers of course.

  • @xc68000
    @xc68000 Рік тому

    Firmware retraction in klipper with the same values as my slicer, produces noticeably stringier prints. Can you think of a reason why? I have cartisian style printer with about 400mm bowden and v6.

  • @ltlk937
    @ltlk937 2 роки тому

    I just enabled this on one of my printers. I noticed no change in quality other than a reduction in file size... And the extruder motor its self was quite a bit quieter.

  • @6yjjk
    @6yjjk 2 роки тому

    At 4:30 do you still need the G92 E0 before the G10?

  • @edcbabc
    @edcbabc 2 роки тому

    Interesting video. I knew it existed, but never tried it.
    Don't think I will as cannot really see an advantage for me and the way I work. I have just one printer, but do change filaments. Therefore it is more convenient to just be able to slice with different settings for the filaments, it keeps all settings in one place. If I had multiple printers with one filament type each, I can see it might be the other way round.
    Also, I use Cura, having tried and discarded (for now) SuperSlicer, and I don't really want to use Cura add ins.

  • @emilymarriott5927
    @emilymarriott5927 Рік тому

    Any idea what support looks like on a Prusa? I know they're a Marlin fork, and when I look in the source code it looks like it's enabled, but it doesn't have the firmware retraction menu as far as I can find looking through the menus.
    EDIT: Prusa documentation says it has the G Code to set the firmware-based retraction settings, and the feature is definitely enabled in the source code, so I'm thinking that Prusa just lacks a firmware retraction menu. Given I generally use Octoprint, that's not terrible, but it's hardly as convenient as you're showing Marlin firmware as being.

  • @danex902
    @danex902 2 роки тому

    Any idea on how to change the firmware retraction settings during a print via terminal when using Klipper?

    • @danex902
      @danex902 2 роки тому

      Nevermind!. I figured out how to make a macro in octoklipper that brings up a prompt for the firmware retraction values. It's working well!

  • @zimmi586
    @zimmi586 2 роки тому

    Dear Teaching Tech ...
    How does retraction relate to a 2 in 1 out hotend such as the Geeetech A20M ? I am having a hard time finding the sweet spot for regular PLA ? I have had success with PETG (Distance: 6mm Speed: 35mm/s at 230c), PLA+ (Distance: 6mm Speed: 35mm/s at 200c), and Matte PLA (Distance: 5.5mm Speed: 35mm/s at 185c ???) but PLA is doing my head ? Why ? I have dried the PLA in a food dehydrator several times and the best I can get is fine strands at 180c that leave little bumps behind ??? Please help ... Thank you ...

  • @TORDesign
    @TORDesign 2 роки тому

    Thanks I might give that a try on my marlin machines.
    One comment as an aside - I dont like the little test models for retraction because they are not the real world - when I use those from SuperSlicer calibration they all look perfect on my Voron on all seetings, but then on prints there are retraction problems. Why? Because I believe the higher speed of larger models creates more pressure in the nozzle, which oozes much more.
    Also Ive never been able to figure out the speed of retraction needed. Please do a video on that.

  • @paytonsmith7201
    @paytonsmith7201 Рік тому

    Where can I get a hotend that's hotswappable like that? What is it called?

  • @gfodale
    @gfodale 2 роки тому

    I'll stick to software. As much as I switch up filaments, I like to be able to tweak on the fly if necessary. Seldom needed, but handy when it is needed. (Ender 3 v2 w/ rpie control)

  • @JesusRodriguez-pm4up
    @JesusRodriguez-pm4up 3 місяці тому

    And those of us who want to maintain the laminator retractions for when we change materials? How do we do it

  • @MrMegaPussyPlayer
    @MrMegaPussyPlayer 2 роки тому

    14:36 I would try, but apparently my too old board has so little memory I have to pick and choose which features I have to include. And It runs well enough to not replace the board.
    Especially because of my depression, my printers are only catching dust now.

  • @O_p_T_i_X
    @O_p_T_i_X 2 роки тому +1

    First 🙌 Love your content 🙏

  • @theviperman3
    @theviperman3 2 роки тому

    Does pressure advance and firmware retraction work properly?

  • @tombutterfield2262
    @tombutterfield2262 2 роки тому +1

    Can you explain why deretraction has a different speed/distance value to the actual retraction please? Great video as always.

    • @hechuan5075
      @hechuan5075 2 роки тому

      Following

    • @TeachingTech
      @TeachingTech  2 роки тому +1

      Some people find it helps reduce stringing and/or blobbing on restart. Personally I keep it the same. You can test the difference on your printer with this test if you like: teachingtechyt.github.io/calibration.html#retraction

  • @SerialChillerBH
    @SerialChillerBH Місяць тому

    NOTE: in klipper ( unretract_extra_length ) when set up to ( -0.2) an error pops up, so i just made it to 0.8 not sure if it will work

  • @aidangillett5396
    @aidangillett5396 2 роки тому

    Firmware retraction is just 1 small step towards where we should be heading on the software side of things: Entirely relative rather than absolute instructions
    I've always thought that g-code is really not a good format, especially not for 3d printing. Ideally you should be able to take the same 'sliced' file and send it to any printer and it would produce the same object in more or less the same way, but with printer specific parameters, not hard-coded values in g-code itself. Meaning a cartesian with X,Y at 0,0 loaded with PLA, or a delta with X,Y in the middle of the bed and loaded with PETG shouldn't matter, they'll both print the part in the middle of the bed but at different speeds/temperatures/fan/etc for their known setup. As you change out filament or alter something, you set that globally on the printer, you shouldn't need to re-slice the file
    Practically everything such as nozzle/bed temperature, extrusion amount, fan speeds etc should all be something that the printer itself decides, not the code. Thus you can tune all your differing printers precisely and they will all make the same object from the same file. Switching out filament, or deciding to print 10c hotter/colder, or even scaling the entire object slightly larger/smaller should all be printer setting and shouldn't require re-slicing a new file, its silly and archaic. Fine for a CNC machine that never changes and only ever does custom jobs, but g-code is a crap format for the highly variable and community driven 4environment of 3d printing
    The slicers job shouldn't be to dictate the exact printer you use. The slicer should instead be tweakable to give out general instructions like "slow down because we're about to do a bridging section/infil/whatever" but not mandate exact speeds and instructions all the way through. About the only thing I can think of that would still need to be hard-coded is nozzle size/line width and a different file would be needed, since any adjustment would drastically alter the geometry. Almost everything else can be inferred in real-time by the printer with its own known setup

  • @rylanwintle7610
    @rylanwintle7610 2 роки тому

    I’m probably not going to try it because I’m an average user and my prints already come out beautiful on my prusa mini.

  • @pusherd123
    @pusherd123 2 роки тому

    If you have a sliced file with the retraction built in, you'd still need to reslice for the G10/G11 though... Wouldn't you?

  • @uncleslapslap
    @uncleslapslap Рік тому

    It doesn't appear possible to set a negative value to unretract_extra_length in Klipper. The error says that the minimum is 0.0

  • @EricMcCormick
    @EricMcCormick 2 роки тому

    I just downloaded Cura 5.0.0. Looking for the firmware retraction settings but can't find it

  • @pitpao
    @pitpao 4 місяці тому +1

    What about switching filament types? wouldn't the settings need to be different for different filaments? I use Klipper.

    • @TeachingTech
      @TeachingTech  4 місяці тому

      You could have a filament specific macro/gcode for each filament set up in your slicer that loads the parameters needed.

    • @pitpao
      @pitpao 4 місяці тому +1

      @@TeachingTech thanks. Sounds complicated though.

  • @lukeswanson6887
    @lukeswanson6887 Рік тому +1

    The only downside I see to this is the fact that I have to manually change settings every time I switch materials, say if I go from ASA with hardly any stringing to TPU which requires a bit more retraction. In a slicer, I can just create a separate profile for this.

  • @wlritchi
    @wlritchi 2 роки тому

    I've been using firmware retraction with CuraEngine for years using the machine_firmware_retract=True setting. Is that setting not supported by the GUI?

  • @manuelpeirofrias293
    @manuelpeirofrias293 2 роки тому

    Firmware retraction in Klipper, can be edited on the fly?

  • @watermelon73729
    @watermelon73729 Рік тому +1

    I'm new to 3d printing what do i do?

  • @makewithmegma
    @makewithmegma 2 роки тому

    🔥💕👍

  • @bernardtarver
    @bernardtarver 2 роки тому

    What about min travel to trigger a retraction?

  • @m97120
    @m97120 2 роки тому +1

    I'm not sure if I fully understand the benefits. Retraction can be different per filament, not just per machine. If the settings are stored in the firmware then per-filament retraction settings aren't possible. Unless I just don't get it.

    • @TeachingTech
      @TeachingTech  2 роки тому

      I guess you could load your firmware retraction parameters in the slicer still, but tied to a filament profile rather than the printer profile.