Skip to main content

Last piece too short

Hello, I have a Palette 3 Pro, and I’m trying to print the calibration keychain. I’ve noticed that the print consistently runs out of filament at the very end, in the exact same spot.

I’m not sure, but I think this only started happening when I added some GCode to my “End of print” Sequence to do a “hot unload”, which basically boils down to: “retract the filament 46.5mm while the hot-end is still hot, so that when I need to unload that filament for the next print, I don’t have to heat up the hot end first”.

Sure enough, when I…

  1. Take out the retracted leftover piece from the previous print,
  2. Feed a piece of filament through the extruder to the (cold) hot-end, and
  3. Compare the lengths,

…the leftover piece is almost 4cm shorter.

(True, it’s not exactly 46.5mm short, but it’s close enough to make me raise an eyebrow. And, if you add on the filament that’s still in the hot-end, and the filament string that comes out attached to the end of the leftover piece… hmmm :) )

What I think is happening is that the Palette sees that 46.5mm retraction in the “End of print” sequence, and subtracts that length from the length of the final piece. And since the Palette cuts the filament at the end of the print, that’s 46.5mm of filament that never makes it to the extruder… which causes the printer to run out of filament at the end of the print.

I’ll test this by commenting-out my 46.5mm retraction GCode. If the print finishes without running out of filament, then I know my 46.5mm retraction is to blame :)

If I’m right about this, then this begs the question: is there a “right” way to do a “hot unload” at the end of the print, that won’t confuse the Palette?

I read somewhere that underextrusion could be caused by the Bowden tube length being configured too short in the Palette, so I’ve increased that setting by 4cm — twice — and, both times, the leftover piece is still short by the exact same amount. So I don’t think that’s it :)

Answer this question I have this problem too

Is this a good question?

Score 1
Add a comment

4 Answers

Most Helpful Answer

I think you’re right on as to what’s happening, it sees the extra retraction at the end and subtracts that, the problem being that it then thinks that the end piece is always long enough no matter what because of where the filament “ends”.

You might be able to get it to work by adding 8-16 cm to the bowden length value, though I’m not sure how that will affect loading.

The other way would be to just do a short automatic retract at the end of the print (1cm or so) to get the filament out of the hot end, then manually pull it the rest of the way after. not optimal, but should still work.

Some firmwares also support automatic unload as a command that may or may not be caught by Canvas - Marlin uses M702 for this, which you can give a parameter to tell it how far to unload.

Was this answer helpful?

Score 2
Add a comment

I removed my retraction GCode from my “End of print” sequence, and that certainly helped, but it’s still running out of filament, on what looks to be the very last layer — of the 3 “tops” of the calibration keychain, 1 of them ends up not fully filled-in.

I increased my loading offset by 10cm, and got this (note, I removed the brim already):

Block Image

Looks great, right? But flip it over:

Block Image

The border should be yellow, the interior should be green. So it’s like it ran out of the yellow filament too soon, like the first piece was too short.

I reduced the new loading offset by 5cm (i.e. a 5cm increase, overall), and got this (note, brim still attached):

Block Image

Block Image

We’re back to not filling in the last “top”. Note on the bottom: no yellow-to-green on the transition tower, and some of the yellow ended up inside the keychain, and some of the green ended up on the border. So, it’s like the first piece is too short now.


Overall, the conclusion I’m leaning towards is: if I increase the loading offset, I fix the filament running out on the top, but mess up the colors on the bottom. If I decrease the loading offset, I fix the colors on the bottom, but run out of filament on the top.


One possibility that I’m thinking of is the fact that my BMG extruder makes a fast whirring sound when it does retractions — when I feel like it shouldn’t be making any sound — but I’ve watched inside the Palette’s filament buffer during a retraction, and I can’t tell whether or not the filament is actually retracting at all.

So I’m wondering if, instead of retracting, it’s skipping, and then all of those failed retractions are adding up at the end of the print, which causes me to run out of filament.

Was this answer helpful?

Score 0
Add a comment

An update on this, I went back to the stock extruder (and changed my esteps back too, of course), thinking that the BMG extruder wasn’t retracting (due to the whirring sound I mentioned). The issue persists: increasing the Loading Offset ensures that the “tops” all complete, but the first color transition is moved off of the transition tower and into the first layer of the keychain. Correspondingly, Smart Loading wastes more filament before the start of the print.

I measured everything very precisely…

  • 57 cm Output Tube length (including the portion of the Output Tube that is inside the Palette 3 Pro)
  • 57 cm Buffer Tube length
  • 445 mm Loading Offset (from the tip of the hot-end, to the opposite side of the extruder)

…and entered those values into the Palette. The Output Tube length and Buffer Tube length have remained the same for all of my recent tests. The only value I’m changing is the Loading Offset. Using the 445 mm Loading Offset by far wastes the least filament during Smart Load, and the first layer color transition lands smack in the middle of the transition tower — which tells me that 445 mm is the right Loading Offset. (Also, every time I’ve changed the Loading Offset in the Palette, I change it in Canvas to match.)

My pings hover between 85% and 90%, usually around 88%. My pongs, around 100%. Many of my tests are with the Historical Modifier at 100% (since I’ve yet to complete a good print). But, once — just as a test — I told the Palette at the end of a print that the print was good, and (as I expected) the Palette updated the Historical Modifier. I changed absolutely nothing, and re-ran the same print again, expecting that it would run out of filament in the exact same place… but it ran out even sooner.

I’m using Mika3D filament, with a Creality CR-6 SE, official firmware (not the community firmware). As recommended by another post that I found here, I used the CR-10 profile, and made only one change to it: I changed the build volume to match the CR-6.

I’ve factory reset the Palette (and re-installed all of the updates), since another post that I found suggested that the Palette stores other calibration info for which there is no user interface… but this didn’t help.

Every test has been using the most recent Palette firmware (12/21/2021).

(Interestingly, the first time I factory reset the Palette — while I still had the BMG extruder installed — it of course prompted me to update; I said “Yes”, and it downloaded all available updates. The second time I factory reset it — right after re-installing the stock extruder — it prompted me to update, I said “Yes” again… but, this time, it said there weren’t any updates to install, and the firmware was still the 12/21/2021 version. It makes me wonder if either A) the factory reset didn’t actually factory reset, or B) saying “Yes” to download updates causes those updates to be installed to the firmware image that is used for the next factory reset?)

The core problem is that the printer is running out of filament towards the end of the print. (Within the last layer, seemingly?) It’s as if the Palette is simply cutting that final piece too short. I’ve even watched the print as it finishes, and I see the filament disappear into the extruder, then I hear the characteristic “click click click” of the extruder gear as the end of the filament goes past the gear, the last few drops come out of the hot-end, but the printer continues “printing” because it’s not actually done.

I’m at the end of my rope with this. I’ve printed literally dozens of calibration keychains, often times only changing a single variable between prints, trying to learn as much as I can to get everything dialed in. I feel like, at this point, my only recourse is to pursue a refund or a warranty claim. Help?

Was this answer helpful?

Score 0
Add a comment

Hm, if the output tube length was set significantly too long, I think the pallet would cut early assuming it had more buffer between itself and the nozzle.

I’m definitely a novice and just taking a WAG, but I thought output tube length was measured from the output connector on the P3 to the print head, not counting anything in the P3.

My (only) key chain test print finished with ~4” sticking out the top of my hot end, but that was several firmware releases ago, and the first layer transition did not locate properly because I significantly over-preloaded the filament lol. So more tuning to do on my setup and take this with a grain of salt, but I didn’t run out of filament.


Was this answer helpful?

Score 0
Add a comment

Add your answer

Jeremy Prine will be eternally grateful.
View Statistics:

Past 24 Hours: 1

Past 7 Days: 4

Past 30 Days: 29

All Time: 211

Contact Mosaic Support Team

© 2022 Mosaic Manufacturing Ltd.