Posts

UGS 2.0 to Netbeans Platform first impressions

For the past year Universal G-code Sender has suffered pretty severe feature creep. Lots of people had lots of good ideas, but it made the front end code confusing and hard to extend. In large part this is just because it's hard to compartmentalize a complex GUI. GRBL has had a lot of interesting features added in the past year which are begging to be leveraged, but UGS wasn't in a position to use them. With all this in mind I started trying to come up with a solution. The first step was to decouple the "model" object from the GUI. Inspiration for this started nearly a year ago when Bob Jones implemented a web interface for UGS. Bob made a thin API layer which exposed a few simple functions and allowed him to build a completely separate web-based user interface. This pattern is known as Model-View-Presenter , and allows for multiple front ends which use the same back end code. It enhances test-ability of the business logic and helps facilitate a flexible front end...

Automated builds with Netbeans Platform 8.0.2

I've been converting UGS to run on the  Netbeans Platform  over the past week, and in general its been great.  The features and documentation I used while migrating UGS away from Swing were very well done. So aside from a couple hiccups, the Netbeans Platform has been great. Until a few days ago when I decided it was time to integrate my new changes with my Jenkins CI server. It turns out that you can't build a Netbeans Platform application without connecting to the Netbeans IDE first. This has to do with the extra modules, platform components and build harness. Searching the subject online provides a lot of documentation, everything I've found is either out dated, contradictory, or I could only get it working with a new project and not my existing one. The final solution was so simple, and minimally invasive that I wanted to create this blog post. There are 4 interesting files for a Netbeans Platform build: build.xml  - Some documentation suggests addin...

Easy and accurate SVG to DXF conversion using Inkscape and pstoedit

If you've ever worked with a vector tool to design something to be carved with a CNC routing machine, you may have needed to convert the resulting SVG file into a DXF. In my workflow I often use Inkscape to generate my SVG graphic, but my CAD software is CamBam and it requires a DXF file. Many people have tried to make the perfect Inkscape plugin for exporting DXF, there is  Better DXF Export ,  Better Better DXF Export  and  Big Blue Saw's DXF Export . I've had the most luck with the last one, but it was still finicky and often broke when updating Inkscape or OSX. Not only that, but at the end of the Big Blue Saw page, Simon mentions that he doesn't even use the plugin most of the time, instead relying on a command line tool called pstoedit. With that in mind I made a small shell script which will convert an SVG file to DXF, you can save the script and run it directly or add the functions to your startup script. The script is available on github under the proj...

OpenSCAD linear extrude that interpolates between two shapes

Image
Full source code is available for this thing on thingiverse . OpenSCAD has proven to be an easy to use and flexible tool, but at times I'm left scratching my head to figure out ways around its limitations. In this case I had two squares with rounded corners, their sizes and the corner radius for both squares are configurable. Now I wanted a square tube to join these two pieces together. My hope was that I could get it close enough with some fancy parameters piped into the OpenSCAD linear_extrude function. It seemed possible since there are some pretty fancy parameters regarding rotations and twists. After checking out the documentation it didn't look like there was anything that would be close. For this project I found a module by Felipe C. da S. Sanches to create squares with rounded corners . I'm sure there are many like it, but this was the first one I found and it worked as advertised. So made a little module using this which wraps around a rectangle for ...

A week of 3D printing with the OrdBot Hadron

Image
It has been about a week since my OrdBot's first successful calibration print and it seems like a good time to write down some of my initial problems, experiences and solutions. However before I get into that a review of my 3D printer stack. Hardware OrdBot Hadron 3/8"-12 TPI ACME Z-Axis screws 1.8 degree Nema17 X/Y motors 1.8 degree Nema23 Z motors Qu-bd MBE Extruder (with some modifications) Electronics AzteegX1 v1.0 ( 644P processor) Lava heatbed, I have only used PLA at this point so this is still disconnected. Software Mac OSX Marlin firmware Slic3r v0.9.9 Pronterface (March 2012 release) Repetier-host Mac (0.56, lower versionthan linux/windows releases for some reason) Now for the problems encountered during the past week, approximately in the order which I ran into them. Pololu A4988  - I have used these before on my ShapeOko CNC machine. They have been so reliable that I completely forgot how to set them up, as such I blew up 3 drivers while sett...

Building an OrdBot 3D Printer

Image
I've been a fan of MakerSlide  ever since building my ShapeOko CNC Mill , and have been interested in 3D printing since first hearing about the RepRap project in 2007. So when I first saw the OrdBot, I knew that it would be the printer I build. It didn't hurt that I had 10 feet of extra MakerSlide and a whole bunch of the special bearings and eccentric spacers left over from my ShapeOko build. One of my goals was to build all the custom parts myself, the blue and black pieces in the photo above. Cutting aluminum on my new CNC machine pushed it to the limit, but worked out in the end. One of the larger OrdBot pieces is the handle, here is a shot of the ShapeOko making short work of it: There are a couple parts that I modified or upgraded during the build. Most notably the Z axis. After reading about bent Z-rods I decided to get some ACME rods, and I wanted to use some spare Nema-23 motors that I had on hand. The NEMA-23 motors for the Z axis were easy, I slightly modi...

ShapeOko CNC Mill

Image
April of 2012 I signed up for the first batch of ShapeOko kits from inventables.com. Unsure of how popular the kit would be, inventables had a kickstarter-style order of 150 (or so) kits. That number was reached handily and several more batches followed. Since then the ShapeOko has become a standard item in their store. I've wanted a CNC mill for a long time, but could never justify the expense. Now there are products like the MakerSlide linear rail system that made it possible for low cost machines. The first round of kits were only $200 for the entire mechanical platform - add your electronics and a dremel tool and the machine can start cutting. So thats what I did. The stock kit plus motors after assembly: One of the nice things about the ShapeOko is how hackable it is. For instance if you want to make the cutting area larger you can just replace the MakerSlide with longer rails. So I added longer rails, a second Y-axis motor, a torsion box to mount everyth...