Configuring Skeinforge: Movin’ on up! (to a recent version)

Starting at ReplicatorG version 0020, the folks at MakerBot are also including a recent version of Skeinforge. w00T!!

I’ve been advocating moving up to more recent versions of skeinforge for months now, mostly because I think I can sorta figure out how to configure them. The older versions just make me go cross-eyed and confuse me. YMMV.

Since my last blog post was a bit (or more than a bit.. or even a LOT more than a bit) long winded and preachy, I’ll try to keep this one short. Below’s my notes on going through all the modules in skeinforge 33, the latest as of today. Note that this isn’t really “Dave’s recommended settings.” It’s more like, “where to start things, if you’re moving up from an old version.”

Bottom: This is new, as of version 32 or so. I’m not sure what it does but it seems to be the “bottom” parameters that used to be in the Raft module so I’m leaving it enabled and just taking the default values.

I think the “bottom” params in raft used to control how high the nozzle was at the very start of the print. Since I always tweak a Z pulley when I start printing, I don’t care too much about this one

Carve: Absolutely enable this. This one contains two of my Big 4 (or 5) parameters, Layer Thickness and Perimeter Width Over Thickness. Those two I care about, the rest I just leave as they are.

Chamber: Disabled. I think this is for heated build chamber. Like, if your bot was all enclosed in a temperature controlled environment, you’d want to enable this and figure out some reasonable values to plug in here.

Clip: Enabled. Clip is sortofa method that looks for parts of the print that are really close together and clips bits off, to keep too much plastic from being put down.

I’m very sure that the values you plug in here could be tweaked to get a little more performance out of your bot but I suspect it’s a 2% thing – good to learn if you really want the absolute best prints you can get but not really worth it for most people. I take the default values.

Comb: Enabled. I love comb. Comb rules.

Comb basically tells skeinforge to not let the extruder move outside the perimeter if it can avoid it. This makes a HUGE difference (in a good way) in cleanup times but does add to the total print time. Unless you’re really, REALLY interested in the quickest print you can get, just leave it enabled.

Cool: Disabled. This is an interesting module but I think DC extruders (which virtually all Makerbot people have) don’t play well with it.

Cool lets you tell skeinforge the minimum amount of time it should spend on each layer. If a layer is going to take less than that amount of time, skeinforge will add gcode to orbit around – aka: waste time – until that minimum is reached.

This is a great idea but unless you really have ooze under control, you probably don’t want to use it. If you don’t have ooze under tight control and enable Cool, it’s going to make a huge mess.

Also, if you do want to enable it but don’t have a stepper extruder, don’t use the Slow Down option. Slow Down tells it to drop the flow and feed rates down instead of orbiting – with a DC motor, the extruder will stall and you’ll get no plastic coming out.. Bad.

Dimension: Disabled. This is for “5D” stuff that’s not supported (yet??) on Makerbots. The 5D stuff, if I understand it correctly, are extensions to gcode that lets the extruder move faster on diagonals than it does on straight-X or straight-Y lines. Nice feature but not something Makerbots can use.

Export: Enabled. Not 100% sure what this does…

Some types of machines process the gcode in the firmware and one thing Export allows you to do is strip all the comments (stuff that’s user readable but ignored by the machine) out of the gcode. In theory, if you have lots of comments in the gcode and the machine isn’t very fast, stripping out comments will help prevent problems.

On a Makerbot, the gcode is processed by your PC (or Mac or whatever) so this isn’t much use for Makerbots. Leave it enabled, tell it to strip comments out or not – I leave them in but it doesn’t really mattter.

Fill: Enabled!!! I spend more time in Fill than I do anywhere else. More on this module later (next post?) but once you get your profile all nice and dialed in, this is pretty much the only place you need to be when you want to print something.

Fillet: Disabled. This is another interesting module that I don’t use very often. Fillet sorta rounds off sharp corners in the object, which can help if you’re suffereing from quality problems due to high feed rates.

Picture printing a perfectly square cube. There’s lots of “full power to X. Stop X! Full power to Y. Stop Y! Full reverse on X!” over and over. This can encourage belt-related issues like backlash. Fillet lessens these issues by rounding things off of a little.

In general, I’d say disable it for prints that require bolts and bearings and things – stuff that’s been measured out and has bits that fit together – and enable it for more organic-type object that don’t require precision.

Home: Disabled. This allows you to add a bit of custom gcode to the start of every layer. I’m sure there are good reasons why you might want to do this but I don’t think any apply to Makerbots..

Hop: Disabled. Not really sure what this does but I think it sorta tells skeinforge to add more into the Z increase at the end of a layer then drop back down for the start of the next layer.

Inset: Enabled. Another one I’m not to sure on but I think it controls tweaks on how to remove overlapping bits of the print that will likely cause blobs. I just leave this at the default values.

Jitter: Disabled. You know that extra little blob of plastic you sometimes get at the point where the Z goes up to the next layer? This module causes Z to move up in a different place on each layer, which spreads out those blobs.

Personally, I don’t get those blobs too much any more and they don’t really bother me anyway. I leave this module disabled but feel free to enable it, if you want.

Lash: Disabled because I haven’t gotten to mess with it yet. This seems to be about controlling backlash – that bit of lag you get when the X or Y steppers quickly start/stop/reverse. I suspect it won’t work well on a Makerbot but haven’t tried it yet.

Limit: Disabled but this is near the top of my list of things to mess with. Yet another module I’m fuzzy on but it seems to control the maximum feed rates of the gcode.

In particular, I’m eyeing the Maximum Z Feed Rate. If upping this value actually makes the Z stage move faster, it will go on my list of things to always enable – it should (might) help a lot with those blobs you get when Z moves up to the next layer.

If you want to enable this and see if you can make your Z blobs disappear, make sure to disable Jitter first.

Multiply: Enabled. Multiple is another one that rules. Enable it, set both Number of Rows and Number of Columns to 1 and skeinforge will automatically make sure your object is centered and on the platform. Very helpful.

If you want to print multiply copies of an object at once, you can mess with the rows and columns values – this is useful on small objects, since they tend to print too quickly and have heat problems. (which Cool would also help, if we had stepper extruders or well-controlled ooze)

Oozebane: Disabled. Oozebane tries to limit ooze (the extra strings you have to clean up post-print) by shutting the extruder off a little early. It can also turn the extruder on a little early if you have lag between when the machine is supposed to start and when it actually starts.

Probably very useful but I think it’s tricky to configure correctly and don’t use it.

Preface: There’s no enable/disable on this one. Take the defaults.

Raft: Enabled, even if you don’t want to print rafts. Actually, I’m not sure this always needs to be enabled now, since the temperature settings moved to a different module – they used to be in raft.

I just leave it enabled anyway. If you don’t want to print a raft, just set Base Layers and Interface Layers to 0 instead of disabling it.

Speed: Enabled. Two more of the Big 4 (or 5) settings live here: flow rate and feed rate.

Splooge: Disabled. Yet another module that I’m not to sure on. Seems related to oozebane.

Temperature: Enabled. This is where you can tell skeinforge to use different temperatures for different parts of the object. Note the Cooling and Heating rates in this module – if you use different temperatures for different parts of the object, these control how long skeinforge will orbit between the different parts. (I use the same temp for everything because I don’t want it to orbit)

Tower: Disabled. Another good (or at least interesting) module that I don’t use. Say you want to print “I I” standing up. Tower tells it to print multiple layers of one leg then drop back down and print multple layers of the other leg.

This is useful because you’ll have a lot less ooze between legs but beware using it on objects that have small legs – using tower on objects like that will encourage heat-related problems which, IMO, are worse than ooze.

Unpause: Disabled. I think this tries to bump up your feed rate a bit to compensate for processing delays on complicated objects.

If you have problems printing things like bolt holes or other feature that have lots and lots of little turns in them, you can try enabling this. Beware having your feed rate times the Unpause “Maximum Speed (ratio)” being higher than your maximum useful feed rate, though – if you speed things up too much, your print will end up worse than before.

Widen: Disabled. Yet another module I’m not sure of.

Wipe: Disabled. This one’s good if your ‘bot has a toothbrush. This lets you send the bot to some particular position at the end of every layer so the extruder nozzle can get cleaned off.

If you set the Wipe Period to some big number, it should do this only at the very start of the print, before it does anything else. If you’ve got some sort of brush mounted in your bot, this is useful for auto-cleaning up the test extrusion.

That’s it!

Next up: Creating a new profile…

This entry was posted in Makerbot, skeinforge and tagged , . Bookmark the permalink.

18 Responses to Configuring Skeinforge: Movin’ on up! (to a recent version)

  1. MakerBlock says:

    Thank god this was the short version!!!

  2. Dave Durant says:

    LOL.. Maybe it is a bit long..

    I meant each bit was short, not that the whole thing was short! 😛

  3. Pingback: Configuring Skeinforge: The 4 (or 5) Big Settings.. | DaveDurant's Blog

  4. Pingback: Configuring Skeinforge: Five Critical Settings with Dave Durant! - MakerBot Industries

  5. beak90 says:

    Great info! There will be some changes for me to make next time I print…
    I believe splodge was a precursor to oozebane. I’m trying to think of some ways to automate tuning of oozebane. Specifically a script that tries a bunch of values and you look to see what gives you the best results. Like the frostruder calibration scripts.
    Inset is required because it is what calculates all the lines that go on the inside of the perimeter aka extra shells. Carve just does the one perimeter. Fill does the line infill.
    And I think dimension might be supported now that repg supports 5D firmware as well as makerbot firmware. I think that 5D is meant for repraps only though.

  6. Sam Sebire says:

    Pretty Good – definately gave me a better Idea of what all those obscure settings meant… You really do like writing! how long did that all take to do?

  7. Dave Durant says:

    @Beak: Awesome. Thanks for the updates! I’ll see if I can get the article updated.

    @Sam: I type for a living! All that took me about 10 minutes to type in. Really. Honest.

    Actually, it was probably about an hour or 90 minutes, spread over 2-3 days. WordPress lets you save drafts of articles so I usually get something started then poke at it whenever I have the time & interest. I’ve got drafts of ~5 other things in there now – some will eventually get published, some will never make it..

  8. Pingback: Configuring Skeinforge: Index to Articles.. | DaveDurant's Blog

  9. whosawhatsis says:

    I’m pretty sure that hop is for lifting the nozzle for moves (so that it doesn’t drag on the model while it’s not extruding). I tried this and that seemed to be what it was doing, but I turned it off.

  10. Pingback: Configuring Skeinforge: Making a New Profile | DaveDurant's Blog

  11. Dave Durant says:

    That makes sense.. I’m having a hard time picturing why you’d want it to do that, though. Maybe it works in conjunction with Tower?

  12. Elliot says:

    Great series, and perfectly timed for my own struggle through the skeinforge settings.

    On “hop”: you want the machine to lift up a bit when it orbits or travels because the threads are smooshed down but slightly elastic when still hot/wet. If it didn’t hop, then it will end up dragging the extruder nozzle through the just-extruded plastic.

    • Dave Durant says:

      That’s an interesting idea. I’ve seen that type of problem before but only when I was messing around with high-resolution printing.

      It drove me nuts back then – anything with overhangs would blob up like crazy. Maybe I’ll revisit that with Hop in the arsenal..

  13. beak90 says:

    You seemed to have missed the stretch module… Its used for making holes bigger to compensate for extra material. Do you not have it in your skeinforge?

  14. Pingback: RobotRanch » Useful TOM links

  15. Pingback: Finding the path of least resistance! » RepRap Part 3 – It Lives!! :D

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s