Extruder Calibration a must

I suggest you set you value to about 238-239 steps and then adjust your flow by print a single wall box in vase/spiralize mode and check the wall thickness. Adjust flow until your wall thickness matches your extrusion width set in your slicer.

Try regular PLA instead of silk to get a handle on your settings.

1 Like

I initially found mine to off by over 20% using PETG filament, and it was extremely inconsistent. First run through, I had 17mm or so under extrusion. I recalculated and set the M92 E value but now I was 8mm under. I recalculated again and re-set, but now was 5mm under. When I turned the hotend temperature from 220 degrees up to 240 degrees, it seemed to settle on the last value. Ran a print, and appeared to be getting some over extrusion. The print went fairly well, but got a blob that broke about 10 layers resulting in an air print.

Today I thought Iā€™d have another go and change tack a little. I removed the hotend (leave it plugged in electrically, just pull the hotend out of the printhead) and re-ran the calibration. Result was 9.8% I set the M92 E value to 235.26 can now run it back and forward and it always settles in the same spot.

To do this, I opened the filament change door (for want of a better name) and loosened the 1.5mm grubscrew that holds the hotend in place, then slid the hotend out, fed some filament through and closed the door. To get the extruder to work without heating the hotend I used M302. The sequence of commands looked like this:

M302 S0 ;set cold extrusion prevention temperature to 0 degrees C
G91 ;Use relative movements
G1 E100 F300 ;(after marking the filament) extrude 100mm at 300mm/min
M92 E235.26 ;Set the extrude multiplier to the new value
G1 E-100 F300 ;Pull the filament back (mark it at 100mm again, there are now 2 marks)
G1 E100 F300 ;Check that extrusion is now correct
M302 S165 ;Set the cold extrusion prevention temperature back to something sensible
M500 ;Save settings
G1 E100 F300 ;Check that cold extrusion works again (filament shouldnā€™t move)

You can do all this over WiFi.

Itā€™s worth noting that under/over extrusion can depend strongly on a number of factors:

  1. a slightly clogged nozzle
  2. a worn nozzle
  3. Print temperature (lower temps tend to result in under extrusion)
  4. Filament type (best temperature varies from manufacturer to manufacturer)
  5. Filament diameter (cheaper filaments can have varying diameters)

Speaking of clogged nozzles, I found quite a bit of dirt in mine when I pulled it. It made me realise that leaving your filament on the machine for days will allow it to collect dust that goes - thatā€™s right - into the hotend. Dust in the hotend will both partly clog it and abrade it over time, changing its extrusion profile. This can be misleading because the hotend will initially underextrude because of the dust in it, but then return to normal as the dust gets pushed out (assuming the hotend doesnā€™t get totally clogged).

Also, when changing from a higher temperature material to a lower one, heat the hotend to the highest temperature used for the higer temperature material. If you donā€™t get it hot enough, any remaining higher temperature plastic will just stay in the hotend. Ideally, you should have a different hotend for each material that you print with.

5 Likes

Good post, you should know however that last I heard m500 does not work over wifi, so your setting may not have saved. Also calibrating without the hot end installed can cause inaccuracy. Not only are you removing the pressure caused by a potential clog, but also the normal pressure caused by pushing the filament through a ptfe tube and a .4mm opening. Though I would imagine calibrating with petg would be difficult.

Iā€™ll check to see if my settings were saved over WiFi. I canā€™t see a reason why they wouldnā€™t unless Luban, or the snapmaker flavour of Marllin, is specifically coded to prevent it. For some reason, Luban does not appear to be coded to display the controllers response over WiFi, or perhaps the controller has been coded not to send it, I donā€™t know.

The Snapmaker 2.0 hotend does not have a PTFE tube in it, itā€™s all stainless steel. I do agree, however, that the pressure induced by the hotend could change the extruder calibration. Different filament types, different manufacturers, even different colours will also have an effect. Even without the hotend in place, the factory extruder calibration will cause AT LEAST 10% or so underextrusion. Putting the hotend in can make it worse.

The upshot is, as has been mentioned all over the internet for the past decade or so, you really need to run some calibration for each different filament type that you use.

The hotend has a PTFE tube in it:

Yes the stock hot end uses a ptfe tube as part of the heat break, though an alternative solid ss option was found. Also i donā€™t think either luban or the firmware was specifically coded not to receive data. I belive that the coding for the wifi does not include the option to read from the marlin firmware (the wifi i belive is in the Android powered screen, while the controller runs marlin). This means that you have only a 1 way flow of data over wifi, from luban to the controller. I belive saving setting requires two way communication, but i could be mistaken.

And you are correct nearly constant calibration is required for perfect prints, it is why Iā€™m annoyed that ā€œflowā€ is not adjustable mid print, it makes fine tuning difficult.

@Atom Iā€™m sure you know this, but for othersā€™ sake:

You can tune flow and speed mid-print either
a) With gcode over the terminal in the form of M220 and M221
b) Via a controller interface, such as Simplify3Dā€™s:

2 Likes

@brent yes you are correct I was referring to the ability to change it from the touch screen. Unfortunately my computer is not close enough to connect with a USB (without great effort) and I do not trust streaming a print over wifi. Honestly It seems like a waste to have such a nice controll interface with so little use. They could have implemented an entire machine interface right on the TS.

100% agreed. Iā€™ve used RAMPS and Repetier before, and a staple of those is the ability to change speed and flow mid-print. It seems like even a modest market-survey wouldā€™ve uncovered such functionality as even Marlin, the base firmware of this product, contains such functionality. But it was obfuscated away using the touchscreen interface, which implemented no such functionality.

Really I wish they would release the firmware for the TS then maybe I could hack it to run something like 3d fox. It would be a far better TS interface

1 Like

Hi Guys,
I tried to do this calibration and after the initial extrusion I got and error message and now my hot end wonā€™t heat up anymore. The error only popped up for a second I think the nozzle temp dropped while it was extruding.
Iā€™ve turned the printer off and turned it back on and canā€™t heat the nozzle any ideas what has happened and how to fix it?
May also have had something to do with my Windows 7 PC canā€™t talk to the Snapmaker anymore but Iā€™m still working on this one it appears it has lost the comm port.
So I just tried to print from the controller and it says unable to start please check your machine settings and try again.
Also I didnā€™t 503 save anything I didnā€™t get that far.

I had that happen once, the heater pins disconnected:

Following are the steps to set your E-steps using Octoprint / Octopi. Itā€™s largely the same but just wanted to let others find this in the future when searching.

  1. Go to Temperature tab, set end temperature as needed for your filament.
  2. Measure and cut 100mm of filament as instructed above.
  3. Switch to Terminal tab. I find it helpful to enable autoscroll, and check the boxes to suppress the verbose messages, but this is not necessary.
  4. Type M83 into the input box and click Send. (You should see a response back of Recv: ok after every command.)
  5. Enter G1 E100 F300 and click Send.
  6. Once extruding has completed, measure the remaining filament to find your R value.
  7. In the terminal, enter M503. In the response you get back, look for the text M92 and find the E value. We will call this value ā€œEā€
  8. Calculate ā€œSā€ with the following equation, S = E * 100/(100-R). As an example, if you measured R = 11mm, and found E = 212.21, then S = 212.21 * 100/(100-11) = 238.44
  9. Update your ā€œSā€ value or the new steps/mm value to the SM2 by sending the following command in the terminal, M92 E###.##. For the example above, it would be M92 E238.44
  10. To save this value permanently send the M500 command
  11. You can verify everything is updated by resending M503 and look for the E value in the M92 line.

Some screenshots:

4 Likes

Iā€™m not sure if this is the case.
It had been printing and when I try to print now it says check the settings.
Can this pin pop out on itā€™s own and if its a setting is there a way to reset all of them and start again?

Agreed, itā€™s probably unlikely it popped out on its own mid-print.

I havenā€™t seen the check settings message youā€™re referring to, was just sharing my own experience.

Only other thing I can think of involves using a multimeter to verify the heater has nominally correct values (24ohms ish for the heater) and that the heater pins have the correct voltage on them when the heater is on.

If the temp for the hot end is not reading room temp, and is instead reading like -30C or something, then the thermistor also needs to be checked.

I was under the impression that if I had not saved the changes when I power cycle the printer all the setting should be reset. They didnā€™t but when I try and print a file on the touch screen it says unable to start please check your settings. Would there be an error setting that I need to clear before I can print again?
Is there any other more stable software option that I can use?

The best interface I know of for 3d printing is simplify 3d. Cura works well for slicing but it will not connect directly with the printer. There is a log file in the printer that if you post could give us more information that might help find the problem. You can find it by going to settings -> export log

Atom I have export the error log to the usb and there are 3 files on it FW-0, SC_0 and SC_1 which one should I look in and what exactly am I looking for or should I upload the whole file?

Would flashing a new firmware replace all the settings?

1 Like

Sorry I couldnā€™t tell you what to look for, if you post them one of us may notice something wrong however. And no flashing firmware does not reset all settings. But I think m502 does.