RE: VFA Artifacts on X+Y Straight Edges
Did you show anything?
For the statistics my values for Input Shaper.
X: MZV 41hz
Y: ZVD 61hzVFA are very acceptable. I made them in a blue color where you can really see everything.
The Nozzle Tool printed in Prusament Orange Petg looks really perfect. Perfect surface.
I would say that it prints a little bit better than my MK4S.
But the difference is marginal and will probably vary depending on the model.
RE: VFA Artifacts on X+Y Straight Edges
For the statistics my values for Input Shaper.
X: MZV 41hz
Y: ZVD 61hz
Another specimen where the Y resonance frequency is much higher than X. How can that be, with the moving mass in Y being much larger?
Actually -- do we know whether "X" and "Y" refer to the movement axes of the print head here, or to the two motors which are labelled X and Y in the Core One (but each drive diagonal movement when moving on their own)? If it's the former, I would expect the Y resonance frequency to be lower than X. If it's the latter, I would expect both frequencies to be roughly equal. But Y higher than X does not make sense to me.
RE: VFA Artifacts on X+Y Straight Edges
For the statistics my values for Input Shaper.
X: MZV 41hz
Y: ZVD 61hzAnother specimen where the Y resonance frequency is much higher than X. How can that be, with the moving mass in Y being much larger?
Actually -- do we know whether "X" and "Y" refer to the movement axes of the print head here, or to the two motors which are labelled X and Y in the Core One (but each drive diagonal movement when moving on their own)? If it's the former, I would expect the Y resonance frequency to be lower than X. If it's the latter, I would expect both frequencies to be roughly equal. But Y higher than X does not make sense to me.
I think X and Y directly refer to the motors, not the cartesian axes; I’ll have a look at the code and see if it’s obvious. Perhaps it’s due to the filter type, i.e. MZV vs. ZVD? Mine is similar:
X: MZV @ 45 Hz
Y: ZVD @ 58 Hz
RE: VFA Artifacts on X+Y Straight Edges
So, the code is in `lib/Marlin/Marlin/src/feature/input_shaper/`, and if you search for "COREXY" you'll see a handful of ifdefs with special handling of physical axes vs logical axes, with a note regarding `AxisConfig` of the X and Y axis stating, "On CoreXY the following apply to the logical movement axis, not the AB directions."
They also use `A_AXIS` and `B_AXIS` when setting the start position, which is much clearer, but that appears to be more recent code according to `git blame`, and most of the code uses transforms of implicit representations.
It's still not completely clear to me, but it looks like I was wrong about the input shaper parameters referring to the A&B motor axes and it instead is referring to the X&Y logical axes.
RE: VFA Artifacts on X+Y Straight Edges
I think X and Y directly refer to the motors, not the cartesian axes; I’ll have a look at the code and see if it’s obvious. Perhaps it’s due to the filter type, i.e. MZV vs. ZVD? Mine is similar:
X: MZV @ 45 Hz
Y: ZVD @ 58 Hz
Thanks for checking the code! So the "X" and "Y" calibrations should actually move only the Nextruder, or the whole X gantry respectively, right? I will try another calibration run later today; maybe one can feel by touch which parts vibrate to confirm this.
If I recall correctly from watching the calibration run, the data analysis first determines the resonance frequencies, then selects the best algorithm. So the frequencies should not depend on the chosen algorithm.
In which case I am still puzzled why the Y resonance frequency would be higher. Prusa's default values (X:60 Hz, Y:50 Hz) are in the direction I would expect; the calibration results on my printer follow the same logic, but are lower (X:46 Hz, Y: 41 Hz). Could there be something else besides the belt elasticity and the print mechanism's moving mass which affects the resonance frequency? Some other elastic component in the system maybe?
RE: VFA Artifacts on X+Y Straight Edges
The selected shapers have nothing to do with the frequency measurement.
It selects the appropriate shaper based on the measurement.
You could also compare the different shapers with a test print at a given frequency.
It is noticeable that the "better" shaper is selected when the Y value is higher.
RE: VFA Artifacts on X+Y Straight Edges
Thanks for checking the code! So the "X" and "Y" calibrations should actually move only the Nextruder, or the whole X gantry respectively, right? I will try another calibration run later today; maybe one can feel by touch which parts vibrate to confirm this.
Yes, it appears so, however as I noted the code uses implicit (ambiguous) representations.
If I recall correctly from watching the calibration run, the data analysis first determines the resonance frequencies, then selects the best algorithm. So the frequencies should not depend on the chosen algorithm.
What I meant by pointing out the different algorithms is that each one weights the inertial data differently to derive its filter, which may shift its characteristic frequency around. It’s all kinda hacky imho in terms of kinematics, and marlin is a spaghetti monster. However, the algorithms are actually pretty straightforward (I was on a different mission, so I put off diving into them for now), laid out in `input_shaper::get` in `input_shaper.cpp`, lines 64-160.
I also got hands on with my machine tramming everything, and in doing so I discovered a few bits rattling around. I'm mulling that over and need to check out a few other things, so I'll report my findings later.
RE: VFA Artifacts on X+Y Straight Edges
What I meant by pointing out the different algorithms is that each one weights the inertial data differently to derive its filter, which may shift its characteristic frequency around.
[...]
I also got hands on with my machine tramming everything, and in doing so I discovered a few bits rattling around. I'm mulling that over and need to check out a few other things, so I'll report my findings later.
I don't think the choice of algorithm affects the displayed characteristic frequency. When I watch the calibration process, the data analysis phase of the input shaper calibration determines the resonance frequency first, before selecting the shaping algorithm. And it apparently does not adapt the displayed frequency after selecting the algorithm.
It seems that the frequencies are actual resonance frequencies of the physical arrangement. (In line with the observation that the sound actually becomes loudest or harshest at that frequency.) The algorithm is chosen afterwards and determines how the software handles "predictions" of the system behavior in response to motor accelerations, and how it mitigates overshoots.
Like you, I am also wondering whether something other than the oscillator formed by print head mass & elastic belt can rattle during the frequency scan, and might shift the detected resonance frequency. As mentioned, the sound becomes "harsh" in my printer around the detected resonance peak, so there are harmonics -- maybe from some lids, mounts, covers rattling on their own?
RE: VFA Artifacts on X+Y Straight Edges
As mentioned, the sound becomes "harsh" in my printer around the detected resonance peak, so there are harmonics -- maybe from some lids, mounts, covers rattling on their own?
In my case, the metal cover for the wiring on the upper back of the machine resonates (rattles) like hell; it needs to be better constrained or damped.
Additionally, during belt tensioning, the idlers on one side were making square wave noises while I plucked the belts. I think the idler inner races aren’t constrained properly, or something’s up with the A/B steppers. I need to investigate more.
RE: VFA Artifacts on X+Y Straight Edges
I don't think the choice of algorithm affects the displayed characteristic frequency. When I watch the calibration process, the data analysis phase of the input shaper calibration determines the resonance frequency first, before selecting the shaping algorithm. And it apparently does not adapt the displayed frequency after selecting the algorithm.
It seems that the frequencies are actual resonance frequencies of the physical arrangement. (In line with the observation that the sound actually becomes loudest or harshest at that frequency.) The algorithm is chosen afterwards and determines how the software handles "predictions" of the system behavior in response to motor accelerations, and how it mitigates overshoots.
As far as the input shaping procedure goes, the frequency displayed is the test frequency, not a result. I’m watching it now and I’m not seeing it.
Yeah, it just finished and I didn’t see any determination of “the” resonance frequency. It just displays the test frequency and then the filter type and frequency at the end. Do you have a pic of what I’m missing?
RE: VFA Artifacts on X+Y Straight Edges
As far as the input shaping procedure goes, the frequency displayed is the test frequency, not a result. I’m watching it now and I’m not seeing it.
Yeah, it just finished and I didn’t see any determination of “the” resonance frequency. It just displays the test frequency and then the filter type and frequency at the end. Do you have a pic of what I’m missing?
You are right -- it goes straight from the frequency scan to "computing best shaper" for me as well. Very strange; I am convinced I saw a phase titled "analysing data" or such, at the end of which it displayed the frequencies -- followed by the "computing best shaper" phase. I must have been hallucinating... Apologies for the false track!
RE: VFA Artifacts on X+Y Straight Edges
Just following up after straightening the gantry and tensioning the belts to 87 Hz.
I ran the homing procedure first, and it took longer and did a bunch of extra sets of taps I hadn't seen before, then the Z-axis bound because the rear lead screw wasn't turning (I lubricated them when I received the printer a couple months ago and never had a problem). I figured I'd moved the Z-axis while straightening the gantry, so I manually rehomed the Z-axis on the bottom mounts.
Problem fixed, homing XY is now just a couple taps and Z doesn't bind. Printed the Vernier Skew Test and it was dead on, where previously it was off by 0.5 mm or something.
I reran input shaping and it came up with X ZVD @ 51 Hz, Y ZVD @ 57 Hz, which was different from before (X MZV @ 45 Hz, Y ZVD @ 58 Hz). All good.
I then reran the phase stepping calibration, and where it completed (a dozen times) without crashing before, I got the out of heap space BSOD once it started on the Y-axis. Perhaps that means my machine is closer to ideal since it seems that everyone else gets the OOM BSOD. According to the devs in this GitHub issue, phase stepping is fixed in their private repo, so hopefully they'll release it as soon as possible. Although, given that they just released v6.3.2 with only a rather disappointing fan test speed change, I'm not holding my breath.
Finally, I reran the VFA test print hoping that it'd be magically better. It wasn't. In fact, the print failed toward the end at 76.6 mm. First print failure I've had (and I'd printed the VFA test half a dozen times before, as well as dozens of other things). Maybe it was a fluke, so I recalibrated Z, reprinted the VFA test, and it failed at the same height, 76.6 mm.
So, I've fixed the gantry skew, but somehow there's a new problem that I have to diagnose. Either way I had planned on checking all of the idlers and perhaps the steppers since it sounds like something there is rattling at certain frequencies. Now I'll also check the Z rods; maybe they shifted somehow during the gantry adjustment. Anyway, I'm not thrilled that fixing one problem not only didn't mitigate VFAs, but also seems to have created another problem.
RE: VFA Artifacts on X+Y Straight Edges
@altaic -- does the Z drive lose steps on its way down, causing a collision of the print head with the print? The fact that you saw the Z axis binding once points in the same direction. I would start by double-checking that the lateral positions of the smooth rods and the lead screws/trapezoidal nuts match. (Drive the bed all the way down, loosen the screws which hold the trapezoidal nuts in place.)
If this should not address it: The two smooth vertical rods on their own are also over-constraining the heatbed. You can ensure that the distance of the linear bearings on the bed matches the rod distance at one selected Z height, by loosening the screws which hold the PCCF bearing mounts to the heatbed. But there is no easy way to ensure that the rods are parallel -- at the bottom end they sit in those non-adjustable plastic cups, and at the top they are held by mounting blocks whose screws are no longer accessible once the CoreXY unit is mounted.
So it's probably best to make the distance of the linear bearings match the distance of the rods while the heatbed sits at a medium Z height. Then, if the rods should not be parallel, you get +- half the deviation at the top and bottom respectively. (The PCCF holders look like they are designed with some flex joints to compensate for distance mismatches. But looking at the parts and their mounting points, I don't see how that would work. And I am not sure that flex would be desirable here, because it would get in the way of a well-defined X position of the bed.)
RE: VFA Artifacts on X+Y Straight Edges
Just following up after straightening the gantry and tensioning the belts to 87 Hz.
How did you straighten the gantry?
RE: VFA Artifacts on X+Y Straight Edges
@altaic -- does the Z drive lose steps on its way down, causing a collision of the print head with the print? The fact that you saw the Z axis binding once points in the same direction.
That was what I was thinking, but it's not clear to me since it's running at 180 mm/s. I sat in front of it and watched but I couldn't tell what happened.
I would start by double-checking that the lateral positions of the smooth rods and the lead screws/trapezoidal nuts match. (Drive the bed all the way down, loosen the screws which hold the trapezoidal nuts in place.)
I'd seen you mention that in other threads, and it's easy, so that's the first thing I tried. My thinking was that the bed being out of level caused the binding which yanked one or more trapezoidal nuts off alignment. They were barely tight on my preassembled machine, so I could see that happening. Anyway, I reseated the trapezoidal nuts and reprinted the VFA test (even uploaded a new code file in case the other one got corrupted or something), to no avail. Failed at the exact same spot.
I'm going to run the VFA test starting at 170 mm/s up to 200 mm/s to test it if's something to do with the high speeds causing lost steps. It'll be at a different height, so if it fails, the Z-axis might be fine and it's something to do with the gantry or extruder.
If this should not address it: The two smooth vertical rods on their own are also over-constraining the heatbed. You can ensure that the distance of the linear bearings on the bed matches the rod distance at one selected Z height, by loosening the screws which hold the PCCF bearing mounts to the heatbed. But there is no easy way to ensure that the rods are parallel -- at the bottom end they sit in those non-adjustable plastic cups, and at the top they are held by mounting blocks whose screws are no longer accessible once the CoreXY unit is mounted.
I have some metrology equipment and I've been planning on checking that. Hopefully the current issue I'm facing doesn't require it.
So it's probably best to make the distance of the linear bearings match the distance of the rods while the heatbed sits at a medium Z height. Then, if the rods should not be parallel, you get +- half the deviation at the top and bottom respectively. (The PCCF holders look like they are designed with some flex joints to compensate for distance mismatches. But looking at the parts and their mounting points, I don't see how that would work. And I am not sure that flex would be desirable here, because it would get in the way of a well-defined X position of the bed.)
Agreed, and thanks for your valuable insight!
RE: VFA Artifacts on X+Y Straight Edges
How did you straighten the gantry?
I followed the directions in a post here from Prusa support's recommendations to loosen some gantry screws and use the gantry as a lever to bend the brackets. It was extremely fiddly, since retightening the belts after getting the gantry seemingly straight caused the gantry to skew again. After a few iterations, the gantry was straight with the belts tight, and, oddly, with them loose as well.
I don't have the post at hand, but you should be able to find it using the forum search.
RE: VFA Artifacts on X+Y Straight Edges
So my newest VFA test from 170 mm/s to 200 mm/s failed during the 190 mm/s section (12.8 mm up). It looked like the XY kinematics seized and the print layer-shifted way to the left (-x). Seems that I messed something up while realigning the gantry. Sigh, back to fiddling with that.
RE: VFA Artifacts on X+Y Straight Edges
So my newest VFA test from 170 mm/s to 200 mm/s failed during the 190 mm/s section (12.8 mm up). It looked like the XY kinematics seized and the print layer-shifted way to the left (-x). Seems that I messed something up while realigning the gantry. Sigh, back to fiddling with that.
Ouch! The kinematics seizing in the X direction is a new one, and I struggle to come up with a plausible cause. I had mentioned the step loss and potential blockage in the Y direction in a couple of other threads, due to the filament sensor cable getting in the way. But where along the X axis could a snag occur?
Please do let us know what you find! I noticed that moving the X axis by hand in my Core One (with the motors powered off) offers more resistance than the Y direction -- no hard stops, but sometimes the drag force increases for several centimeters. So I was also wondering whether something is not quite right -- e.g. belts running too far off-center and rubbing strongly against the idler flanges. But I have not encountered any print errors so far; knocking on wood...
RE: VFA Artifacts on X+Y Straight Edges
Did you use stock settings?
There is a current bug in the software that makes layer shift at fast print speeds with arc fitting turned off or avoid crossing perimeters on, mostly on round objects. https://github.com/prusa3d/Prusa-Firmware-Buddy/issues/4573
RE: VFA Artifacts on X+Y Straight Edges
Ouch! The kinematics seizing in the X direction is a new one, and I struggle to come up with a plausible cause. I had mentioned the step loss and potential blockage in the Y direction in a couple of other threads, due to the filament sensor cable getting in the way. But where along the X axis could a snag occur?
Oh, the Y-axis seized and the X-axis kept moving in the -X direction, causing the layer shift. I’ll check the filament sensor cable for sure, thanks!
I also noticed that the idlers do not seem to be constrained on the inner bearing races. My machine has some buzzing/rattling coming from the belt kinematics when I pluck the belts for tuning, so I’m wondering if one is rattling around its screw or something.