Configuring Skeinforge: Five Critical Settings with Dave Durant!
Dave Durant has done it again with a second post in his series about configuring Skeinforge for your 3D printer.1 Skeinforge has been integrated with ReplicatorG versions 0017 onwards. His guide about the five most critical Skeinforge settings is extremely helpful. Lock down these five settings and off you go! Once again, take it away Dave!!!
Unlike the previous post which was sortofa mini Skeinforge dictionary, this one is about some parameters you’ll actually find in Skeinforge. This was written with Skeinforge 31 (“10.09.21″) in mind but anything past version 20 or so should be pretty close. Hopefully future ones will be, too.
Although there are many, many parameters in Skeinforge, I think there are 4 or 5 really important ones that make up the foundation of a profile. A good portion of the other parameters in Skeinforge are ones that reference these parameters (usually with that darn “over” word in there) so if you get any of these 4-5 big ones wrong, it will have a ripple effect. More than any other settings in Skeinforge, these are the ones I try to get right first when making up a new profile.
Layer Thickness: I always think of this as “layer height” though skeinforge never calls it that – it uses the term “layer thickness.” I’m going to stick with layer height because I think that’s a less ambiguous term (“thickness” can mean vertical or horizontal and “height” is really just vertical, so I like “height”).
A MakerBot prints an object by drawing (with plastic) one layer, moving up a little then drawing another layer. Do this enough times and put down enough layers and you’ve got yourself a real, physical object.
Layer height is simply the height of each of these layers. You don’t really get to print an object with different layer heights - you pick one value and that’s the height for every layer in the object.
In a lot of ways, layer height equals resolution. Say you tried to print something like a wine glass but could only do it with a 1-inch layer height. If you think about a wine glass sitting on a bar (or table, bedstand, whatever) and the bottom inch of it, there’s a whole lot of detail in that one inch – there’s a wide base, which tapers tapidly to the stem which goes (mostly) straight up.
If you tried to record the description of a wine glass in 1-inch resolution then play that recording back later, it’d be complete crap – you probably couldn’t even tell it was supposed to be a wine glass because there’s just not enough resolution to accurately describe the object. For something like a big, perfectly square 3-inch cube, that sort of resolution would probably be fine but it just doesn’t work for objects with lots of detail.
As the layer height decreases, the resolution increases.
Flow Rate: This is how fast the extruder motor is turning and is frequently also called PWM, Pulse Width Modulation. PWM is like turning a light switch on & off really quickly to simulate having a dimmer dial – by varying the ‘width’ of the how long it’s on, you can change how bright it appears. Flow Rate PWM is the same thing but with a motor instead of a light.
For DC-motor extruders (which includes just about everybody with a MakerBot), a value of 255 means full speed or about 2 RPM. With a 10mm gear on the end of the motor shaft, that 255 or 2RPM means a length of ~30mm of filament going into the extruder every minute.
The really, really important bit to remember about flow rate is that this value is only about how fast the extruder motor is turning and how fast a given length of plastic is going into the extruder – it’s not the same as how much plastic is coming out of the nozzle. It’s all about the length of plastic going in.
If you’re trying to get really high quality prints out of your makerbot, this is extra important because when you buy “3mm filament” you’re actually getting anything from 2.70mm filament to 3.10mm filament. If you’ve got a skeinforge profile all nicely dialed in with a 255 flow rate on your 2.70 filament then you try using it with 3.10mm filament, you’re going to be pretty disapointed. Why? Because a 2.70mm filament has a ~5.7mm² area (cross section) and a 3.1mm filament has a ~7.5mm² area; it’s +30% more plastic per length of filament and, again, the flow rate is about how fast a given length of plastic is being fed into the extruder.
All that said, it’s important to keep in mind but in reality you’re not likely to end up switching from 2.70mm filament to 3.10mm filament – I’m just using the extreme examples to make the point. If you always buy filament from the same place, they’re probably shipping stuff that’s all pretty close to the same diameter.
One aspect of flow rate being all about the amount of plastic going into the extruder is that layer height has a much smaller impact on build time than you might think. Imagine filling up two identical boxes from a tube of liquid plastic that flows at a constant rate. On one box, you move the tube around really, really quickly so it makes lots and lots of tiny layers. On the other box, you move the tube around slowly and it makes a smaller number of thicker layers. Which one fills up quicker? Trick question! They fill at the same time. This is also true when printing – the difference in build times between low and high layer heights (on the same object with the same filament and PWM, etc) is the difference in the objects non-printing times. Non-printing times are things like travel and orbit. For something easy to print like a solid cube, there’s little non-printing time so the difference in pretty small. For something complicated, it can add up. Either way, it’s the difference in non-printing times.
You can adjust the flow rate from 1 to 255 but with DC extruders (again, that’s most of us) the nature of the beast limits us in the what numbers are actually usable. On my machine, I can get down to about 180 if the machine is nicely warmed up. Anything below that and the motor just stalls and nothing comes out of the nozzle.
If you’re really going after quality or resolution, the minimum flow rate you can use on your machine will be a good value to know. You can test this out in the ReplicatorG control panel by putting values in the ”Motor Speed (PWM)” box and trying to extrude. Note that this minimum-flow rate value may change a bit when you change filament stock, if the diameters are different and may also vary based on the temperature you extrude at and, believe it or not, the color of your filament – these probably won’t be huge differences but if you’re going for the best quality you can get, they’re good to be aware of.
Feed Rate: This is how fast the build platform moves, in milimeters per second.
A good number to know for your machine is the maximum feed rate you can use without losing quality. The ‘standard’ MakerBot profiles are usually around 30mm/second or so but you can, if you want, run the machine a lot faster – I’ve printed at over 65mm/second.
Though having the build platform zip around at +60mm/s is pretty cool (and a little scary, the first couple times) to watch, it’s probably not what you want to do. For one, it doesn’t really make the print complete any faster – that’s largely about flow rate and the non-printing moves that Skeinforge does.
Another issue is that it usually degades the quality of the print. The reason for this is the way the Cupcake X and Y stages are driven. In particular, the belts that move them around will always have a little backlash (lag when they reverse direction) no matter how tight you make them and the faster you go, the more they will vibrate – both of these things get transfered to the print and degrade quality.
Here’s an example of printing at a feed rate that the machine can do but is too fast for it to do nicely. This side of the object should be all straight, except for 3 holes and a circular indentation (it’s a Brutstruder at around 60mm/s, if you’re curious) in it. Note the waves or echos around the holes and the dent.
Although turning up the feed rate doesn’t really help build times, it’s something you’ll probably need to do if you start trying to increase resolution by doing stuff like turning down the layer height or using a smaller nozzle.
Keeping your belts & bolts tight and your X & Y rods oiled will help raise your maximum usable feed rate. You can also upgrade your X and Y stages to use bearings instead of bushings – not only will upgrades like that make your bot a lot quieter, they will also move more smoothly, which will help lessen the vibrations. If you’re interested in such upgrades, search through Thingiverse for “mendel inspired”.
Feed rate is what I consider to be the number one tweakable thing in a profile. That is, if you’ve got to change one of the settings listed in this blog post to make a profile come out right, this is the one to change if possible. More on that later..
Width Over Thickness, two different kinds: I don’t really care for this term, Width Over Thickness. Math scares me and it always makes me think I have to do math. I think a better term would be “Aspect Ratio”. Yes, it has the mathy word “ratio” in there but aspect ratio is a pretty common term so it’s not as bad. You can also think of these values as “width over height”, which I think would also have been a better term than “width over thickness.”
In short, these values tell Skeinforge how wide the filament being laid down is, in relation to how tall it is. If you have a layer height of 0.25mm and width over thickness values of 2.0, it’s going to generate gcode that works just right if the threads are 0.25mm tall and 0.5mm (0.25mm * 2.0) wide.
Skienforge has a number of parameters labled “width over thickness” but the two big ones are the Perimeter Width Over Thickness in Carve, how wide perimeter lines are vs layer height, and Infill Width Over Thickness in Fill, how wide infill lines are vs layer height.
In general, you should have the same value for both of these parameters. If you’re really tweaking the most out of a profile, you might want to change one just a little bit to make things come out perfectly. I think that if you have a difference more than about 0.2, something is wrong in your profile. I’m tempted to say that if the difference is more than 0.1, be suspicious.
Changing the width of threads has a big impact on two things. One is that higher numbers have more adhesion than lower numbers – they’re better at sticking to the layer below them. Picture two big circles of tape, side by side and touching. They have a puny contact area and won’t stick to each other very well. Now sorta squash them a bit so they are more oval than circular – more contact area, better stick.
The other big impact is on the feed rate. Picture the melted plastic coming out of your nozzle. If the build platform isn’t moving, you’re just going to get a big blob of plastic. If the build platform is moving really quickly, the plastic is going to stretch out and be a thin line, probably thinner than your nozzle size. If the build platform is moving slowly, you’re going to get a fat, hopefully non-blobby line.
If you raise the width/thickness values, you probably need to drop the feed rate down to make the threads come out wider. This is good news, especially if things like tiny layer heights have driven your feed rate up, but there are limits to it. If you raise width/thickness enough, you’ll have to go so slowly that the plastic will start blobbing up around the print head – beware width/thickness and layer height values that make the thread width more than the width (outside diameter) of your nozzle. That hard, brass nozzle doesn’t just spit out plastic – it also helps flatten & smooth out the tops of threads.
I had planned to yak more about the interaction of these big settings but this is getting pretty long. Reeally long. Too much coffee today or something. I’ll save that stuff for the next post..
Next in this series: Configuring Skeinforge: Moving’ on up!
Tune in next time when Dave Durant gives us another primer on the latest version of Skeinforge!
- Photo courtesy of Jaycoxfilm [↩]
| Tagged with | dave durant, davedurant, skeinforge, ui | 19 comments |




19 Comments so far
wajazn
Good stuff, but one comment about flowrate. Being able to get down to 180 seems to be quite the anomaly since most people end up with the extruder motor stalling at anything much below 255. In fact, some report that a setting of 254 causes a stall.
MakerBlock
@Wajazn: I’m able to run my motor as low as 230 (I haven’t tried lower). I’ve never heard of a stall at 254! Perhaps there’s a motor issue for those?
wajazn
Here are a couple of references to 254:
http://wiki.makerbot.com/forum/t-279732
http://wiki.makerbot.com/forum/t-271731/extruder-board-trouble-with-mk5-please-help#post-889446
JohnA
@MakerBlock: Check the MB forum — myself and some others all can print fine at 255, but not anything lower, not even in CP. From talking with MBI folks they never drop below 255, at least when we spoke at MakerFaire.
Dave Durant
I think that’s a bug in the firmware or maybe in repg – DC motors may not like doing a wide range of PWM values but stalling at 254 doesn’t sound at all right…
With no load on the extruder motor (ie: no filament loaded) I’d bet it can get down to 160 or so. Maybe even lower – I’ve never tested it. (I know the MBI folks have been doing lots of extra work testing motors.. maybe one could comment on how low PWM a motor just sitting on the bench can go before it gives up?)
How low you can get when you’re extruding depends on the amount of load you’re putting on the motor. Cold, barely melted plastic is harder to push than hot, liquidy plastic. An idler cranked down way too tight adds load. Having the nozzle too low makes it hard to get plastic out so that adds load, as (probably) does shrinking the layer height way, way down.
The minimum flow rate you can use depends on a bunch of things but if you can’t get down to 230 or so, you should probably get suspicious. Could be your setup, could be a software/firmware issue..
Dave Durant
Hey John! Do you also stall at 254 if there’s no filament in there?
I wonder if this is a MK4/MK5 thing or related to the recent motor weirdness or something else..
MakerBlock
@JohnA: Wow! I had no idea. I just assumed it was related to recent motor weirdness too. What version of RepG, Skeinforge are you using? Can you run the motor manually less than 255 using the control panel? With a filament? Without? Loose filament? Tight?
Twotimes
My regular setup is running at 230 and putting down the first layer at around 200.
MakerBlock
@Twotimes: You’re talking about temperature not motor speed, right? And temp for ABS?
Twotimes
I’m talking about motor speed, temp is at 220 for ABS
Twotimes
I’ve been trying to drop my speed to get cleaner prints.
Dave Durant
See?? Twotimes confirms that I’m not insane. Not for this one reason anyway..
Twotimes
Dave, doesn’t mean that I’m no insane…. heh. Currently the bot is printing a 200% lamborghini (I gave away the only one I had printed)
Dave Durant
WulfDesign
At some point my extruder motor stalled at random times and eventually stopped working no matter what speed I set it. I ordered a spare from Makerbot but disassembled the old one and found that it had seized up due to lubrication not getting everywhere it should. after freeing up the gears and making sure they where moving smoothly my prints came out a whole lot better. I imagine if you haven’t already done so checking out the guts of your motor and making sure everything is lubricated and running as smoothly as possible is probably a good idea… as well as having a spare on hand. btw… none of my old skeinforge settings worked well with the newly refurbished motor since they all laid down way too much plastic. I had to go back and reprocess all my .stl files…
tmophoto
i print at 200 first layer/230 for all other layers.
my motors generally stall at 195, if i have any problem it would be on the first layer when its close to that speed.
i usually print at 220º
t
Configuring Skeinforge: Configuring the latest version of Skeinforge with David Durant!!! - MakerBot Industries
[...] Durant has continued his series on how to configure Skeinforge for your 3D printer. Although Dave prefaces his comments by saying these are not necessarily recommended settings, he [...]
Configuring Skeinforge: Basic Settings with David Durant - MakerBot Industries
[...] forget to check out Dave’s second post in this series about the five critical Skeinforge settings! Photos courtesy of Slworking2 and mezzoblue [↩] by MakerBlock | Categories: Software | [...]
More linkage « Metro State 3D Fab
[...] Calibration settings discussion Calibrating Skeinforge pt1 Calibrating Skeinforge pt2 Calibrating Skeinforge pt3 Calibrating Skeinforge [...]