Apparently this full time job thing doesn’t leave a lot of time for blog updates…

I bought a tiny lathe! This is a Taig Micro Lathe – not even a Micro Lathe II, I believe. It’s the old style with split headstock, which dates it slightly. The plan is to do it up (it actually looks in good nick, albeit covered in sawdust), and tweak it and make tooling for it to get a fair degree of precision for small stuff. ER collet chuck, etc.

To that end – my first ever dovetail!

That was certainly educational. Two main lessons, one technical, one philosophical. The technical one is that you really need to nail that depth before trying to match the actual tails. If you’re off on the depth when you get the tails right, you’ve got nowhere to go. The philosophical one is that it doesn’t need to be that close…


Almost there… I need to make proper depth nuts, and then slit the body to actually get clamping, but then I’ll have a home made quick change toolpost! Then I can build a toolpost grinder for it.

Tiny lathe has a tiny chuck, which is now cleaned and shiny, and tiny lathe itself is a bit cleaner now. That’s a rotary table with brand new T-slot nuts, courtesy of less-tiny mill. One day I’ll stop making tooling and make .. .something else, I guess.

But not today. Hammers! The large one is for tapping things around on the mill and in the vice. The slightly smaller one is for the same, with more delicate things. The tiny one is because apparently I am assembling a tiny workshop, with tiny tools.


So I had the VESC showing power, but not responding to the ST-link programmer. Last week, Jack borrowed some mosfets to build his own VESC, and I lent him my programmer and we took a quick look at mine. Nothing obviously wrong – the STM got power, but didn’t respond, so we left it at “not sure if board or dongle”.


At some point, Jack obviously got his own board running and tested my dongle. He messaged me with the good news that my $8 eBay dongle was just fine, so the ESC was probably … not. “Did you get 2 layer boards printed? Cos it’s a 4 layer design…”

Why yes, Jack, yes I did somehow order 2 layer boards for a 4 layer design. So those middle two layers of connections, probably important.I have re-ordered PCBs in *4* layers, for the latest design. I am slightly pleased that it’s (possibly) not my soldering that was the problem….

Or, apparently, fortnightly. Sure I’ve been doing stuff, too much stuff to be writing updates 🙂

Monday the 14th, cleaning the basement. Not very exciting in itself, but we’ll get to that…

Tuesday the 15th – more laser cutting! Discovered that if you’re doing two separate runs of the same thing, you really need to watch the scaling factor. So now I have to clumsily file down the slots in front of the pi cluster enclosure 🙂 And the fan mount on top has worked nicely.

2015-12-15 11.53.34 2015-12-27 19.36.36

Wednesday the 16th

So, why did I clean up the basement?

Continue Reading


Having discovered Benjamin Vedder’s open source ESC ( http://vedder.se/2015/01/vesc-open-source-esc/ ), I’ve decided to build a couple over the summer. I ordered parts a while back, and after exams I finally have enough time to build it. So I wandered into the TAFE side of school to borrow a reflow oven from the techs. I’ve done a number of fiddly things in my time, but this was by far the fiddliest. Tiny things everywhere. This was my first time with reflow, and first time with stencils for the paste. Again, fiddly, but once the stencil is centred, so much less fiddly than other methods. I will get metal stencils next time, I think, but the mylar was ok for this job.

2015-12-02 11.54.45

All present and correct on side 1. Didn’t get around to side 2 on Monday, but I did arrange a lot of tiny resistors.

Continue Reading

On Monday, this was the fiddliest thing I had ever done:

2015-12-02 11.54.45


That record lasted 2 whole days:

2015-12-02 11.54.19


This is Benjamin Vedder’s ESC – http://vedder.se/2015/01/vesc-open-source-esc/. I haven’t programmed the STM yet, but I powered it up, and a little blue light came on and nothing caught fire. Sounds like a win!

This picture shows a small grid of “pixels”, 20×20 large.

If you count the pixels along the top, you’ll see that I’ve marked off every 5 pixels, just for clarity. That’s the X axis, moving from 0 at the left to 20 at the right.

On the side, we have the Y axis, moving from 0 at the top to 20 at the bottom. Computer graphics traditionally start with 0 at the top, but other fields such as CAD or robotics often have 0 at the bottom for Y, and 20 (or whatever) at the top. Not important at the moment, we’ll work with 0Y at the top.

So every pixel inside the grid can be thought of as a point in that grid. If you count along 7 pixels, the X value will be 7, and then if you count down 12, the Y value will be 12. That’s always expressed as (X, Y) – the sideways direction first. That’s to annoy mathematicians who use matrices that express the row first, then the column 🙂

Inside the grid, then, I’ve drawn 3 lines. Start at the top left – you can see a point labelled (5,5). If we draw a line straight down, we’re adding to the Y value but not moving sideways, so the X is unchanged. I’ve drawn down 10 pixels, so the final value is (5,15). Similarly, I can start at (5,15) and move both up *and* sideways. Moving 6 to the right gives me 5+6 for X, moving up (towards 0) 4 gives me 15-4 for Y, so (11,11). And a final line again moves in both directions back to the start.

So each line has a start position (5,5) and an end position (5, 15), because a line has a start point and end point:

(5,5) (5,15)
(5,15) (11,11)
(11,11) (5,5)

Shapes like triangles and squares are just lines, but they’re lines with a special quality – each line shares a point with another line. They *have* to join up. So if our first line is (5,5) to (5,15), we don’t need to specifiy (5,15) for the second line – it has to start at (5,15). If it ends at (11,11), then we know the start for the next line. And you can see from the list above that there are indeed 3 unique point – (5,5), (5, 15) and (11,11).

So although at some level we have to draw each line between two points, we can get away with only providing the points if they are shared. If we say “Draw a triangle between (5,5), (5,15) and (11,11)”, we can just “join the dots” as it were.

Hope that helps!

For a recent project, we attempted to build a hexapod that would carry a beer from the kitchen to my study, so I didn’t have to get up and get the damn thing. One of the interesting plans was to be able to teach it new paths and record the path so that it could replay the path later – set and forget navigation. That never quite worked out, but a few people on some forums have expressed interest in what we *did* get up and running – the hexapod had a raspberry pi with a camera and wireless module, and I wrote an interface to run on a PC that could connect to the Pi, stream the video and steer it over wifi.

So this is a little tutorial on how to achieve that.

First thing – get your wifi dongle working. there are a bunch of instructions for that depending on model. Make sure you can connect to it from whatever PC you’ll eventually be using to control. Similarly, make sure the camera works locally.

Once you have the camera and the wifi working, we can put them together. The video and the UI are separate things – it might be easiest to set up the streaming video first. I just followed this tutorial:
Streaming video on the Raspberry Pi

You can see the stream in a standard browser. Later we’ll integrate it with commands to the arduino, but for now, check that works.

Continue Reading