What's Happening!!

Hey, hey, hey!  It's been too long since I've blogged about some of the stuff I've been doing lately.  Here's a quick rundown.

First there is Thingiview.js. This is a javascript 3D model viewer I wrote that parses STL and OBJ files and then uses Three.js to render them using either canvas or WebGL.  This grew out of the work I've done on CloudSCAD when I realized that there were really no good ways to view 3D models in a browser.  The only things that were available were either buggy, slow, or cost a lot of money, so I wrote my own.  Then MakerBot asked me to opensource it and help them integrate it into Thingiverse!  Now that Thingiview is pretty stable, hopefully I'll find some time to work on CloudSCAD again...

Another cool thing is that I got a job as a tech editor for a book about 3D printing called Printing in Plastic: Build Your Own 3D Printer.  It includes instructions on how to build a cool little RepStrap/mini CNC machine out of plywood called the whiteAnt.  The designs will be licensed under Creative Commons so I've also been publishing what I can on the RepRap wiki.  It's been a lot of fun since I've never done any woodworking before and I've been using a lot of tools I've never used before like table saws and band saws.  I also ended up finally acquiring an (ancient) drill press!

Since I had some success with 3D scanning at Berks CoLab using the MakerScanner, but was frustrated with the lack of support for OS X (not just MakerScanner, but almost all 3D scanning software like Grape3D I've tried has had problems on my MacBookPro), and splinescan is dead, I decided to start writing my own.  I call it Spinscan.  My goal is to be cross platform using Processing communicating with an Arduino that controls a turntable (3D printed) so I can do 360 degree scans.  I have most of the hardware done, but the software isn't done and so far I've only figured out how to track the laser line in a video.  I'd really like it to be sort of an open source version of the NextEngine scanner.

I'm also now the proud owner of Thing-o-Matic MakerBot #3745 (Tea Two) who has taken his place next to MakerBot #481 (Tea).  That means along with my RepRap Mendel (Earl) and the soon to be whiteAnt (Still unnamed, it's not really an evolutionary step up so I wouldn't call him Grey) I will soon have 4 personal fabricators in my basement!

I'm really happy with the Thing-O-Matic.  Particularly the new Stepstruder.  I've been familiar with the power of stepper driven extrusion for a while since I've been working on RepRaps, so it wasn't really a surprise that it was a major improvement over the old DC motors.  What was surprising to me was how well it worked almost immediately.  It took weeks or months of tinkering, butchered hobbed bolts, crooked gears, hacked together electronics, and skeinforge tweaking, for me to get my RepRap to print as well as the Thing-O-Matic printed immediately after I assembled it. (which was a lot easier than even the Cupcake assembly)

The stepstruder, along with the mechanical end stops, improved Z axis, and quieter operation really solves most of the things I felt that the MakerBot lacked compared to the RepRap.  I always told people that if you wanted the best quality prints to get a RepRap, but it takes a whole lot of work and to get a MakerBot if you want to get up and running easily.  Well now I can safely say with a Thing-O-Matic, you can have the best of both worlds.  The only thing the Thing-O-Matic needs now is to improve the automated build platform.  I've been having a number of problems getting large prints to work right, but it has been awesome to be able to spit out tons of small parts like the 30 pieces needed for this stick puzzle!

Although I don't post to this blog as often as I should, I do obsessively document a ton of stuff on my Flickr stream and on Twitter @tbuser all the time, so if you're interested be sure to subscribe to me there too!

That's about it... for now anyway...  :)

Filed under  //   makerbot   reprap   spinscan   thingiview   whiteant  

Comments [4]

2D to 3D

A while ago I tried and failed to come up with an easy way to get text into OpenSCAD.  The difficulty lies in the fact that OpenSCAD doesn't have complete support for all DXF entities that most tools like autotrace and Inkscape output.  This past weekend I wanted to create a simple business card-like object for our hackerspace at Berks CoLab that I could print out and give to people.  At first, I was just going to re-design the logo in something else like Sketchup, when I stumbled on this page about other 2D formats in the OpenSCAD manual which suggests using Inkscape to first convert SVG files into EPS files and then using pstoedit to convert the EPS into a DXF that OpenSCAD can read. (woah alphabet soup overload)

Since I had already created the logo using Inkscape, the first thing I wanted to do was to separate out each part of the logo into individual files so that I could extrude the text and shapes in different ways.  The first thing you'll want to do is give each object in inkscape a recognizable name by right clicking on it and going to object properties like this:

You'll also want to remove any effects like stroke outlines.  I found this ended up causing the final dxf file to cause import problems in OpenSCAD.  Next, you'll want to do a File -> Save As and chose EPS, not DXF since Inkscape outputs DXF that OpenSCAD can't process.  When you save the EPS a window will come up that lets you limit export to the object with ID that you set in the last step.  You'll also want to make sure convert texts to paths and rasterize filter effects is checked on this screen:

Now you'll need pstoedit.  I'm on a mac and I use Mac Ports so all I had to do to install it is "sudo port install pstoedit" on the terminal.  Using pstoedit you can convert the EPS file into an OpenSCAD compatible DXF file using this command "pstoedit -dt -f dxf:-polyaslines in.eps out.dxf".  Here's the result, I use eDrawings to view DXF files on OSX:

Now you should be able to extrude the DXF in OpenSCAD.  One of the interesting things about cutting up a logo piece by piece like this is that the resulting DXF files import into OpenSCAD exactly where they should go.  In other words I exported the circle, the gear, and the words Berks and CoLab as separate objects and when I imported them into OpenSCAD - they all lined up exactly as they were laid out in the original SVG file.

Here's the code I used to extrude just the gear:

color([100/255, 190/255, 50/255]) {
  linear_extrude(
    file="gear.dxf",
    layer="0",
    height=5,
    scale=20,
    origin=[5.85,4.15]
  );
}

You'll have to play around with the scale and the origin to get it to be roughly the right size and centered correctly.

 

I posted all the files used to create the Berks CoLab name tag to thing:5517 or on github. The next thing I'd like to do is make a name tag using green, white, and black plastic as a multipart thing that snaps together like wulfdesign's thing. It should also be possible to write an Inkscape extension that shells out to pstoedit to let you save OpenSCAD compatible DXF files directly from Inkscape - better yet, someone else could do it, plz k thnx!

 

Just as I was writing this post, I realized my original attempt could now be accomplished with an extra step to create arbitrary text into a 3D printable STL from the command line like so:

convert -size 400x400 -background transparent -fill black -stroke black -gravity center -kerning -30 -font Helvetica-Bold caption:"Tony Buser" tmp.png

autotrace --output-file=tmp.eps tmp.png

pstoedit -dt -f dxf:-polyaslines tmp.eps tmp.dxf

/Applications/OpenSCAD.app/Contents/MacOS/OpenSCAD -m make -s tmp.stl tmp.scad

 

I turned it into a simple shell script you can find the code at thing:5518 or better yet on github.

 

Filed under  //   inkscape   makerbot   openscad   reprap  

Comments [9]

My RepRap Needs A Vacation

Poor Earl is getting stressed out.  Ever since the abuse he suffered at Maker Faire NY, he just hasn't been the same.  He's also endured several trips to be put on display at different places like Berks CoLab.  He started making strange sounds when he moved his axes (he doesn't chop wood, apparently that's the plural of axis).  The sound was the belt rubbing against plastic parts as things started to get out of alignment.  That's when I noticed things were starting to crack.

That is a crack on part of the X axis that holds the bars.  It was getting slightly skewed causing the belt to ride up the bearings and rub underneath.  Once I took it off I found that crack and shortly after taking this picture it fell appart.

There's also some hairline fractures forming here at the top.  It's hard to take a picture of this clear PLA.  The cracks are forming INSIDE the parts, which I guess is a benefit to using clear PLA because otherwise I'd never know it was happening until it really cracked.

Here's a picture of some bubble-like cracking inside the frame vertexes.  These kinds of stress fractures seem to be on all the vertexes, however it's much worse on the bottom vertexes and not so much on the top two.

I'm not sure if these are common problem areas or if I've tightened things too much or used too sparse of an infill.  Either way, since I live in THE FUTURE and own multiple 3D printers, I'm able to easily print replacement parts using my MakerBot!

THE FUTURE - F YEAH!

Filed under  //   makerbot   reprap  

Comments [2]

The Berks CoLab

Reading (it's pronounced Redding, btw) in lovely Berks County Pennsylvania.  A place perhaps most famous for having a Railroad on the Monopoly board game, The Shopping Outlet Capital of the World, or the fact that a giant glowing red Japanese Pagoda has inexplicably been sitting on a nearby hill for the past 100 years overlooking a mostly German and Pennsylvania Dutch countryside.  Oh yeah, I think it was also recently rated in the top 25 most dangerous cities in the US.  Hopefully one day it will be known for having an awesome hackerspace, which is what I've been putting a lot of energy into lately.  What's a hackerspace?  This is one of my favorite videos that describes it pretty well.

It's been something that I've been thinking about for a while, but I never seemed to have the time.  Plus, Berks County isn't exactly the most progressive areas and I thought the odds of forming one around here was pretty unlikely.  The nearest hackerspace is over an hour away in Philadelphia which means although I might visit, it's too far to go to very often.  Then one night I was browsing the hackerspaces wiki map and noticed another marker in Reading - someone else (who turned out to be the little brother of friend of mine I went to highschool with) was trying to start a hackerspace in Reading too - inconceivable!

Then I went to the World Maker Faire and got really excited.  While we were there, Amy went to a talk about starting a hackerspace and she got really excited too.  So when we got back we started contacting people and getting serious about it.  A month later we have 10 people interested and 6 people who have been serious enough to meet every week for the past month, we've decided on a name - Berks CoLab and have started down the road to forming a non-profit.

So, if by some even more amazing odds, you are from the Berks County area and would like to help drag Reading kicking and screaming into The Future - you're welcome to join us at our weekly meetings.  (plus: someone usually brings chocolate Mmm)  We meet every Tuesday at 6:30pm in downtown Reading.  You can get the details here.  We're also planning to meet once a month on Saturdays to work on a project.  We haven't decided on a project yet, but it will probably involve robots and lasers, RepRaps or MakerBots and a whole lot of awesome!

Filed under  //   berkscolab   hackerspace   makerbot   reprap  

Comments [3]

New York World Maker Faire 2010

This past weekend I demonstrated my RepRap Mendel at a table at the 3D Printer Village at the New York World Maker Faire.  It was great to be surrounded for the first time with people doing the same things that I've been doing while toiling away in obscurity in my basement for the past year.  I was kind of freaked out how many people walked up to me and said "Hey I know you, I read your blog!".

It was also exhausting, particularly the first day.  You see, on friday what I expected to be a 2.5 hour drive turned into a 5 hour drive mostly stuck in traffic.  Then, woke up saturday at 5am only to find that the shower didn't work right in our hotel room.  I proceeded to spend about 12 hours outdoors in about 90 degree weather talking to literally hundreds of people in what seemed like a dirt dust storm.  You have to understand, 2 of my least favorite things are hot weather and talking to strangers (or talking at all), so I was totally out of my element and seriously stressed out.  I wished I would have had more time to talk with the other 3D printer operators (particularly the guys at MakerBot), however my brain was turning to mush.

But no matter how sweaty, dirty, and tired Amy and I were, another kid (and often adult) would walk up to my table with this kind of wide eyed wonder at my creation as it slowly built up another object.  Then I'd realize - here was another person who was staring into the beginnings of a technology that they often had no idea even existed before walking into our tent.  Maybe that kid would be inspired like Carl Segan was when he was a child and visited the first World's Faire in 1939 that was also on these same grounds.  So I'd explain for the 1000'th time what a MakerBot and a RepRap is, how it works, that ABS is the same plastic as LEGOs, and what are the implications of personal fabrication and machines that can make almost anything including other machines, will have on the future world that they will grow up into.

In the end I had a great time and won a blue ribbon!  Now I need to unpack and clean off a few layers of dirt and grime out of my poor little robot so I can get back to helping make the future awesome!

Filed under  //   makerbot   makerfaire   reprap  

Comments [9]

CloudSCAD Blog

I created a blog just for CloudSCAD at http://blog.cloudscad.com

And oh yeah, here's a video of CloudSCAD on an iPad.  Sometimes I even impress myself!

Filed under  //   cloudscad   makerbot   rails   reprap   ruby   rubyonrails  

Comments [1]

CloudSCAD

This is a little premature, but I wanted to share some progress I've made today on an idea I've been thinking about for a while now.  When I'm not hacking on 3D printers, my day job is web development so it's about time I start using my real skills for this stuff.  I call it CloudSCAD - it's OpenSCAD for the web.  It lets you write, share, mashup, and customize parametric 3D models using the OpenSCAD scripting language all within the browser and doesn't require anything to be installed locally.

As you can see in this screenshot, one of the cool things it does is parse the OpenSCAD script looking for parameters.  Then presents those variables in a friendly HTML form so that people can modify an object for their needs and click a button to download the customized STL file suitable for printing on a 3D printer.  They don't have to know anything about OpenSCAD, install anything, or touch a line of code.  Also, the author of the script doesn't have to do anything special - just put some well placed comments in their code.

What you can't see is the edit page.  I'm using Bespin to provide a syntax color coded editor for writing scripts.  I hope it will eventually include code completion and a few other things.  In some ways this is (or could be) even better than the editor in OpenSCAD itself.

There is a REST api.  For instance, you'd be able to download this script by going to http://cloudscad.com/scripts/1.scad and the stl output by going to http://cloudscad.com/scripts/1.stl and say you wanted the hole to be 8mm in diameter you could say http://cloudscad.com/scripts/1.stl?hole_diameter=8 Eventually you may even be able to say http://cloudscad.com/scripts/1.gcode, but I'm getting ahead of myself...

Like I said, this is pretty premature.  I've registered CloudSCAD.com but there's nothing there for you to see yet.  Everything you see in that screenshot and what I've described is finished, though.  Not too bad for one days work.  ;)

Filed under  //   makerbot   openscad   rails   reprap   ruby   rubyonrails  

Comments [22]

ACHIEVEMENT UNLOCKED: Water Tight Minimug Printed on RepRap Mendel

I think I can finally consider my Mendel fully operational!  :)

Part of my problem until now was a poorly made hobbed bolt on my extruder and the other problem was that I needed to increase my temperature to 210C instead of 190C (I forgot I was using 4032 PLA).

Also, I ran into a problem with the way the Wade extruder is mounted.  The motor collides with the left frame bar above about 50mm.  So I finally decided to do what I had been thinking about for a while and design an adapter to mount it horizontally.  That way it also fixes some other issues like the fact that you have to basically disassemble it to remove it from the carriage and the hot end wasn't centered right.

I've uploaded the OpenSCAD script I wrote to Thingiverse.

Filed under  //   reprap  

Comments [7]

Fixed Communication Errors

I've been going crazy trying to figure out what was causing these kinds of communication errors on my RepRap Mendel causing very jerky printing as it pauses every few seconds when it throws an error:

MacBuserPro:reprap-mendel-20100719 abuser$ ./reprap 
Experimental:  JNI_OnLoad called.
Stable Library
=========================================
Native lib Version = RXTX-2.1-7
Java lib Version   = RXTX-2.1-7
ERROR: GCodeWriter.waitForOK(): Serial Error:Recieved a LineNr code without a Checksum code or Checksum without LineNr [0.000s/-1279863615176ms]
ERROR: Requested to resend line 96 [0.005s/5ms]
ERROR: Resent: N96 G92 E0 *88 [0.006s/1ms]
ERROR: GCodeWriter.waitForOK(): Serial Error: checksum mismatch [0.097s/91ms]
ERROR: Requested to resend line 101 [0.103s/6ms]
ERROR: Resent: N101 G1 Z0.0 F5.0 *17 [0.104s/1ms]
ERROR: GCodeWriter.waitForOK(): Serial Error:Recieved a LineNr code without a Checksum code or Checksum without LineNr [5.092s/4988ms]
ERROR: Requested to resend line 112 [5.098s/6ms]
ERROR: Resent: N112 G1 F1500.0 *118 [5.098s/0ms]
ERROR: GCodeWriter.waitForOK(): Serial Error:Recieved a LineNr code without a Checksum code or Checksum without LineNr [7.108s/2010ms]
ERROR: Requested to resend line 129 [7.116s/8ms]
ERROR: Resent: N129 G1 X43.1 Y54.7 F1500.0 *127 [7.116s/0ms]
ERROR: GCodeWriter.waitForOK(): Serial Error:Recieved a LineNr code without a Checksum code or Checksum without LineNr [12.176s/5060ms]

I had tried a bunch of things, but I was certain that it probably had to do with this capacitor I had nearly knocked off one of my stepper controllers.  I thought I had re-attached it, but it still felt loose.  Tonight I decided to just take it off and figure out how to solder on a new one.  When I took it off and checked it more closely, I realized that the traces had lifted off the board and the pads must not have been making very good contact.

So I took a thru hole capacitor and figured out a way to solder it on considering the pads were gone.  I decided to put - to the adjacent GND power pin hole and + wrapped around to the back of the board and soldered to the +12V of the screw terminal.

Hooked it all up, seems ok, tried to do a print and the same communication errors!  Ugh...

Finally I thought it was because I was using OSX or maybe the RepRap host software just sucks and I was about to go back to trying to get the MakerBot firmware working when I noticed there was a new release of the RepRap software.  Downloaded it, re-flashed with the new firmware, and what do you know - no more jerky prints and no more communication errors!  I guess it was just a bug with the 20100719 release and version 20100806 works fine!

It's still not perfect.  I've been having trouble getting constant extrusion.  It appears that my hobbed bolt is really poor.  It barely bites into the filament and quickly gets clogged with plastic and needs to be flossed like every 30 minutes.  Thankfully I have a ton of extra bolts, I'm going to have to try making a new one, but I'm seriously considering paying someone else to do it.  I'm not very good with power tools...

Filed under  //   reprap  

Comments [4]

Brain Dump

It's been a while since I've posted anything and thought it would be a good idea to share all the things I've been working on lately.  This is going to be a long post...

The main project I've been working on lately is this mostly printable filament spindle.  The idea is to bolt it onto the bottom of my RepRap Mendel to form built-in filament management.  Right now I'm still testing it with my MakerBot and so far it's worked flawlessly.  Although it's built upon the work of others, I am really proud of it and it's the most intricate thing I've designed.  I still need to document the rod lengths and decide on the best way to attach it to a Mendel.

My filament spindle is super easy to use with a fresh spool of plastic.  However, I have a load of filament that has devolved into tangled messes like this one.  Preventing this kind of disaster is the main reason why I made the filament spindle, but what am I going to do with all my balls of plastic?  I've tried several times to untangle things and re-wrap it into a spool again, but it always falls appart.

That's when I came up with an easy process to get it back under control.  I had read some people put re-rolled plastic into an oven and the heat re-sets it's shape.  I didn't think my wife would appreciate me using the oven like that, so I tired wrapping it as tight as I could and securing it with velcro straps.  Then I put it on an electric blanket set to high with a towel on top for over an hour.  Then took it off and let it cool for over an hour.

It now stays in a good shape and I was able to load it on my filament spindle.  I can't believe I've wrestled with tangled filament for so long when it was that easy to get it under control.

I've also sold 7 Wade Extruder kits in the past 2 weeks!  I've also had a few custom print jobs. (mainly other miscellaneous Mendel parts)  I'm now selling a kit including everything you need as well as bearings on my Replimat Etsy store for $41.50 and $29.42 for just the plastic printed parts.  I'm not going to be able to quit my day job anytime soon, but it has earned me enough to pay for my work on the Filament Spindle as well as a bunch of electronics toys so I can experiment with Pololu drivers and adding a stepper extruder to my MakerBot.

That brings me to the other thing I designed.  I documented a simple Pololu Extruder Stripboard.  Although there are a lot of people working on some great Pololu based printed circuit boards, this stripboard is a whole lot cheaper and readily available way to interface with the existing MakerBot electronics to have a super smooth and silent stepper powered extruder.  I'm using it now with my Mendel and I'm planning on doing the same thing on my MakerBot real soon if I can figure out how to add a few more hours to a day.

Who needs to sleep?  I also put in a Sparkfun order for another idea that I've been thinking about... several people have done some awesome work adding an LCD and keypad control panel to their MakerBot... however, I was thinking...

iPhone/iPod/iPad(!) + JailBreakMe.com + PodBreakout + Logic Level Converter + Printed Dock Enclosure + Some Code + MakerBot = OMGWTFBBQ!1 Possibly one of the most awesomest multitouch LCD Control Panels EVER

By the way, I've also been accepted as a Maker at the World Maker Faire NY!  September 25th and 26th at the HALL OF SCIENCE.  I love that name... sounds like where the Super Friends hang out... *pew pew* Meanwhile, at the HALL OF SCIENCE.  I'll be bringing one of my printers, probably my Mendel (if I can get it working reliably) to demonstrate at the 3D Printer Village table.  I've never been to a Maker Fair, it should be awesome.  Come say Hi!

Maker Faire New York

Filed under  //   makerbot   reprap  

Comments [3]