What are the speed limits for the different print speeds in Slic3r and the Printrbot? After getting my Plus dialed in for size accuracy ( within .003" ) I thought I would check out the speed limit. I started out with everything at 100, did a print and then went 50 higher. I kept going up to 500 and it is still printing. I'm sure this isn't really happening. Then I went back down to 200 and it looks like it is printing at about the same speed. Are there limits to how fast I can go? Is there any way to see how fast it is actually going?

Speed Limit

A) speed of x, y, z and e is capped in firmware. I believe Marlin defaults are 450mm/s for x and y.

B) more importantly these printers do not simply go from 0 to the defined speed. They accelerate to the set speed. Changing the speed from say 10mm/s to 80mm/s you will notice the difference because the print has enough distance to accelerate to the given speed. The default acceleration in Marlin is 3000mm/s^2. This means that given you max build size, you can only attain a maximum speed based on the distance you have available and your acceleration setting.

There are a number of issues you'd need to overcome with speed. First, the motor stepping frequency causing electromagentic noise and loss within the motor cables. Since they're not signal wires, they carry the full power needed to drive the motors. So when they quickly alternate back and forth, between different poles, switching polarity, etc., it's quite an EMI crapfest that causes the wires to negate each others' signals at higher speeds. So you lose steps (slipping easier), lose torque, and sometimes the motor just grinds if it goes too fast. The default firmware settings essentially have no limits - 3000mm/s (as I believe I've seen default) is about 6.5 MPH, so let's picture your printhead moving at the speed of a bicycle for a split second. The problem is that the firmware settings are tied to "speed" instead of "steps per second" as they should be. Speed could physically change, if the motors have different gearing... but all the X/Y/Z/E motors have the same rotational-speed limitations. Seems outright foolish that Marlin would tie the limits to axis speed instead of motor rotation speed.

Second, the extruder can't keep up with high speeds of anything. So if you're trying to blaze a quick straight line of plastic, you can forget it! The limit you can get is when you raise Z and disable motors, heat up the extruder, then see how fast you can turn the gear by hand without stripping. That's how fast the thing can ever print - and even then, it's a crapshoot that the faster you print, the less likely the layers will be to stick to each other, as the extruded plastic won't have enough heat stored to be able to melt and fuse to the underlying layer.

Third, the biggest problem with the Printrbot design, is X/Y jerk. When you go faster, it tries to apply that to everything. So when you go around the teeth of a motor or some narrow infill, the machine snaps back and forth on each segment, vibrating the machine and causing belts to slip, motors to skip, etc. Inertia is a bitch. I found some ways to minimize that jerk by having it slow down (further) around small segments: viewtopic.php?f=28&t=1116 - but you really can't (shouldn't) do much about the small segments.

Slower = better for most cases. Much as I'd hate to say... otherwise you'll probably just end up crapping out junk prints.

Did you do an M203 and up the max speeds? I'm at the wrong computer and don't recall what the defaults are, but IIRC they were pretty low. M503 (just type M503 in the command window) will tell you what the current settings are). They're somewhat arbitrarily set, remember Marlin isn't aimed at just Printrbot's and I don't believe the defaults were adjusted in the Printrbot specific version. They're also in mm/second (mm/minute vs mm/sec is a frequent confusion issued) so multiply by 60 to get mm/min (the feedrate on G commands is mm/min). You're limited by the speed of the slowest axis, but thinking about how X, Y,Z, and the extruder limits would interact is beyond my insufficiently caffeinated brain.

Marlin claims a 30kHz step rate, or around 460 mm/sec with the pbot's X and Y around 65 steps/mm. Like all marketing claims that 30kHz is probably overstated, but 20k should be pretty doable (around 300 mm/s X,Y, 10 mm/s Z, 30mm/sec Z)). That's still audio range, the stepper wiring shouldn't be an issue at that low a frequency. See CL1's microstepping discussions elsewhere, too. If you ever get to where Marlin's a limit check out linuxcnc.org - I get a 50kHz step rate (way faster than the hardware) on the machine that drives my CNC router.

Jerk (basically how fast you can yank an axis sideways while it's moving?) seems to be a big topic in research circles, but the discussions and papers are from the academic crowd. They rapidly degrade into math that's beyond my 40+ year old memory of all those classes I took in ee school. FF4 probably understands it a lot better than I do.

Don't let all the reasons why it won't work discourage you. Bump up the max speeds and play with the acceleration and jerk values (one a time, of course) and see what your one of a kind Pbot will do! If you have a way to video your bot (with a ruler somewhere in the background) and then single step through the individual frames it would be real interesting to see just how fast it's really going.

All you risk is a pile of blobs in the saved for filabot box, maybe vibrating your bot onto the floor, and a massive explosion of flying bot fragments.

Kirk

Edit: fix min/sec mistake

0

Last edited by Mooselake on 2012-Aug-Wed-20-Aug, edited 1 time in total.

I'm at work now but when I get home later or tomorrow morning I will try to absorb the last couple posts. I don't quite understand all that but am very interested in it. I'm getting pretty decent prints and like to push limits to see what they will do before it flies across the room . I too think these machines are capable of more. As far as I know I have it going as fast as it will go with things as they are. I just need to be able to change things to push it farther. Thanks.

drawcut wrote:FYI, simple way to think about it:Velocity (speed) is the rate of change of position.Acceleration is the rate of change of velocity.Jerk is the rate of change of acceleration.

Thanks! Good explanation.

drawcut wrote:ETA: Jerks are bad.

So my wife keeps telling me

Any advice on tuning the Marlin type of jerk? I'd suspect that blobs or gaps at corners would be clues to to slow or fast, missed steps if it's way too high, and that there'd be major interaction with acceleration rates, but I'm probably a jerk jerk.

I really haven't had much time yet to play with the accel and jerk values. I'd start with FalconFour's post in Showcase that he links to above. Also this blog post has some good info as well: http://blog.lincomatic.com/?p=773

I have not messed with them yet, but I did want to modify the XY Jerk setting. Please correct me if i'm wrong but to modify the XY JERK to 10mm/sec I could enter: M205 X10 then entering M500. Has anyone got any recommendations regarding a good XY Jerk setting?

I asked RichRap about his speed settings on twitter, and whether or not he had blogged anything useful, his reply:

not yet, but it's a good idea. Print speeds and finish times are a LOT faster when you start to turn up acceleration.I now tend to print at below 80mm/sec. but I have 2x travel speed and 3x Max acceleration of 1year ago. Things print a lot quicker.

Does anyone have found good & faster settings so far?I got everything dialed in a bit better now on my LC, but I get the impression I could speed things up a little without too much quality problems. I am unsure on how to modify the settings though, as just increasing the speed values would probably do no good without changing some of the acceleration and extrusion settings?

I have 3 different speeds set up for each layer thickness configuation in Slic3r. for example 0.3 medium, 0.1 slow, 0.25 fast... etc. in each of these i have the layer height and speed settings set up. with the idea that slow, medium and fast have the same speed settings.

being new to all this i thought i was getting different speeds. but after using these configs i was noticing that i can only seem to hit a maximum print speed and any numbers above are ignored. i feels like its around 75mm/s. so if i set a speed above this amount (just a guess) it will only print at 75mm/s.

what am i missing? is there some speed max set in firmware? if so where is it?

here is my header. i have some slower speeds set here because i am trying this out. it seems to work. see, i set the slow/medium/fast speed amounts based on assuming the fastest i could print was around 200mm/s. but it seems like "fast" is the same speed as "medium" and "slow" is not much slower than "medium"... this would make sense if there is some max speed set somewhere i didn't know about.

Ok I figured it out. it was nice to use google to search for this and find the first link this thread on printrbottalk. i merged my thread below into this one...

ok so there are max speeds set in the firmware. if you do M501 you get M203 X60.00 Y60.00 Z2.00 E14.00

so for my configs, anything above 60 was being ignored! this explains why i was thinking i wasn't getting anything faster than a moderate speed. even though i set the parameters in slic3r.

so i opened up the throttle by manually entering M203 X200.00 Y20.00 Z5.00 E14.00

I experimented with Z and found 5 to be the fastest I could go up. now with my fast configs... ITS FAST! wow...

i am printing a small cube now to test it. its printing very fast at around 150-170mm/s. print quality is down but at least now i can get the fast speeds.

you have to put the M203 command in your g-code header. be careful with this as it will make your PB print very quickly which may result in undesirable results or even permanent damage. know what you are doing.

it's probably in the firmware code, hidden like the high temp hard-coded limit of 250C, it won't print out to any kind of info dump, but it's there lurking in the code none-the-less... also same thing for the X,Y,and Z hard-coded limits of 205mm (and on some bots, only 190mm i think it was) again, not able to be shown via an "M" command, but it will prevent your hypothetical super-duper QUAD-Bot from doing anything more than a regular bots stock build-volume... unless you hack the firmware and recompile it with the new larger limits...

Yes, the limits are set in the firmware. i can see where these are set along with some other things including the print end stop max's. all this can be adjusted in the firmware. being able to modify the firmware and reload into the board is very useful!

Here's the story: I had set up speed configs in slic3r: slow, med, fast. basically slow speeds were set around 40mm/s, medium 60mm/s and fast 100-120mm/s. i just assumed because i set these up, it was printing at those speeds. however i did changes some of the faster speeds and wasn't noticing a speed change. this led me to wonder if there were max speeds set up in the firmware. sure enough there are! so now with M203 we can over-ride these. this printer can move fast!

ResultsMeasured only up to the point where the solid infill starts = 84 layers

Please note that the actual print speed in mm/s was not measured in any of these cases.

Comparing the quality of the prints (pictures to come soon), there is no appreciable difference between the two. the corners of print 3 (full speed) are a little less nice than print 1 or 2 but not a lot. also the top layers which require 100% infill are pretty close. however, I am sure full speed wont work for all print jobs. speed will need to be set accordingly.

Note how acceleration matters (between print 2 and 3). Reduced acceleration will slow your print down but you will get better print results and your printer will like you for it as it will run mechanically smoother when it changes direction. I am tempted to try values >1000. i think 700 is a bit too slow. the goal would be to find a number that gives a good balance of acceleration and speed. and in fact it may differ between the X and Y axis as they mechanically different. one idea would be to have Y be a larger number as it has less mass than X - slower acceleration would mean less inertia for the more massive X axis, especially in light of PBHQ using larger motors.

Video 1: this is the default firmware speed setting and slightly slowed down acceleration setting

Just a note to those that dont know, when the extruder movement comes to a stop and start, it needs to slow down and speed up. we can control how quickly it does this - acceleration. the default is no controlled acceleration, it relies on the mechanical limits. with g-code you can slow down the deceleration to a stop and the acceleration to full speed again with the M201 command. I use 700 for X and Y which offers some slowdown and speed-up. this of course slows down the over-all print speed. but you get better corners.

in your g-code header, you will then be able to utilize slicer speed settings above 60mm/s in the XY. the default for Z is 2, through experimenting I found Z5 to work. however Z6 caused the motors to lock up. I left the default Z2 in the above as Z movement is not going to have a significant impact on print speed. but if you want you can experiment with Z speed, keeping in mind that my bot wont work above Z5.

also, I printed a larger block object at full speed 200mm/s (not sure what the actual mechanical speed was) but it quit 1/2 through! the extruder just moved to the left and it stopped. i power-cycled the PB and it worked fine. running at speeds faster than default (60mm/s) you do at your own risk.

default is 2000 for X and Y which basically means none. this results in jerky movements at corners or where the hot end changes direction. I found 500 to really slow things down. it runs nice and smooth. but with 700 there was no change in print quality but it sped things up. experiment with these numbers in your g-code header to find what works for you.

WOW! This really makes a difference with speed. It's what I've been looking for for a long time. I've been able to bump up the speeds without any adverse effects except that the corners stick out more than normal. Not sure why. Thanks Plexus.

Thanks to Plexus, I was printing last night and a policeman pulled my printer over and wrote it a ticket. Great work and very helpful since I am printing a bunch of cal pieces and now they take much less time.

I have a feeling this is going to increase the frequency of lube events though.

Oh, you ought to pull that post, put a disclaimer on it that you should do it after you are pretty well "tuned up" and make it sticky.

This is a fascinating discussion. Along with Plexus, I assumed that the Y-table mass would be less than the Extruder with its motor, but I took actual measurements while building my kit and found it's not the case. The Extruder with its carriage (i.e. everything that the X-axis motor must move) weighs about 1.1 pounds. On the other hand, the Y-axis table for a Printrbot Plus with the heated bed and a pane of glass weighs about 2.2 pounds. The glass alone accounts for 0.8 pounds of that, so aluminum sounds like a very good alternative.

From a mechanical engineering point of view, you have a mass coupled to an actuator. The less mass you have, and the "stiffer" your actuator, the faster you can move the mass around. The actuation force comes from a stepper motor, delivered through a toothed belt, both of which have a finite "stiffness" and therefore there are mechanical limits to how fast you can move - or more precisely how fast you can accelerate (change the speed or direction of motion). Plexus has shown that the default values in the software are significantly less than optimum for a Printrbot Plus.

On my "to-do" list is to take my smartphone and tape it down onto the Y-table. Then I'll use a vibration analysis app to measure the actual acceleration and jerk. Mechanical engineers often test this kind of system with an accelerometer by tapping it lightly with a hammer. Not enough to make the motor slip a step, but just enough to excite the natural vibrational frequencies of the system.

Another point is that the wooden bed on a Printrbot Plus seems to have much more wood than absolutely necessary. It extends 4" beyond the heater, when less than one inch would do. And if you are using glass or aluminum on top, and cork or silicone under the heater, then the wood underneath the stack doesn't have to be solid. You could drill out several "lightening holes" and reduce the mass of wood.The big problem for me is: If I shorten the bed then I must drill new holes for attaching the clamps that hold the mounting rods - and the distance between these holes needs to be VERY precise in order to keep the rods exactly parallel.

RetireeJay wrote:Another point is that the wooden bed on a Printrbot Plus seems to have much more wood than absolutely necessary. It extends 4" beyond the heater, when less than one inch would do. >>snip<<The big problem for me is: If I shorten the bed then I must drill new holes for attaching the clamps that hold the mounting rods - and the distance between these holes needs to be VERY precise in order to keep the rods exactly parallel.

true, but then you lose some of your Y-Axis distance... the so-called "Extra" distance is there to let the rods slide thru the linear bearings all the way up to the very end of travel. if you shorten the distance between the bed mounting points you will ALSO shorten your MAX Y Travel.

I think the reason why the wooden bed is longer than it should be is because the extruder is not truly center. The way its mounted makes it about 4" off center so the extra length from wooden bed has to make up for that offset distance. If you were to change the X frame to a horizontal rod setup like most mendel machines, the wooden bed would be a lot smaller.

I have a feeling that cutting holes to lighten the mass of the Y carriage is going to compromise the structural integrity of the wood bed. The belt applies a lot of stress to the bed and it may creep and deform. Would need figure a way to apply some sort of additional support at the right spot without increasing the mass. The X carriage mass can be lighten by switching to a bowden setup.

I'm interested about that vibration test. The new slic3r added a new but untested feature that gives you the ability to fiddle with the frequency or vibration. I can also perform this test and give you the data.

gyronictonic wrote:...I have a feeling that cutting holes to lighten the mass of the Y carriage is going to compromise the structural integrity of the wood bed. ...I'm interested about that vibration test. The new slic3r added a new but untested feature that gives you the ability to fiddle with the frequency or vibration. I can also perform this test and give you the data.

I widened the opening in the middle and do not see any problems doing it. Just keep in mind that you can lower the acceleration if you observe any weakness. (The belt pulls the sides.)The frequency in Slic3r is useless for all printer designs with moving bed. The more material you extrude to the bed, the more you lower the resonance frequency. Means, it is not constant. Skeinforge has an option to bypass the resonance by "waving" the speed and I feel it is the best for now.

I've tried to set up 8 slic3r configs that increase in speed. the idea is to have 8 speed settings that ideally are linear. the results are interesting. here are 7 of the 8 - I didn't print the slowest one yet because its going to take a long time. these prints have XY acceleration set to 1000. the purpose was not to do pure speed tests (with the fastest acceleration set) but to get a real-life sense of speed (slower acceleration helps print quality).

The nominal setting for perimeters is used as the benchmark for nominal speed. the last % number represents the change in % from the previous speed. the first % number is the % change in actual total print speed from the previous one.

The % change of print speed vs nominal speed is pretty linear up to speed #5. higher than #5 there are diminishing returns to increasing the nominal print speeds. from #5 to #8, the nominal speed change is 133% but the actual speed change is only 32%.

This may be why PBHQ set the firmware max speeds to 60mm/s because higher nominal speeds don't translate to actual speed.

This opens the door to a lot of modifications to increase the actual speed. this is where having a lighter motor on X will help. this could be a rabbit's hole in terms of obsessing over speed increases and could be a lot of fun to create a high performance Printrbot. but for now at least I know how my printer performs.

Note on the test printI used the pyramid I used in the test videos in the previous post. it has a 30mm square base and is 40mm tall. i think its a good test because it does a good section of infill and then the top 1/3 goes into 100% infill. so the print gives a good range including perimeters, 10% infill, solid infill, corner changes. here is the slicer summary:

As a side note, if you use repetier-host you can change most (if not all) of the firmware values under EEPROM settings and avoid command lines altogether. I've been using it for months and I've never had to use one command line code. Set the new value, reboot printer, and it's using the new values.

Adjusting that acceleration setting from 2000 down to 700 really helps with bumpy corners. I also upped my max speed from 60 to 100 without much quality degradation.

plexus wrote:This may be why PBHQ set the firmware max speeds to 60mm/s because higher nominal speeds don't translate to actual speed.

I started out with 60mm/s infill and the 0.5mm nozzle on 3mm PLA at 185 C. The extruder gear starts hopping with the increased struggle to supply soft plastic fast enough. If I go slower for my infill, then it can complete even large infills without depleting the soft plastic supply in the extruder faster than new hard plastic can be melted. Maybe a hotter extruder would work better but a colored PLA that I'm using is prone to spiderwebby effects at just 185 C.

holmes4 wrote:Why would a lighter motor help on the X axis? The only motion of the X motor is in the Z direction.

To clarify I didn't say "X motor" I said "motor on X". obviously the X axis drive motor would have no effect but the motor ON the X axis, that being the extruder motor, would benefit from being as light as possible.

However it remains to be seen where the significant mechanical speed limitations actually are. is it a weight issue? or perhaps just the max speed that the motor can spin under load? i think its going to be a combination of things but it would be nice to find one thing that is more significant than the others. that would make it easier to speed up without having to tweek a bunch of things.

To close the loop on my earlier posts, I have now attempted to measure the Y-axis motion with the accelerometer built into my smartphone. I say "attempted" because it didn't really work out. The time interval between data points is 20ms, which is not fast enough to really see what's going on. Also, the acceleration is relatively low relative to full scale, so there's a resolution problem there, too.

I did modify the bed. I left a solid inch of wood all the way around the original perimeter, and I also left a solid inch-wide "beam" of wood between the two belt anchor points. I made sure that the corners and a substantial part of each edge of the heated PC board were supported. But in the areas not "protected" by these rules, I drilled holes varying from 1" to 2-1/2" in diameter. Mostly, the holes are not connected or overlapping, so the effect is vaguely like a "truss bridge" structure. You see things like this in the frames of airplanes. Overall, I took about 1/2 pound of wood away from the assembly. Perhaps not terribly significant on an assembly that starts out at well over 2 pounds (including the silicone pad below the heater and the glass above), but little things can add up.

BedWithHoles_sm.jpg (28.02 KiB) Viewed 23405 times

By the way, while it is true that the mass of the bed increases as you build your part, the contribution to the mass in terms of dynamics will generally be negligible. Most of the parts I expect to make will weigh a fraction of an ounce. An entire roll of filament is only one pound, right?

The Extruder with its carriage weighs just over 1 pound, less than half the Y-table. So I wonder if we can optimize the speed of the system by using different maximum speeds and different acceleration rates for X and Y?

0

Last edited by RetireeJay on 2013-Feb-Thu-14-Feb, edited 1 time in total.

I am doing some experiments. I did a run of my speed settings from 2-8 (previous post) with XY acceleration set to 1000 and XY jerk to 20. i was noticing that as the speeds increased, i was getting bulky corners. so i created a version of each speed gcode file from 5-8 with acceleration at 9000 and XY jerk at 50, basically set to the maximums.

Of course this sped up the prints. for example, the speed 8 print with the slower acceleration clocked in at 9:59 but with fast acceleration 7:18 (about 25% faster with the fast acceleration). i will work out a new matrix using the fast acceleration times and see if there is more linearity in the fast end.

but one thing i am noticing is that there is much less corner bulk with fast acceleration! make sense though, right?

also... with acceleration at 1000 there is still more corner bulk than with acceleration at 9000 even on the slower prints. i only went down to my #5 setting though. but #5 with slow acceleration (1000) produces WORSE quality than at fast acceleration (9000).

this kind of blows away the idea that slowing your acceleration down produces better quality. frankly i think slowing it down some is just good for the printer. so maybe 5000? im definitely not going to go as low as 1000 and those that say numbers line 400 are good, well, do a comparison and see if its any better.

much better results over-all with HIGHER acceleration and jerk settings9000/50 might be a bit fast (accel/jerk) - im currently using 4000/25there is some but not a huge difference between the two groups especially in the slower endthere is an upper limit of speed on my printer at around the 100mm/s mark average speed

and most important: best results with slow to fast speeds are had with higher acceleration and jerk settings

I will post pictures soon. you will see! there are 14 prints to shoot so its going to take some time to do. the results can be seen in less bulky corners and more uniform surfaces.

I was using Mr jaws as a test for the acceleration. I scaled it down to 37 mm total length for testing and 700 acceleration at 100 mm/s had less corner bumping than 2000 acceleration at the same speed.

Granted, I scaled it down to around .3 of normal, but at that scale 700 acceleration made it better than the default 2000. I print a lot of tiny parts so this helps me a lot. I'll try 1000 acceleration and see how that goes, total print times didn't vary at much (if at all) between tests.

It could be that there is no one ideal setting for accel and jerk for given speeds. or it could be variations in our printers. but i get better results slow to fast with faster acceleration. however 9000 is just too much at fast speeds. so i am using 4000 and 25 and that seems ok. maybe its then pointless to share these numbers as universal settings??

plexus wrote:It could be that there is no one ideal setting for accel and jerk for given speeds. or it could be variations in our printers. but i get better results slow to fast with faster acceleration. however 9000 is just too much at fast speeds. so i am using 4000 and 25 and that seems ok. maybe its then pointless to share these numbers as universal settings??

I think I have a good example here:

It gives an idea what to look for when printing faster and having weak hardware.

This has been a fantastic thread!ALOT of VERY hard work, alot of testing and GREAT documentation!

I am going to try some different settings like the ones posted here, to see if I can't get things printed a little faster with good results, also.I am going to create several printer profiles in repetir so that I can select the speed vs. quality in the future.Thank You for your time and effort!Of course, I still need to get my prints to stick yet!

I have created several print speed "profiles" using slicer/configure/print settings/speed and also added the custom G codes to set max speed, X,Y,Z stepper calibration values and acceleration as I did see the EEPROM values change a couple of times and don't know why it did that, so I wanted to make SURE I override the eeprom settings when I print.

They do show up in the generated Gcode after slicing so I know the calibrated values are there.WOW, the fastest REALLY makes the printer MOVE!!! I didn't use any filament YET, but will time a couple of prints and see if the printer is really moving as fast as the profile is set for... speed isn't necessarily the goal, but speed AND quality are so we'll see!

plexus wrote:Ok I figured it out. it was nice to use google to search for this and find the first link this thread on printrbottalk. i merged my thread below into this one...

ok so there are max speeds set in the firmware. if you do M501 you get M203 X60.00 Y60.00 Z2.00 E14.00

so for my configs, anything above 60 was being ignored! this explains why i was thinking i wasn't getting anything faster than a moderate speed. even though i set the parameters in slic3r.

so i opened up the throttle by manually entering M203 X200.00 Y20.00 Z5.00 E14.00 **did you mean 200.00?-**

I experimented with Z and found 5 to be the fastest I could go up. now with my fast configs... ITS FAST! wow...

i am printing a small cube now to test it. its printing very fast at around 150-170mm/s. print quality is down but at least now i can get the fast speeds.

you have to put the M203 command in your g-code header. be careful with this as it will make your PB print very quickly which may result in undesirable results or even permanent damage. know what you are doing.

Also, it took me a while to figure out where these speed settings were going, but I found that they are under slicer/configure/print settings/speed.It would have been nice (NOT a sarcastic remark, please) to mention where these settings go for us noobies.

I also added start Gcodes to the slicer/configure/printer settings/custom gcode to force calibration, speed and acceleration.

pomonabill221 wrote:I have created several print speed "profiles" using slicer/configure/print settings/speed and also added the custom G codes to set max speed, X,Y,Z stepper calibration values and acceleration as I did see the EEPROM values change a couple of times and don't know why it did that, so I wanted to make SURE I override the eeprom settings when I print.

They do show up in the generated Gcode after slicing so I know the calibrated values are there.WOW, the fastest REALLY makes the printer MOVE!!! I didn't use any filament YET, but will time a couple of prints and see if the printer is really moving as fast as the profile is set for... speed isn't necessarily the goal, but speed AND quality are so we'll see!

Thanks alot for this thread! Very helpful!

****** Important ****After thinking about what I did, creating custom G code entries for max speed, stepper cal, acceleration, It came to my attention that this is NOT the way to set these values and errors and omissions are all to easy to make, so creating custom G codes for these values is NOT A GOOD IDEA and should NOT be done!

As was pointed out to me, the ONLY place for X,Y,Z stepper cal., max speed and max accel., should be in the e2prom settings.Once your calibrated values are entered into the e2prom settings... make SURE that you write them to e2prom so they are there.

The reason I did what I did was that while I had the e2prom window open, I saw my cal values change from what I had stored origianlly back to the defaults! I did NOT click on any of the buttons in the window, so I don't know why they changed! It is a mystery to me and that is what lead me to use the G code header instead.... NOT a good idea though!

The ONLY thing I can think of why the values reverted to defaults is that on the laptop I am using, it has a touchpad, and maybe the cursor was over the "default" button and I accidentally touched the pad... I hate those things! I have since disabled it so I will see if it happens again.Please don't use my previous advice for setting the max speeds, max accel., stepper cals, as this can get you in trouble in the future!

The motor stepping frequency is actually very important. It causes electromagnetic noise and loss within the motor cables. Eventually it will lead the wires to negate each others' signals at higher speeds. FalconFour is absolutely right about all this.

violadavis wrote: It causes electromagnetic noise and loss within the motor cables. Eventually it will lead the wires to negate each others' signals at higher speeds. FalconFour is absolutely right about all this.

Sorry, I'm an electronics engineer and I can definitively say that at the frequencies we are looking at here - measured in kilohertz - there will NOT be "interference in the wires [sufficient to] negate each other's signals." The frequency of operation is much too low, and the power driven into each wire is much too high for the cross-talk to have even the slightest significance. Good grief, I'm communicating right now over a twisted pair of wires 1750 feet long and operating at 26MHz! Wires that are a few inches long and operating at kilohertz are "safe" by several orders of magnitude. It's true that there are electromagnetic fields created, but the magnitude of these fields cross-coupled into adjacent wires is totally insignificant compared to the power levels used to drive stepper motors.

That said, the real issue is in the motors. The motors are electro-mechanical devices which use electric currents through coils to create magnetic fields, and the magnetic fields in turn create physical forces. But every motor is also a generator: mechanical motion of parts that are coupled to each other with magnetic fields and which contain coils will create voltages and currents within those coils. Or, in simple terms, stepper motors do have a speed limit, and their performance degrades when you approach the speed limit.

In the case of the Printrbots with two motors for Z driven off from one motor driver circuit on the Printrboard, the interaction of the electro-mechanical dynamics of the two motors makes this "speed limit" MUCH lower than for motors driven by individual stepper controllers. Fortunately, the speed of Z actuation is rarely an issue for us because the printer moves only tiny increments of Z at a time.

I saw your posts here viewtopic.php?f=15&t=1124 but, I was having a little trouble adapting them to my software. I am learning how to use Simplify3D and it is my understanding from your post that you can set many of the speeds on your firmware and tell the printer how to behave with the software but, the firmware will always be the overwriting source. I am unsure what settings I should be setting in Simplify3D in order to get similar results you have. The only speed settings I see in software however is the "default printing speed" under the "other" tab for FFF settings. I don't know if you have used this software before but, can you clear up any settings I need to set in addition to the firmware changes? I mainly noticed that the particular thread was old so I was looking for more updated info.

I haven't used S3D. there are 3 sets of speed parameter at play: the default firmware MAX speed limits for XYZE, the firmware SET speeds for XYZE and any MANUAL speeds set by the project for XYZE. so in the firmware there is the maximum speeds for the 4 axes set as well as the default operating speed. if the gcode generator and/or host app that drives the printer does not specify any speeds for XYZE the firmware defaults will be used. however if the user can set MANUAL speeds for XYZE in the gcode for the project, these will be used instead of the firmware SET speeds but only up to the MAX speed. if the MAX speed for an axis is 10 and you set 11 in the gcode, 10 will be used because it's the max.

So, you first need to know what the max XYZE speeds are set to and know that you can't exceed them. then you need to see what the defaults are and also where in S3D you can set over-ride MANUAL speeds for the project to get the speeds you want. in Kisslicer, what I use, it's done via a "quality" slider - as the slider is increased for quality, all the speeds are reduced linearily. More details are in this thread.

Did you do an M203 and up the max speeds? I'm at the wrong computer and don't recall what the defaults are, but IIRC they were pretty low. M503 (just type M503 in the command window) will tell you what the current settings are). They're somewhat arbitrarily set, remember Marlin isn't aimed at just Printrbot's and I don't believe the defaults were adjusted in the Printrbot specific version. They're also in mm/second (mm/minute vs mm/sec is a frequent confusion issued) so multiply by 60 to get mm/min (the feedrate on G commands is mm/min). You're limited by the speed of the slowest axis, but thinking about how X, Y,Z, and the extruder limits would interact is beyond my insufficiently caffeinated brain.

Marlin claims a 30kHz step rate, or around 460 mm/sec with the pbot's X and Y around 65 steps/mm. Like all marketing claims that 30kHz is probably overstated, but 20k should be pretty doable (around 300 mm/s X,Y, 10 mm/s Z, 30mm/sec Z)). That's still audio range, the stepper wiring shouldn't be an issue at that low a frequency. See CL1's microstepping discussions elsewhere, too. If you ever get to where Marlin's a limit check out linuxcnc.org - I get a 50kHz step rate (way faster than the hardware) on the machine that drives my CNC router.

Jerk (basically how fast you can yank an axis sideways while it's moving?) seems to be a big topic in research circles, but the discussions and papers are from the academic crowd. They rapidly degrade into math that's beyond my 40+ year old memory of all those classes I took in ee school. FF4 probably understands it a lot better than I do.

Don't let all the reasons why it won't work discourage you. Bump up the max speeds and play with the acceleration and jerk values (one a time, of course) and see what your one of a kind Pbot will do! If you have a way to video your bot (with a ruler somewhere in the background) and then single step through the individual frames it would be real interesting to see just how fast it's really going.

All you risk is a pile of blobs in the saved for filabot box, maybe vibrating your bot onto the floor, and a massive explosion of flying bot fragments.

Kirk

Edit: fix min/sec mistake

Quick note

Marlins 30k steps/sec is based on a 16mhz ATMEGA2560, the AT90USB1280 chip in the printrboard runs at 20mhz.so it can step 20% faster.

It's only running at 20MHz if they've recently changed the microcontroller from an AT90USB1286 to an AT90USB1287. Since PB hasn't made any announcement (per the usual quick web search) then I'd be suspicious about that having happened.

Without looking (phone...) I seem to remember that Marlin has a configuration option for clock speed. If so, should be pretty easy to check.

A while back I did some more speed testing that appeared to indicate my X axis was step rate limited to around 15K s/s. For comparison, the BBB will do around (iirc) 200K with it's PRUs, and it has 3D printer firmware (of uncertain quality, haven't tried it).