RSS
 

Archive for the ‘makerbot’ Category

How I do it: OpenSCAD

06 May

OpenSCAD Header

As I said in my previous post on SketchUp, I really enjoy reading about how other users setup and use their software. I usually find a plugin or setting that I never knew existed which helps me work more efficiently. I don’t know if my OpenSCAD setup has anything in it that’s out of the ordinary, but maybe something I use will help someone else out.

My Text Editor:

I just recently started using Sublime Text 2 as my primary editor and I’ve got to say it’s really a great addition to my work flow. Not only does it have a clean look and all the features you would expect from a modern editor, but it also has some pretty crazy stuff like a built in package manager! With just a few keystrokes you can search to see if you have syntax highlighting for a particular language installed, pull up the package manager, and install it. All in a matter of seconds. It’s pretty awesome.

Sublime Text 2 Package Manager

One of the nice things about this editor is that it’s cross platform. Last I checked it works on Windows, Mac, and Linux, there are also portable binaries for Windows (pretty handy for on the go coding). It’s always nice to be able to work in a program you’re familiar with regardless of platform, since I often switch between my Windows desktop and Mac laptop this is a big plus for me.

If you’re new to the editor, I’d recommend watching this excellent Sublime Text 2 tutorial series by the genius programmer and trainer Jeffrey Way. The tutorial starts at the basics and goes all the way through to advanced and complex workflows. I learned a lot from this series and would recommend it to anyone looking to pickup some new skills.

To augment the editor I’m using a modified version of Tony Buser’s “OpenSCAD Customizer Textmate/Sublime 2 Bundle” that includes code snippets for the Makerbot Customizer app. This adds syntax highlighting and code snippets for the OpenSCAD language which are not included by default in Sublime Text. All the credit goes to Tony on this one, he did a great job setting up the original package, I just added a few things that have changed since he wrote it.

Something that may be useful to other users is this page on setting up your own “Build Systems” in Sublime. I’ve used it to make it so when I press Command+B in Sublime my current OpenSCAD document (.scad) opens in OpenSCAD.app. This can be pretty handy if I don’t already have the program running.

My Sublime installation is pretty barebones, but my plugin list is as follows:

Sublime Package Control – This is one of the only plugins you need to install manually for Sublime. Instructions are provided in the link and Jeffery Way’s tutorial above.

OpenSCAD Customizer Textmate/Sublime 2 Bundle – My updated verision of Tony Buser’s great OpenSCAD syntax highlighting and code snippet bundle. More instructions are available in the link, this one needs to be installed manually too.

Color Picker – Easy to use color selector for Sublime. This can be installed via Package Control.

Sidebar Enhancements – Adds a lot of functionality to the sidebar in Sublime. This can be installed via Package Control.

Sublimerge – Pretty nice graphical diff/merge interface for Sublime. This also works with GIT and SVN though I haven’t tried it myself. This can be installed via Package Control.

Daylerees Color Schemes – This set of themes includes the one I’ve used in the screenshots above “Earthsong”. I’m a big fan. This can be installed via Package Control.

My OpenSCAD:

I haven’t done too much to customize my OpenSCAD program. The most useful feature I use is the “Automatic Reload and Compile” option found in the “Design” menu. As the name would suggest this automatically re-renders the model every time I hit save in my text editor.

Screen Shot 2013-04-22 at 10.29.51 PM

Because I’m using an external editor I’ve also disabled the built in editor. This is pretty much a no brainer if you’re using any editor other than OpenSCAD, it also give you a little more room to view your model on screen.

Screen Shot 2013-04-22 at 10.51.19 PM

The other setting I’ve tweaked in OpenSCAD is upping the limit for rendered elements. I’ve run into an error message that caused my model not to render on screen a couple of times (I’m not sure if this was caused by poor modeling or just a really complex model), however upping the limit of rendered elements solved the issue (maybe it will help someone else). This setting is in the “Preferences > Advanced” menu.

The only thing I haven’t covered in this post and my post about my SketchUp plugins is how I keep it all in sync across multiple computers. Stay tuned for that post, I use Dropbox and a couple tricks to keep everything synced and playing nice. If there is anything I didn’t cover in this post that you’re curious about leave me a comment and I’ll do my best to fill you in.

 
 

How I do it: SketchUp

22 Apr

I always enjoy reading about other’s worksflows and learning new ways to optimize my usage of software. So I thought I’d write a series of “How I do it” posts to show those of you just getting started (or those looking to pickup additional tips) how I work.

Below is a list of all the plugins I currently use in SketchUp. I held out on plugins for awhile thinking they were unnecessary bloat for Sketchup, when I added them in I found I had been missing out on some really useful features. Here’s what I’m using at the moment.

STL Export – Easily my most used SketchUp plugin. This lets you export your models as STLs files (as well as several other types) for 3D printing.

STL Import – as you can probably imagine this plugin lets you import STL files. Pretty useful for altering existing designs from Thingiverse. After importing I recommend running Cleanup3 listed below to make the imported file more manageable.

Cleanup3 – This plugin cleans up orphaned and unnecessary lines. It’s really useful for creating a solid in SketchUp. Sometimes you don’t even realize there are lines causing problems. This plug in will remove those for you. It’s also really useful when importing STL files into SketchUp. They import with a lots of extra information that makes it difficult and slow to work with in SketchUp. Running the cleanup script leaves you with a much cleaner model to work with.

UV Toolkit – Not one I use all the time but very helpful for texture mapping unusually shaped objects.

Weld – Turns a series of line segments into a curve. Useful when trying to re-use a group of curved line segments.

FIX SOLID – This plugin attempts to find problems with and fix your solid models. I would say I have a 50/50 success rate with this tool, but the times it does work it saves me a lot of time.

FredoScale – Very useful additional scaling tools. Check out the linked page for more details as there are a lot of options. Pretty handy.

RoundCorner makes it really easy to make nice rounded corners on your objects. It’s really easy to use and results are usually pretty good. 

Joint Push/Pull – Useful plugin for extruding curves in a way not possible using the built in SketchUp tools.

TT_Lib2 – Many of the above tools will require the plugin library TT_Lib2 this provides additional plugins the libraries needed to run. 

LibFredo6 is another library reqiured for some of the listed plugins (including RoundCorner and FredoScale). It also includes an update engine that checks every 2 weeks to see if there are updates to your installed plugins, handy!

Curve Maker – This plugin assists with drawing curves, either interactivly or by specifying dimensions.

Taper Maker – This is handy for drawing taped shapes using iregular shapes and paths.

Stock maker – Useful for estimating material usage for non-3D printing exports.

SketchUp Pro’s Solid Tools – The built in solid tools for SketchUp are very nice and while not a substitute for a real solid modeler like SolidWords do a pretty good job. The tools are part of SketchUp Pro so they can be a little pricey, there is also a $50 a year subscription copy of SketchUp Pro for students that, if you’re eligable can save you some money.

SU Podium – My favorite (and fast) rendering engine for Sketchup. Not free ($198.00) but is available at a lowered price for students. This plugin pulls models directly from SketchUp into it’s rendering program. Very speedy and very nice results are possible.

An additional resource I find pretty handy is the Sketchucation Forum, lots of discussion and new plugins are available there. There is also a Google Group for SketchUp that doesn’t see as much traffic as Sketchucation but can still be handy.

So that covers my plugins for SketchUp, like I said I went a long time without using them but they are SUPER handy. If there is anything else you’d like to know, leave me a comment below.

Edit: thomthom from the Sketchucation forums and overall plugin writing genius has pointed out that the update engine I mentioned is actually part of LebFredo6. I’ve corrected the error above, checkout more of thomthom’s work here: Plugins by thomthom

 
 

Card Case Customizer

01 Apr

I’ve been really enjoying learning OpenSCAD for the past few months. In fact I wish I hadn’t put it off as long as I did, because once you get going it’s a pretty straight forward but powerful language to learn.

Since I’ve always thought that it’s impossible to learn a language without an application I’ve decided to re-model all the 3D objects that I carry with me daily as OpenSCAD Customizer compatible models. The first of which is the business card holder that phooky designed.

I printed out this business card case back in May of 2011 and it’s been looking and working great ever since. Because it’s held up so nicely I didn’t make many changes to the base design of the box. Instead I added customizable features to it that enhance the form without harming the function. Included in this model is the ability to change the number of cards the container will hold, as well as the type of cards (business or collectable). I also added the ability to emboss custom text on the front or an image using Benjamin’s great “Stencil-o-Matic“.

Here’s a link to my Card Case Customizer on Thingiverse

Now that I’ve finished the boxes I think I’ll move on to making my Coin-Op Money Clip more Customizer friendly. I’ll also be posting my current OpenSCAD editor setup and plugins in the near future. Stay tuned.

 
 

Upcoming adventures with Dualstrusion!

12 Mar

WALLY – Wall Plate Customizer won the Thingiverse Customizer Challenge in the “Useful” category! Thanks to everyone that liked, customized, commented and gave me feedback on the design. My prize was a Makerbot Replicator 2X which I hope to be receiving shortly and posting about my adventures with Dualstrusion!

Watch this space for more details!

 
 

Designing with parameters

07 Feb

OpenSCAD is a program that generates 3D models with code rather than traditional 3D modeling methods. I’ve heard people talk about it’s virtues since I picked up my Makerbot but it always seemed like far too much work for something that I could crank out in SketchUp in 20 minutes. The main selling point of OpenSCAD is the fact that you can create parametrically designed models. That is to say, you can change parameters in your code and a new 3D model will pop out of OpenScad, no redesigning required. While I could understand the benefits of this method of design I never found a use for it and never got around to learning it.

Recently Makerbot’s Thingiverse launched their Customizer application. This web app lets you make changes to these OpenSCAD parameters as easily as picking a value from a drop-down box. Essentially giving anyone capable of using a web form the ability to design a model to fit their needs. This is around the time I thought that I had better get around to learning to use OpenScad.

So here it is, my first model designed in OpenSCAD. I found something that would really benefit from being a parametrically designed model: Wall Plates. I’ve created a OpenSCAD model that allows you to pick from a list of 18 types of connector/outlet style which then generates a 3D model correctly oriented and modeled to be immediately 3D printed.

I took measurements available online and from manufacturers to get the openings as close to standard as possible. In theory you could hop on Thingiverse, create a model, print it, and have a totally customized wall plate in under and hour.

So what options did I include in this file? Well I’ve allowed the user to pick any width from 1 to 5 “plates” wide. These were measured off the standard electrical box sizes and should match screw holes in your existing boxes. The list of available plug and outlet styles is listed below:

1. Blank Port
2. Toggle Switch (Takes up entire plate)
3. Duplex Outlet (Takes up entire plate)
4. Rocker/Designer Plate (Takes up entire plate)
5. Keystone Jack
6. VGA Port
7. HDMI Port
8. DVI-I Port
9. Displayport
10. Cat5e/Cat6 Port
11. USB-A Port
12. USB-B Port
13. Firewire IEEE 1394 Port
14. DB-09 Port
15. PS2 Port
16. F-Type/Coaxial Port
17. S-Video Port
18. Stereo Headphone Jack

With the exception of #2-4 all of the plug types are modular and be placed on the top, bottom, or centered on a generated wall plate. All of the ports (excluding the outlets and keystone jacks) are designed to accommodate DataPro.net’s panel-mount cables. While I hold no particular alliance to the site they did provide very useful diagrams for their cables. Additionally I based the keystone jack off of “Mounting plate for keystone jack” designed by Joe Sadusk. I imagine tweaks may need to be made to make all of these connectors fit perfectly but I think my original set of designs should be pretty close to the real thing.

I asked a Mathlete friend of mine if he could calculate the possible number of plug and plate combinations and well, the number is big, real big. He estimates that you can generate a total of 850,789,801,599 possible permutations. Making this possibly one the most customizable object currently on Thingiverse. If you’d like to check his math here’s some nerdy details.

Customized wall plates are nothing new, but ordering them online takes time and can be costly depending on your required configuration.

 

You can checkout my plate generator on Makerbot’s Thingiverse here. Just click “Open in Customizer” to start making your own customized wall plate!