Two great builds

Morbo posted in the forum with a link to some great pics of his drawbot build.  I especially like the name “politzler” – which is maybe a kind of polite scrawler, or maybe a police scrawler, I can’t decide.

(I would insert a pic but they’re all rights reserved – just go and look at Morbo’s flickr set covering the build – cracking stuff, and see the delta bot pics too.  Dead jel.)

Secondly, just saw this one today – very impressive build from Dealywhopper based on a old board trolley thingy – what a perfect adaptation!  Brilliant write-up and so true: “Operating it is really more of a zen exercise, sort of like watching a plant grow.”

I admit though, my favourite part is on this other project that is written-up on Dealywhopper’s site: This monstrous stand for a dishwasher.  I laughed out loud, that last, terrifyingly familiar line:

“It’s certainly not the most practical piece of furniture we have.  Actually, it’s downright ridiculous, but I like it, and we’re sure as hell not getting rid of it, because it was a bastard to make.”

And the picture where the item is in situ, utterly dwarfing everything else around it is just gold.  Go and read it and encourage the building of more dealywhoppers.

Safer vectors

Have just been working on making vector drawing a bit safer, thanks to prompting from Matt.  Still no resize or zoom, but this drawing with 14,000 commands has just finished successfully.

Map drawing

This SVG was one that used to send the machine into a mad spinning fit, off searching for a coordinate it could never reach.  Well, now the machine will only attempt to draw to points that it believes fall within its own machine space, and it superstitiously avoids any 0 coordinate.  There are a couple of changes to the embedded (server, firmware, whatever you like to call it) software to support that, and there is a slightly new acceleration behaviour for C17 (draw straight line) commands.  This essentially turns off acceleration for C17.  Because the line is chopped into such small pieces with C17, it doesn’t work anyway, so doing without makes for a much faster line, at the expense of noise, maybe a bit of wobble.  It’s a slightly harsher process.

Ok, so those are the updates to the machine code, not completely essential, but it can be found, as usual in the repository.

The controller has a couple of minor changes to support vector drawing, mainly that only vertices that fall on the page are sent to be drawn.  I know it makes sense to have the select area tool able to select the lines to draw, but that’s all a bit tied up with bitmaps and regenerating the density maps to do that easily at the moment.  In future though, definitely, along with svg resizing and moving.

The controller now has a separate window to select the pixel rendering options, and choose which corner you want the drawing to start from.

The other change in the controller is that it now supports the new Arduino MEGA firmware, and the few new features that are available in that (namely saving to / drawing from SD cards).  It recognises what kind of board you have plugged in because the mega version broadcasts its nature in its READY shoutout.  Shouldn’t make any difference to anyone because standard behaviour is the same.  I’ve noticed an oddity with the way the control panel wraps when it detects the machine has changed to a different type, but nothing problematic.

Available from the repo, or the downloads section, v1.1.2.

Extra guide stuff

I updated the instructable to reflect the new controller, and also the wiki, though some of that just points at the instructable.  In other news, the new controller has now replaced the old in the trunk of the repository.  New updates will be committed to the trunk rather than polargraph_controller_zoom, so those of you who have checked out of the repo directly, then you can switch to this trunk, or just dump the whole folder and start again from the trunk.

Liberty TSP

I’ve done some TSP stuff, based on the Evil Mad Science TSP guide that was written up for preparing artwork for the eggbot. Don’t be put off, it was easy!

Oh, and for extra credit, I will reveal that this drawing was made with a polargraph running …. standalone!  Exciting isn’t it.  I just turned the computer off and walked away, and the machine just kept on scribbling.  It was a seminal moment.

I exported the queue to a .txt file on a microSD card linked to an arduino mega, and did it that way.  I’ve started a new branch for this in the embedded code repo.

Vector drawing almost there

Vector graphics importer was much easier than I anticipated.  I’ve used the geomerative library for dealing with the SVGs, but I don’t really know if I need it.  I tried it because Alex Weber recommended it in his writeup about Der Kritzler, and if it’s good enough for him, it’s good enough for me.

Initially this will work like the bitmap image imported used to – no cropping, scaling, moving etc, plain import.  I’ve done this by making a new document in inkscape, the same size in pixels as my machine is in mm.  As time goes on I’ll add moving and scaling if it becomes necessary.

I think what is more likely is that for vector graphics, I’d prefer a plugin for inkscape, like eggbot has.  I wonder if anyone reading this is into python and would care to point me in the right direction, or give it a crack themselves?

You’ll also notice that the letter centres are offset.  That’s a problem.  Not sure where, or why, but it’s my first go, come on.

Very pleased.  Will be in subversion once the centres are fixed and the loading is a bit more elegant.  Next stop, TSP!!!


Test textures

I was curious to see how these generated images

Would come out of a polargraph machine. It’s just a section from the middle, on A3 paper. I rotated it so that the main horizontal flow was aligned with the symmetrical axis of the drawing machine’s pattern.

Row size is 45 steps, and tip size 0.2mm, using a 0.1mm UNIpin pen. Bears little resemblence to the original, but not unpleasant. Rather undisciplined pattern though, could benefit from a bit more weight on the gondola.