Going on an Adventure!

We bought a boat. Long story short; we hired a narrow boat and spent a holiday on the Norfolk Broads last year. We enjoyed it so much that we sold our camper van and bought a narrow boat. That was last winter. We spent the Spring doing repair and refurbishment, and are now ready to set off [1]

The boat (renamed ‘Lady Sharrow’ from ‘Elysium’) is currently at a marina in Iver, on the Slough arm of the Grand Union canal. Over the Summer we intend to move her to be much closer to home, to a marina just off the Great Ouse.

The plan was to set out from home on Friday morning by 10:00 to arrive at the boat by 14:00 and get four of five hours of boating [1] in. We ended up leaving home at 14:00 and arriving at the boat at 18:00, then loading the boat and stowing thing, in the rain, until 19:00. Then collapsing into bed.

New plan. Set off in the morning, on Day One. Today is now designated as Day Zero.

[1] Dammit, the urge to write ‘set sail’ or ‘an hours sailing’ is very very strong. But it’s a narrow boat. We don’t have a sail. I haven’t yet come up with a narrow boat equivalent of ‘set sail’.


I am unreliable informed [*] that in the old days beekeepers would use the ‘tailings’, the honey that could only be extracted by washing the wax through with water after you’ve extracted the bulk of the honey and put it into jars, to make mead with. So that’s what I’ve done. Two demijohns worth.

I’ll report back in a year or two and let you know if I have drinkable mead or not.

[*] ie I read it on the internet somewhere.

Air Brushing

My Christmas Project (one of them, anyway) was to decorate a hob cover that I had made for the kitchen. This seemed like an ideal excuse to use Jenny’s new air-brush.

Since I have absolutely no talent for drawing, I made some stencils, with both the 3D printer and the CNC router, and started practising on some scrap wood. It took a lot of scrap wood and a lot of practice before I managed something that didn’t look horribly blotchy, but I think I’ve finally managed to get the hang of it.

I’m quite pleased with the result anyway.

Decorated hob cover
End result – a decorated hob cover

More Art

I made this as a simple carving about three years or so ago, to put up by the pond in the back garden. It kept falling down, and was starting to look very sad. So I decided to clean it up.

I sanded it down to remove most of the mud, and repainted the black background with a small roller to avoid getting paint into the carved out design.

Then I looked at the result and thought, “Boring. Needs more colour”, so got out the brushes and acrylics and went to work. A couple of things I learned on the way:

  1. The mottled effect on the tentacles worked quite well (and it was deliberate, honest). I painted some white patches on the bare wood before over painting with green, and like the effect.
  2. you can put big splotches of acrylic on to give a slightly 3D textured effect.

I do realise that both of these things are perfectly obvious to anybody who has painted before, but they were new to me. I do like the end result. I may be a slow learner, but I get there eventually.

Warning sign for the pond

Adventures with photoVcarve

I’ve been playing with some software called photoVcarve, which will convert a picture (bitmapped, eg gif or jpeg) into gcode containing a set of lines of varying width. The result is something very like an old style newspaper photograph, but carved into wood.

I’ve had some pretty good results with taking light coloured wood (mostly plywood), staining it a dark colour, then carving. This means that the cut lines are white against a dark background.

I thought I’d try to experiment with doing things the other way around. I took light wood again, varnished it, carved it, then applied stain. The idea was that the stain would effect the cut wood, but could be wiped off the uncut varnished areas.

This is the very first attempt.

I’m quite pleased with this as a proof of concept trial. One thing I shall try next is to use a thinner stain, possibly just watered down.

The woman in the picture, by the way, is Rosalind Franklin, who discovered the shape of the DNA molecule.

Arduino Project

This was supposed to be my Christmas project, but I got bored, and it turned out to be easier than I expected, so I finished well before Christmas.

It’s my first attempt at doing something with an arduino. It measures the temperature of the fridge and freezer. It uses a two line LCD for display, and two one-wire sensors for the measurements. Both devices have libraries and example code which I filched, which is why the programming was so easy (and is On github if anybody is interested)

I suppose the next job is to make a case for it. I don’t have a 3D printer or any way of working with plastic, so it’s going to have to be wood. Hmmm. I wonder if I could make something steampunk looking from wood and brass….


plaques I’ve always felt rather envious of those people who are good at crafts. I can’t draw, I can’t paint, I have no idea how to sew, and I’m not even particularly good at taking photographs.

But over the past few months I have discovered that one thing I am pretty good at is programming a CNC machine, and learning to work with wood in general.

Lines and Arcs

When I started reading up on G-Code I noticed that, as well as straight lines, it could also define arcs and circles. I also noticed that the G-Code produced by Easel only contained short line segment, and no arcs at all.

My assumption was that this was an arbitrary limitation of Easel, and I wondered if there was any way to fix this.

I found a very clever python script called g1tog23.py written by Frank, which takes a G-Code file containing line segments, and where appropriate converts lots of contiguous line segments into an arc or circle. I tried this on a test design of five interlinked circles. It seemed to work, so I then tried sending it to the X-Carve.

The first problem was that the python script had inserted lots of A0.0000 commands. I couldn’t find this command on my g-code cheat sheet, so I have no idea what it’s supposed to do. Neither did the g-code interpreter on the X-Carve, which rejected it as an ‘Unknown Command’. So I simply stripped them out.

The next problem was that instead of drawing arcs, the X-Carve was drawing straight lines from the start and end position of the arcs. This was unhelpful.

Reading up some more on g-code, I learned about G64. This command is used to specify how accuratly arcs should be drawn. Without it, when you ask the interpreter to draw an arc, it draws a straight line and says “that’s close enough”. G64 is used to say “That’s not good enough, I want no more than n units of deviation from the arc”.

The interpreter does not support the G64 command.

But it does support G61! G61 means “No compromises! I want my arcs as accurataly as possible”. So once I manually issued that command before running the g-code, I got beautiful arcs and circles.

I discovered later that it’s actually quite common for G64 not to be supported, especially on single board computers, because the calculations involved are to intensive. It’s more common for the g-code generator itself to do the calculations to convert from arcs to line segments. That is clearly the reason why Easel is producing the g-code that it is.

It was disappointing that the result took just as long as carving without arcs. Disappointing, but obvious in hindsight. The bottleneck isn’t sending commands, or interpreting them, but doing the physical carving.

But using this script does mean that the size of the g-code file is drastically reduced, typically by about half. It could be worth using just for that reason.

And at least I’ve learned a lot more about g-code.


Universal G-Code Sender

Easel worked pretty well with our new X-Carve, but it only runs on OS X or Windows, not on Linux. We didn’t want to keep our nice Mac laptop in the workshop, and I don’t have anything running Windows, so I looked around for a Linux solution.

I found the Universal G-Code Sender. This is a simple (ish) Open Source program written in Java that supports, amongst other things, Linux, and will send G-Code commands to the X-Carve.

Easel has the option to export G-Code to a file instead of sending directly to the X-Carve.

So our workflow is now:

  • Design using Easel on the desktop Mac in the office
  • Export G-Code
  • Load G-Code into UGS running on a cheap Linux box in the workshop
  • Use UGS to send the code to the X-Carve.

There were a few minor problems to overcome. The G-Code that Easel generates does not include a “Set Home” command, nor does it start the spindle. It also generates absolute rather than relative paths. These problems were easy to solve by manually sending the relevant G-Code commands with UGS before loading and sending the G-Code file to the X-Carve.

The commands are:

G10 L20 P0 X0 Y0 Z0        to set the home position

M3 S12915                              to start the spindle