Saturday, January 15, 2011

SDPause, a utility for pausing at specific layers

I've been building a lot of multi-color models by swapping out material kits at strategic times during the SD300 Pro's build process. The software didn't allow me to schedule when the machine would pause, so it originally required me to watch the machine carefully.

For my Rox Box model, I built the model upside down starting with the transparent layers first. Once the machine had finished building the transparent 'window' I swapped in the white material and let the machine build the rest of the model. That was simple because I only had to switch materials once.

But Oskar's Cookey Tribute puzzle was over 600 layers thick, and it took almost 30 hours to build because I was building multiple models at the same time. The model entailed multiple color-transitions, so I doubted I would be able to manually intervene at all the right times. I needed something automatic!

So I created a computer program SDPause that watches the SD300's build progress and automatically pauses whenever it reaches the layer entered in the box. That ensures the machine will pause whenever the model requires a different color material. Even if I'm not home, it will pause and wait for me to change the material and manually resume.

Email me if you want a copy of SDPause; my contact info is listed in my profile. SDPause should work with the original SD300, SD300 Pro, and Invision LD.

Some things I've learned about switching material kits:
  • I generally change the glue cartridge with the PVC roll so the materials will be consumed at a predictable rate. This also ensures the installed cartridge always has sufficient glue for whatever PVC roll is installed.
  • I generally don't change the Anti-glue cartridge and pens. Instead I just replace the Anti-glue cartridge when the default material kit needs replacement, or if support material doesn't peel away easily. The machine won't suddenly run out of Anti-glue, unlike the main glue supply.

1 comment:

  1. very cool making the program to pause. I was wondering how you did that.