My printers do this from time to time where they just ignore everything i did tl make them work and start using factory values.
It always pisses me off but usually once i find which setting it is i put it to what it needs to be and it’s done.
It’s been 3 days of me giving my printer new e step values with zero result.
At first i adjusted the start gcode in cura but now i’m also using an empty print file with settings and it has no effect.
I have a 30:1 extruder and the values i used so far go from 92 all the way up to 33.000, it actually extruded more at 92 then it did at 33k. The extruded amount seems to be random compared to the e steps i put in, i don’t really know what is happening.
I checked the extruder gears and they look brand new.
What printer do you have? If you link a .gcode file where you set esteps in the start code, but it feels like nothing happen, we could check if there’s something weird going on. If your extruder has grub screws, have you verified that they’re tightened and aligned with the flat side of the shaft?
I have an ender 5+ with a bondtech direct drive extruder. I don’t see any grub screws on it.
It could be something completely different, but if you want to rule out a mechanical issue you could check these things:
- The orientation of the drive gear, and its distance from the motor housing. Step 12 in this guide It’s quite common that people install it the other way because they think it looks wrong. I was pretty close to doing it myself, and had to double check during installation :)
- There ought to be 2 grub screws, circled in this image. The one on the silvery hobbed gear should be aligned with the flat side on the drive shaft (pointed to by arrow). The one on the brass motor gear should be aligned with the flat side on the stepper motor’s shaft. If your stepper motor doesn’t have a flat side you can create one using a metal file.
- IIRC when the BMG is installed you can remove the thumb screw completely to verify that the hobbed gears are aligned with the filament path. If you need to adjust it you can turn the extruder until the grub screw is facing the opening, so you move it without removing the whole extruder.
- Ensure that the thumb screw has the correct tightness. Step 21 in the official Bondtech guide linked above.
I have a different one apparently, the bondtech ddx. It comes with it’s own smaller stepper motor. I ordered a new gear either way since they have an upgraded version now, but mine seem to be on a round axle with bearings.
Little addition though, i completely took apart the extruder to check. The gear that is directly on the extruder is STUCK on there lol. The other secondary gears are on bearings and all still look brand new apart from a tiny amount of filament shavings that i cleaned out right away.
It might be in part that i messed up the thumb screw tightness because i wasn’t aware of their specific instructions. I usually just tightened it to: “meh, feels right” and haven’t had a similar issue before.
My printer is in parts atm as i ordered a new hotend, i’m still waiting for replacement springs as i broke one within 10 minutes of receiving the hot end.
Right, I forgot that they make other extruders than the BMG :) Sounds like the motor gear is press fit mounted on the shaft, which is great (as long as you don’t need to remove the gear).
If you have the printer in parts, I suppose you could run some tests directly on the motor.
First of all, I would recommend resetting the eeprom to the firmware’s default settings by issuing the following commands:
M502 ; Reset to factory defaults M500 ; Save firmware to EEPROM
Then, with the stepper motor not installed in the extruder, set esteps to 200 and instruct the printer to extrude 1 unit filament, to verify that the motor gear turns exactly 1 full turn in 1 second.
M83 ; Set E stepper to "relative" coordinates M92 E200 ; Set E steps/unit to 200 G1 E1 F60 ; Extrude 1 unit, with a feed rate of 60 units per minute = 1 unit per second.
The reason I suggest setting e-steps to 200 for testing is because this stepper motor should require exactly 200 steps per revolution, according to this page. This should make the printer send 200 pulses to the stepper motor for each “unit” (very unlikely that your firmware is configured with something else than unit=millimeter) you tell it to extrude.
If that works as expected, you can try setting esteps to 400, which should result in the motor gear making 2 full turns per unit you tell it to extrude.
M83 ; Set E stepper to "relative" coordinates M92 E400 ; Set E steps/unit to 400 G1 E1 F30 ; Extrude 1 unit, with a feed rate of 30 units per minute = 0.5 unit per second.
I’m lowering the feed rate to make the rotation speed the same, i.e. it should make 2 full turns in 2 seconds now.
If all of this is working, then it seems like your firmware/esteps behaves as expected, and you can set the correct e-steps for this extruder, which should be close to 415.
M502 ; Reset firmware to factory default again, to make sure you aren't accidentally saving something else. M92 E415 ; Set E steps/unit to 415 M500 ; Save firmware
Also check your slicer start/end gcode so that it doesn’t contain any M50x commands that mess up the EEPROM.
If the extruder is still acting up, at least you know that the firmware is probably ok :)
Did you upgrade the extruder yourself btw? Did you adjust the stepper motor current to the correct value? Otherwise here’s a guide how to do that
If you’re wondering why i haven’t replied yet…a friend said it should be easy to put the 5 pro mainboard into my 5 plus, so i decided: “might as well as it’s already apart for upgrades and maintenance”
Turns out it’s not that simple and requires a fair deal of adjustments like the bltouch connector and it only has on Z stepper motor connector on the board.
And i need to figure out how to do the firmware etc…
Have you compiled your own firmware? It can be a little bit tricky figuring out what you need to change, but it’s definitely doable if you have a little bit of experience with computers.
Btw. I think Creality made 2 versions of Ender 5 with different Z leadscrews, so regardless of if you’re trying to use prebuilt firmware or compiling your own you might need to verify that the z-steps is set correctly for your hardware.
Not yet, i’m still working on getting it all back together as i need different connectors and some other hardware.
I thought it would be an easy way to save roughly €100, but alas.
I have a copy of my current settings, dimensions etc. So it should get me some safe variables to start it up once it’s time to test if everything is ok.
I got my e3d hotend and it took me a full 6 minutes to break it. I turned the bottom to line up the cables so it would fit in the bondtech thing and i managed to bend the spring enough that i couldn’t remove the nozzle anymore.
In an attempt to free it i completely fucked up the spring, so i’m back to ordering parts again.
Do you have a way to send commands directly to the printer and get reports back?
Octopi’s interface, or pronterface on a pc with a direct usb to it, are my two go twos.
Marlin, M503 will report all settings (useful notes- esteps, z offset,) and can be used to to confirm that the esteps took in the first place.
If it’s stock firmware, it’s a version of marlin. I would suggest considering flashing a fresh copy from marlin themselves rather than creality. They have profiles for the config.h filed that take out a lot of the tweaking (unless you’ve installed upgrades or whatever. Have to tweak those by hand.)
I did something dumb a while ago, when i was moving i lost the cable to my printer as i never needed it.
Turns out it was a mini USB which i haven’t seen in any device in the past 10 years(jk), so i only have 2 micro sd cards.
I could try to flash a fresh copy of marlin, i’m currently installing an e3d hotend too so i might as well go for a full reset.
But i haven’t flashed a marlin copy yet, i only did one from creality. I hope everything works out when i do.
Sounds like buggy code.
This is pure speculation, but it could be due to how the flash memory is written. Flash stores bits in page blocks. There is no way to partially write to flash memory. Even if a single variable needs to get stored in persistent memory, a whole page (like 4096 bits) must be retrieved, old values copied, new values added or changed, and the whole page gets written back into Flash. If something like power is lost while a page is getting written it is very possible for the last bits to get missed. If these bits are critical it can ruin the page and that can do stuff like mess up your settings. For a dev, there are ways around this in software by adding a redundant page in flash so that old, new, and changing are always on their own pages. If there is a problem the software knows to retrieve the redundant page. These are the types of features that do not make it into cheap project parts printers, and some expensive ones too.
That is way above my knowledge level, damn. Usually what i’ve found on google is that people have a different issue that causes this to happen like a different printer that uses another flavour of gcode that doesn’t use the start gcode.
None of the things i’ve found so far has fixed my issue.
In the past i would do a fresh calibration of all the different settings and eventually the printer would start behaving again.
I’m going to have to do that either way as i have a new hot end coming in today for this printer.
Try a new SD card or try sending gcode over USB and see if that fixes things.