I modified another MIG welder, didn't die, didn't entirely succeed

Sometimes, my projects fail. Actually, they often fail, but usually in a recoverable way. This was not recoverable. Not because of the gasless-to-gas conversion (this worked fine), but because the welder I did the conversion on was fundamentally broken.

It turned out that "creates an arc and deposits material" is not the same thing as "actually has enough power to weld two bits of steel together". I checked the former to declare this welder "working" when I first acquired it, and I didn't check the latter. That one is entirely on me. It probably has a bad transformer, which would be an unreasonable amount of money to replace even if I could find one.

I'm writing about it here not because I am doing some sort of brave thing where I'm open about my mistakes. Who would do that! Instead, I'm writing this because I did all the work of a conversion, I documented it on the way, and there's probably someone out there who wants to know if a conversion is possible. It's possible, because I did it. I just didn't do it on a welder that was working properly in the first place. Lessons learned!


This is a free MIG welder.

It is a Draper gasless-only MIG welder. I have no idea how old it is, but its model number (MWD100AGL) barely shows anything useful on Internet searches. It appears to be functionally identical to the various Storm Force gasless welders, though this one has "MIG FORCE" written on it (which also returns few useful Internet search results).

It's actually my second free MIG welder. I wrote about the other one. My old man bought this one a long time ago, discovered he didn't like flux core welding, and then left it in the corner of a shed. This was going to be broken for parts because most of the parts fit other hobby MIGs of a similar configuration, including his.

The reason why the parts are interchangeable is that most of them are actually designed and built by the Italian company Telwin. That means that much of what I say here will be applicable to other hobby gasless MIGs. For example, the Sealey Supermig 100 has an identical body and front panel to this Draper welder, right down to the overheating light being in the same position; I will put money on the internals being identical.

If your welder has simple white switches with "MIN/MAX" and "1/2", then it's probably internally identical to this one; if it's not identical the same principles will apply. Inverter welders and welders with digital controls will be different. Take your own risks with those; I can only tell you about what I have worked on.

Anyway, this welder being stripped for useful parts and the remains ending in a bin seemed a bit of a waste of a welder, so I acquired it for free for two reasons:

  1. It's free so why wouldn't I
  2. I wanted a welder to set up just for use with stainless steel, for Reasons, and changing over gas and wire every time I want to change materials is effort

And if I blew it up modifying it (and I survived it blowing up) the worst that could happen is the fate that would have befallen it anyway: spare parts that'll fit some other MIG. Which is what it ended up becoming anyway!


What you'll need

  • A pair of Dinse-type connector sockets (£6.50 for the pair)
  • A Dinse-type connector plug (£6.50 for the pair)
  • A replacement earth clamp with a Dinse plug (£14)
  • A Euro torch conversion kit. I got mine from a supplier on eBay who does the torch, connector, and solenoid for £85 (as I write this in July 2025). If you assemble this from the cheapest Amazon parts you can probably assemble your own kit for £60 or so.
  • Heat shrink, heavy-duty ring terminals, and other electrical miscellanea (I already have these, and I suspect you do too; these are probably pennies bought locally)

So that's £112 for my fancy version of the conversion, and you might be thinking that even though I got the welder for free, this is actually about the cost of a cheap Amazon ALLCAPS brand welder brand new. Well, I don't trust a HORNTWIG or ZEEPHNOO or whatever the fuck to not kill me instantly. And anyway this is really a learning experience for me; I'm doing it because it is fun, not because it makes financial sense.

Still, as I go I'll tell you about ways that you can do this cheaper than I did.

On drilling holes

Any time I say "drill a hole" in this post, I actually mean "drill and deburr a hole". You don't want sharp edges on your hole even if you are putting a grommet in it. And the thin metal used for this case likes to leave debris on the outside rear of any holes you have drilled. In some cases, this will stop connectors from seating flat and secure against the casing.

How you deburr them is up to you. The most convenient method for me most of the time is a finger sander, because I have one and it gets into most places. But small files and coarse sandpaper work fine here too, and in some cases that's what I used.

Safety

This is all at your own risk. I'm not making you do any of this, and if you electrocute yourself or blow up your welder that's on you. Remember a typo or a bad wording could completely change the meaning of something I write, and I write half the things I do after long busy days so that's basically a given. Don't take anything I say for granted; investigate it yourself.

Always unplug your machine from the mains before working the internals. Because you'll be working in close proximity to the power switch, turning it off at the switch on the welder is not sufficient.

ALWAYS leave your machine for at least a minute after removing power before opening up the machine; capacitors or whatever can hold a charge for a while.

Reversing the polarity

Let's take a look at the first of the two problems here. This machine is designed for gasless only operation, and gasless welding has the torch and earth clamp polarity reversed from a gasful MIG. The torch is negative, and the clamp is positive. In gasful operation, the torch is positive and the clamp is negative. If you try welding with solid wire a shield gas in this polarity you might deposit molten metal onto a piece of metal in some form, but the welds will be worse than a mess.

The very cheapest option would be to simply dig into the internals of the machine, chop two thick cables, and rejoin them back-to-front. That would work, but it would be ugly. It would also be permanent; you would not have the option of using flux core wire after the modification. I barely use flux core these days, but it is very handy when I run out of gas and I need things done right now.

Instead, let's look at my other free welder, which has the option of switching from gas to flux core operation:

See the two sockets on the bottom? One goes to the torch, and the other goes to the clamp. When I want to move to flux core wire, I can simply swap these around to reverse the polarity. We can copy this setup, because it's as good as any and it is tidy.

And when we copy it, we can copy it incrementally. Just watch!

First, we will take care of the earth clamp (which is positive, remember). This is the easiest one, because you can see exactly where it goes; it's the only one of the two welding cables that comes out of the machine. Here's where it comes out on the Draper:

So cut off your clamp's lead about an inch in front of the machine, pull the cable back into the machine (and out the side). The trick here is that the hole you will find after removing the plastic grommet is exactly the right size and shape for installing a Dinse-type plug! This isn't an accident. The same front panel stampings will be used for the more expensive machines that have a plug here. It's a cost-saving measure among many other cost-saving measures that allow you to pick up a MIG so cheaply.

This means that you can just push the Dinse connector plug through, thread the big nut onto the back, then crimp a heavy-duty ring connector onto the stub of your earth lead (the part remaining that leads into the internals) and bolt that onto the connector. When you're done it'll look something like this:

Note that I used a red connector; reminder that the earth clamp is positive in the flux core configuration. The exposed copper wiring that you can see just before it was not my doing; that is just how this was made. But I later fixed this with electrical tape because it made me nervous.

Cut off about another six inches of the cable and put it to a side; you'll need this later. Then attach a Dinse-type plug to the remainder of your lead.

Cheapskate measure: I bought a new clamp and lead here, because it has the connector already attached and it's less effort. You could save about a tenner if you don't mind shortening your lead a little.

Above we said we're doing this incrementally. We've changed one thing, and we shall find out if that one thing works; it makes fault finding much simpler. So now would be a great time to check that your welder still works. With flux core wire, the welder should work exactly the same as before.

Yep!

Next is making the torch pluggable. First you will need to drill a 19mm (3/4") hole in the front of your case, to the right of the socket.

You don't want this to be less than 40mm centre-to-centre, and ideally you want somewhat more. If they are too close, the easiest path between the two things under some circumstances will be between the exposed parts of the plugs, and you definitely don't want that. In the case of this Draper machine, a centre-to-centre spacing of about 45mm spaces them out a good amount without making it impossible to get the nut and bolt on the back of the plug. But I wrapped the positive terminal in electrical tape to be on the safe side!

After you have made a 19mm hole, you will want to make a little outward notch on the edge of the hole. Dinse-type sockets have a corresponding outward notch to stop them spinning. A small file does this fine. I did mine in the downwards direction because that is easier than filing a notch upwards.

Here's how the hole will look:

You'll now want to install the Dinse socket in this hole.

Now find the cable which goes to your torch. On this Draper machine, it's this one which goes up into the top deck and disappears somewhere into the wire feed mechanism, outlined in green here:

Trace this cable back to the transformer. Then trace it forwards again and cut it to leave you just enough length to install a ring terminal on the front and still reach the rear of the Dinse socket you just installed on the front panel. Crimp or solder a heavy-duty ring connector to the section of the cable from the transformer and bolt it on the rear of the Dinse socket.

Next we need to drill a hole in the case large enough to accommodate this cable, and install a grommet there. You want this to be somewhat below the top deck of the welder (where the wire and wire feed live). You'll see where I installed it in a picture in a moment, and you may as well copy that.

Now take the end of your torch cable (that one we just cut in half) and feed it out the machine through the grommet. You will need to extend this cable to be able to reach the socket you just installed on the front of the machine, with a Dinse plug attached. That's why I suggested cutting off six inches from your old clamp cable earlier. You can re-use this to extend the cable. I would recommend soldering and heat-shrinking this, if you can. Otherwise a crimped-on terminal will work fine. However you do this, be sure to insulate it. I did solder-and-heatshrink, then wrapped this in electrical tape to give it better abrasion resistance.

Here's how that'll look when you are done:

Note that the polarity is still in flux core configuration! The torch is going to negative and the clamp to positive. This is on purpose, because now we are going to test that this works with flux core wire.

Yep!

After testing that, we will switch the polarity. Unplug both the cables, then swap them around - torch to positive, clamp to negative. You will also want to switch your welding wire over at this point to solid wire (the type you use for gas). Your machine should now lay down a weld, though a messy one that will be full of craters because of the lack of shield gas.

Success! You have reversed the polarity of your welder.

Changing the torch

...but you don't have a gas feed to it yet.

The absolute cheapest way of doing this is to purchase a torch that hard-wires into your machine and has a gas feed that goes directly from your bottle into the torch, and has a little valve in the torch body itself that allows gas to flow when you press the trigger. That'll cost you about £25 from your favourite Internet retailer (search for "Clarke MIG torch" or "14AK torch" for better results; the ones you want will be the ones with wires sticking out at the machine end). You're on your own fitting that, because I've never fitted one.

That is not what I will do here. Instead, I am going to fit a "Euro" (Binzel) type torch. That has lots of advantages. One is that the torch can be replaced without opening up the machine and cutting electrical wires. One is that consumables and spare parts for the torches are easier to find and all interchangeable. And the build quality of the torches is invariably much better, too. In fact, even if you are exclusively doing flux-core welding, for whatever reason you might have to do that, a Euro torch by itself is a substantial upgrade.

Your first job is to cut off the torch. You could carefully de-wire it, but you won't need any part of the torch again anyway. Cut it just in front of the machine to ensure that you have plenty of spare wire left over. Push the remainder back into the machine and move to a side.

While we're here, let's take a look at the wires which go into the torch.

Ignore the blue one which looks like a bicycle brake outer cable; that's the one that feeds your welding wire into the weld. You will have three electrical ones. There are two thin wires, which are red in this machine. These are your trigger wires. One of these thin wires (it doesn't matter which) has a small positive DC voltage going to it. When you pull the trigger on your gun, these two wires are connected and that triggers (via your main PCB) your wire feed and your welding current.

These were the other two wires you saw in the photo earlier on (outlined in blue):

The single thick black cable is what carries your welding current. The other end of that is what we routed out of the machine and into a red Dinse socket earlier. We'll call it the "power cable" hereafter. You don't need to know that right now, but this is a good time to establish purposes & terminology.

Right now, you want to open up the hole on the front of your welder (the one the bundle of torch cables used to feed through). It needs to be opened to about 40mm to accomodate the body of a Euro torch socket. It will need to be larger than this in the final setup (read below), but this is to permit aligning the big plastic Euro torch mounting point on the front. I did this with a step drill bit; you can use a die grinder, or a file if you have more patience than I do.

Once you push through the connector and line up the plastic mounting point on the front, you will notice two obvious problems fitting it on this particular welder. The obvious one is that it hangs over the edge:

Which is to say the mount is too large for the body. We could solve that by relocating the wire feed mechanism, but that would be effort. We could also solve that by cutting a chunk out the side panel, but that would be ugly.

The less obvious problem is that a screw hole is being overlapped (the screw has been removed in the pic below). This is actually the bigger of the problems, because it'll prevent the Euro torch socket from sitting flush with the face of the welder, and so it won't naturally take a straight path into the welder.

So, rotate the plastic mount until it is in a position where all three bolt holes are on the face of the machine. When in position, clamp it and drill those holes; you might as well do that now. Mark out the overhanging section, and also roughly mark out the area where it overlaps with a screw. Chop off the overhanging part, then use a file or a finger sander to notch out the screw-overlapping area.

You don't want to leave it like this, because you've removed much of its strength. How you tidy up this cut edge is up to you. I used one of those cheap sketchy-looking plastic welders to stick in a reworked section of the plastic I cut out of the side, and used some random piece of plastic (a disposable spreading spatula from a pack of two-part epoxy) to reinforce the area around the screw. It doesn't look too terrible. I'm really impressed by how well cheap plastic welders work, anyway!

Next, bolt up the plastic socket into place on the body of the welder. Open up the top of the welder, and remove the plastic cover on the wire feed mechanism (this is six screws, two of which are self-tapping and four of which have a tiny nut on the underside). Slide the (usually) brass body of the Euro socket into the plastic socket.

Now rotate the brass body until the guide tube (I hope your kit comes with a guide tube) is perfectly lined up with the recess in the plastic of the wire feed mechanism's plastic body. Once that looks right, you will likely have a grub screw or two to tighten up on the plastic socket.

Here's a picture:

↓ A points to the guide tube. This guides your welding wire (the consumable that gets fed into the welding arc) into the torch. If your Euro socket doesn't come with this you need to get one, but any good kit (like the Yorweld Supplies one) comes with one. The plastic area on which it sits will probably (depending on the diameter of your guide tube) need to be filed wider to accomodate it. There's already a groove there; just attack it with a small circular file until you can easily put the top cover back onto the wire feed mechanism.

Your guide tube will probably need to be cut to length. It should be just long enough that when you attach your torch it clears the roller by about 4mm; this will keep things tight but not hinder removing the roller.

Once your guide tube is shortened, attach your torch to the Euro socket and tighten it fully. Just trust me that this will make your life easier.

↓B points to the threaded tube that will have two or three nuts on it. This will need to be cut to length, but not just yet. What you want to do next is to grab your welding current cable (the thick one going to the torch, which now exits out the machine and goes immediately to the positive plug on the front), and shorten it such that it can reach point B without being either over-stressed or with excessive spare cable. Then add yourself a little bit of spare wire to be on the safe side. Then attach a ring connector onto the welding current cable, one large enough to slide over the threaded part at B.

What you don't want to do here, by the way, is pull the cable out of the machine entirely, and then put a ring terminal on it. If you do that, you won't be able to get the cable back into the machine to attach it to the Euro torch, and only the dumbest kid in the class would do something like that.

ANYWAY, once you've got your terminal on, you'll want to slide it over the threaded rod at B. In situ, this is indicated with ↑C. You'll need to adjust the two or three nuts until it all sits right; you want the welding current cable to sit right in the middle of the hole into the bottom of the machine. Just fiddle with stuff until it feels right. Once it's in place, use a marker pen of some kind (I prefer a thin black paint pen) to mark a point on the threaded tube leaving about five "spare" threads, take it out, cut it to length, and refit it all.

If none of this makes sense, just look at this unannotated version of the photo at full resolution. It probably makes more sense than me explaining it.

Next put the cover back onto the wire feed mechanism to make sure that everything fits (you might find yourself doing some adjustments to the plastic cover with a file), then take it all apart again! That includes removing the plastic socket holder from the front. Cut the threaded rod to the length you marked.

To avoid arcing, you must now bore out the main hole on the front of the machine for the Euro socket to about 45mm or more. We left it at the old size because that made fitting things up easier, and we can now commit to it. I would normally use a step drill for holes this large, but I found that the thin metal that the front case is made of likes to grip the drill. Because this welder is so light I found that when the bit got stuck it would throw the machine up in the air. Fun! But not conducive to getting the actual job done. I found that the easiest way of doing this was to drill a 6mm hole into a piece of random scrap steel, clamp it such that the 6mm was dead centre in the Euro socket hole, and use that to guide some larger-than-45mm hole saw into enlarging the hole.

Now you can install the Euro torch socket again. Assembly is the opposite of disassembly which was the opposite of assembly. With that in place, you will be able to join the two trigger wires from the machine to the two trigger wires from the Euro socket. I prefer using uninsulated connectors and adhesive-lined heat shrink for this, but you can use insulated inline joiners if you like. It doesn't matter which of the two wires from your Euro socket attaches to which of the two wires from your machine. You'll probably want to shorten these wires, because they'll certainly be excessively long and you don't want that.

And finally (for this part of the modification) you can attach your welding current cable and reassemble your wire feed mechanism. Attach your torch, feed wire into the torch, and test the welder again to ensure that your welder still works with a Euro torch.

If you lay down a crude, gas-free weld exactly as you did before you changed the torch you are ready to proceed. Success!

Adding the solenoid

...except you still don't have a gas feed to the torch.

If you noped out on all the Euro torch stuff above and just decided to fit a 14AK torch, you don't need to worry about this. Those cheap torches have gas flow control built into the switch; when you press the switch, you are also pressing the trigger for a little valve that lets gas flow directly into it. All that's needed is to hook up the gas feed from your regulator into the torch.

Euro torches don't have any gas flow control built in. Instead, they assume that the welding machine will take care of supplying gas to the torch. That is done with a little welding solenoid that looks like this:

So first, remove both side panels from your machine. Then let's get the solenoid mounted in the machine. The picture above gives away what I think is the best location for it to be mounted. This means drilling two 4mm holes into the bottom of your machine and screwing it in with two tiny M4 bolts. Easy. Just don't forget that the solenoid only works in one direction; an arrow on the body indicates which direction the gas should be flowing.

At this point you may as well attach your gas hose from the outlet of the solenoid to your Euro torch socket. How you route this is up to you; you'll need to drill a hole in the top deck of the machine, add a grommet, and feed the hose through that. On this section of the gas feed, cable ties work fine for attaching the hose to the barbed fitting. That's because the gas will always choose the easiest route to escape, and that route will always be through your welding torch. You'll never have enough pressure here to blow the hose off the fittings, because it'll find its way out of the tip of your torch instead.

Next you will want to attach a small ring connector to the yellow and green wire and attach that to an earthing point in your machine. You can find one of these by seeing where the other yellow-and-green wires inside the machine go to. Also easy. There's actually more than one of these points to choose from; I recommend that you do not use one of the earthing points on the removable side panels on your machine.

Next you will want to bring the other two wires over to the other side of your machine, cut them a little longer than you need them to reach the main PCB, and attach a 6.3mm piggyback spade connector to your blue (neutral) wire and another to your brown (live) wire.

Let's take a look at the main PCB.

But before I say anything else: IF YOU ARE DOING THIS CONVERSION ON ANYTHING OTHER THAN THIS EXACT MACHINE THE TERMINALS ARE GOING TO BE DIFFERENT. Pardon the all-caps and bold. You probably won't die if you get this wrong, but don't take the risk of having a bad day. Don't assume that a board that looks something like my one will be wired the same. Test it yourself with a multimeter; you should read a minimal AC voltage (never zero because of circuit leakage) between the two points when you're not pressing the trigger, and somewhere around 250 volts when you are.

First, pull off the spade connector marked both in my picture and on the board as Ja. This should be tight; you might need a small flat-blade screwdriver to assist you. Attach this to the piggyback connector you crimped on to the brown wire from the solenoid. Make sure it is still nice and tight; if it feels loose, remove it, squish the spade connector a little with some pliers, and re-attach it. Now attach your piggyback connector to Ja on the board.

Repeat this procedure for the blue wire and Jb on the board; pull off the plug, attach to the piggyback connector, put piggyback connector to Jb, also checking for tightness.

If your board is not the same as mine, and you aren't feeling confident, buy a kit from a company that will support you with installing it. The ones from Yorweld Supplies in the UK will come with a piece of paper with an email address and a phone number; send him photos of the board and he'll tell you how to connect it. (I know he actually answers these emails, too.)

Anyway, on this particular machine, you should now have a working gas solenoid. You can do your initial validation of this by turning the machine on, pulling the trigger on your torch and listen for the solenoid clicking.

That isn't the same as it being wired up properly. Ask me how I know! But it's a good sign that things aren't completely wrong.

How do you know?

...you then asked so conveniently for my narrative. Well, the first time I did this I went in with some flawed logic and attached the neutral to Jc on the board. I heard the solenoid click when I pressed the trigger and figured "well that works". What I had actually set up, though, was a situation where the solenoid was open normally (feeding gas into the torch) and closed (not feeding gas into the torch) when I pulled the trigger. That's when I had to reach out to Yorweld Supplies, who told me to put neutral to Jc. This surprised me, because I assumed that point on the board was only for control of the overheating warning light.

Anyway, on top of the "does it click" test, you might want to do "does it not click when I turn off power to the machine". It should not click when you turn off the power, because that suggests that its default state is electrically-controlled, i.e. it's default-open.

Finally, you want to connect your gas bottle to the inlet of the solenoid. To keep this neat, I decided to feed this out of the back through a bulkhead fitting.

That only added a couple of quid to the costs; you can let the gas hose out the back via a hole and a grommet if you like.

Finally, turn the gas on, and test if the welder works as you would expect it to.


And well, that's where my one failed; after some debugging it seems I had a bad welder all along. Oh well! So this machine has been stripped for spares, and the Euro torch conversion is going to go on a cheap used machine I got on eBay.

Still, I'm glad I had the chance to play with the internals of a welder. They're much less of a black box to me now than they were when I started. And hopefully I've thrown something out there which will help someone else be a bit more bold with theirs.

See you next time.

The desk chair post, part 3

This is the driver's seat from a 1985 Toyota Supra.

I acquired two of them in almost perfect condition apart from a layer of storage dust. They came out of my mum's Supra when it was stripped for parts in the late 1990s. The seats were saved for a project, but that project ended up using different seats. Then they did not go into my mum's SJ410 (they're too big and it got Smart Roadster seats instead), and in the meantime they were kept in warm dry storage.

These seats are as comfortable as it is possible to be, because they are seats from a 1980s sports car. They're also fully adjustable. You get the standard adjustments like back tilt, headrest height/tilt (with a very satisfying clicky mechanism on the latter), and knee height. But you also get side bolster tightness adjustment; you can make it grip your sides more or less depending on your size and comfort. And then there is the absolute party trick, which is this squeezy inflator bulb.

This inflates the back rest, and then via these three buttons...

...you can let air out of three separate pads in the back rest, individually, for perfect comfort. It's overkill and I love it.


Separately, the gas lifting ram blew out in my desk chair at the day-job office. It's one of those nice Herman Miller chairs. The day-job was happy to fix or replace it for me. But this post starts with a Toyota Supra front seat so I think you can figure out where this is going.

This is the start of a subframe to adapt a Toyota Supra front seat to a desk chair swivel base. It's made of some 50x50x2mm steel angle with some dimples for weight saving, separated by some 20x20mmx3mm steel box section. It's much less heavy-duty than the previous one I made; that was all 50x25mm box section which was strong enough to lift a car with. This subframe should weigh a good deal less and be more than strong enough.

This time around I decided to make this completely reversible, preserving the original seat rails. Partly because the seat rails are riveted and inseparable from the seat, and partly because these seats are rare - only 31 of this Supra generation remain registered in the UK, compared with, e.g., 6,130 Jaguar E-types. I don't really plan on unbolting it and selling it any time soon, but I'd like to keep that option open.

Here's the subframe with some more shit welded onto it. On each of the corners are mounting points made of random bits of steel from my box of offcuts. They're all at weird angles and of different shapes, because they have to be. They match the shapes and angles of the mounting points of the Supra seat rails. On the front are some captive bolts, and on the rear mounting points are captive nuts. This makes assembly easier.

In the middle is the base plate for a swivel chair. I didn't make it; it's an off-the-shelf generic spare part. This plops on to a standard swivel chair base. You don't have to look too hard to see that this is off-centre. Remember I have designed this subframe around the seat rails; the rails on the Supra seats are slightly offset to one side. I want the seat itself to be centred, because the centre of the seat is where the weight will be.

Here is the subframe after fully committing to the base plate position, cleaning up with a wire brush, rounding off all the corners and cleaning up all the welds. There are also two little additions. One of them is this little retaining bracket to stop the gas ram actuation lever from dropping too far. Without this, it'll drop down to nearly a 90 degree angle at rest, and that would be annoying.

I could have solved that problem with a piece of string, but you know, I didn't.

The other addition was extending the aforementioned lever. Because of the width of the subframe and Supra seat as compared to a normal desk chair, the lever wasn't long enough to use comfortably. A long M8 bolt was unfortunate enough to be in my line of sight. I bent that through 90 degrees near one of the ends, chopped the original lever off and welded the bolt on to it.

This adapter subframe still looks like a bunch of random bits of metal stuck together. With a coat of Jenolite stain black it looks like a bunch of random bits welded together, but with some black paint on it.

I work for a massive company which you have almost certainly heard of. Being a massive company, for all I know it has someone whose sole job is looking for unfinished edges on things and writing reports about it. I can't fault that, and if that person exists I'd like to make their job easier. That is why I ensured there were no unfinished edges where I could reasonably touch them, either while using the chair or while transporting it.

I used this stuff designed to protect the edges of car doors, and which I would absolutely never use on a car because I can't see how it would go on without destroying the paint (rather defeating its purpose). It goes around tight corners really well, and grips nicely especially when squished a little with pliers. It does the job here and isn't going to fall off.

The threaded extension for the gas ram actuation lever allowed me to make a little threaded replacement knob.

That is just a random piece of steel tube from the offcuts box, with an M8 nut crammed into it and welded. That would make a decent knob by itself. But that tube happened to be exactly the right size for me to bond on...

...a transfer box gear lever knob from a 1979 Range Rover because of course I did.

:)

As said, the seat was in near-perfect condition, but it needed a clean. A vacuum cleaner was not enough.

I cleaned it with solvents (narrowly-targeted), two rounds of upholstery cleaner and then alcohol wipes to make it presentable enough for indoor use in a nice office.

Anyway that's how I ended up with the best desk chair in the office, or maybe the best desk chair in any office ever.

See you soon. :)

I made a cart for my free MIG welder

I built a welding cart. It was fun and it kept me out of trouble. It probably should have been my first project when I got the welder, and it wasn't. Maybe it could be yours though!

I built a welding cart because of this:

I know, the size and the branding looks like something from that special section of the booze shelves, targeted at a certain kind of drinker, whose promise is to get you smashed quicker and somewhat cheaper than the posher stuff. What it actually is, though, is a disposable Argon/CO2 gas canister for a MIG welder.

When I converted my free MIG welder to use a gas solenoid I bought a couple of these to prove the concept. I was told and I read, from people who have attempted to use them, that these disposable canisters are bollocks and a waste of money. But I thought I'd try my luck for a bit with these bottles, because telling me things does little good; I have to learn every lesson I learn the hard and stupid way. Once in about 50 times I end up with something that challenges the conventional wisdom; the rest of them I find that conventional wisdom is formed because of other people learning things the hard way so I don't have to.

Anyway, I found out that they are in fact bollocks and a waste of money. I ran the first of mine out very quickly in the middle of one of the P5's subprojects. That quickly soured me on the idea of continuing to buy these bottles, which of course escalated to a Side Quest.

This is a bottle of mostly the same Argon/CO2 gas. It is also a lot bigger, which is why I am not holding it in my hand; it has about 20 times the capacity of the disposable bottles (despite the disposable's extremely creative "110 litre" claim). This comes from Hobbyweld. When it runs out you get it filled it up again, rather than throwing it away. You never own the bottle (as with all bottles); Hobbyweld is responsible for maintenance and replacement.

Diversion: How much cheaper is it?

These bottles, as said, have the capacity of about 20 of the disposable ones. I'm using the "Original" (small) size. As I write this, disposable bottles are £15.80 from Weldequip; I'll use that cost. Each refill of the Hobbygas bottle costs about £75, but you would have spent £316 on the disposable bottles.

You have a one-time deposit to pay on the bottle, which is also £75, which eats into the savings you might make on your first Hobbygas bottle. That means:

  • After you have exhausted your first reusable bottle, you have already saved £166.
  • Every time after that, each Hobbygas bottle you use will save you £241.

This is hardly nickel-and-diming! It's a massive saving!

Alternatively put, even factoring in the deposit, your initial bottle will cost less than a third of the cost of the equivalent number of disposables. With that cost paid off, your next bottle will cost you a quarter as much. It's kind of a no-brainer if you don't mind the initial deposit.

None of this factors in transportation costs, because that's quite variable from person to person. Either you will buy the disposable bottles online, in which case there might be shipping costs, or you will have to go out and buy them, which costs money each time. The latter is fine if you're within walking distance of somewhere that sells them or if you're already there buying stuff, but it adds up if you're making a special trip. Refilling a Hobbygas bottle means taking one trip; in the case of me and the £600 Fiesta that'll cost about £3 and one lunch break.

I don't like that the small bottles run out so quickly. I do like that they are extremely portable; you can just cable tie them to the back of your machine or duct tape them to the top and you'll be fine. I did not want my welder to become a static rig. And that means I needed a cart that could hold the bottle and the machine.

Welcome to the point! You can trust me that I'll get there, eventually, sometimes.

Let's start with some wheels, because like any good hot rod build, it's all about having the right wheels.

I paid nothing for four of these. My old man scavenged them from somewhere or other (I know not to ask too many questions), and he gave them to me for the project. They'll do the job; I don't care much how they look. Most likely they ended up in a pile of things my old man scavenged stuff from because one of the brakes on the two braked wheels does not work anymore. That's fine, because I don't work on any surfaces smooth enough for lack of braking power to be an issue.

Two of these wheels - the ones at the gas cylinder end of the cart - needed to be welded such that they didn't pivot. That makes maneuvering a little more awkward, but I'll deal with it.

And that's something I will miss about flux core welding, which I used for almost the entirety of this project, because I ran out of gas. I didn't even bother to try and clean the grease out of the pivot; I just blasted it with flux core wire at full power on the welder and things stuck together (also set on fire briefly). Flux core is rather less fussy about cleanliness of surfaces.

Next is the initial version of the chassis.

It is made of four pieces of one-inch angle iron, because I usually have a few metres of that kicking around. There is also some 20mm angle iron underneath towards the front, to give a little more rigidity. That was an offcut from something else I made.

The welder will sit on top of the horizontal flanges of the angle iron. The horizontal flange at the rear, where the gas bottle will be, will be cut off. The inside width (from the vertical parts) is just a tiny bit more than the width of the welder; I wanted this to be a snug fit. The length is the length of the welder, plus the diameter of the bottle, minus one inside flange width of the angle iron.

The wheels attach by four little pieces of 2 inch angle iron, about 2 inches in length, with an M12 hole drilled through it.

Those get welded on to each of the corners, on the outside. That's to give it all a little extra stability.

Aaaand the rest of this is going to be a bit like

because I took a day off work with the goal of completing it. With about eight and a half hours to complete the whole thing I was not even stopping for food, let alone taking pictures often. But that's fine; it's not a tutorial, it's just some stuff I did that I thought was cool.

I decided that the gas bottle needs to sit slightly below the chassis. That is partly to lower the centre of gravity a little, making it more stable on the quite-tall wheels; I'll tell you the other reason later. So next was building a cradle for the gas bottle.

That was made out of some 2 inch by 1 inch box section with some 3mm plate on the bottom. The box section was out of some offcuts that I bought by the kilo from eBay for welding practice. The 3mm plate is something that I always like to have in the workshop, because it is useful for a lot of things. And now you can see why I welded the castors on this end shut; because the bottle is sitting below the chassis line, they would not have been able to pivot through 360 degrees anyway, and having wheels that can pivot some of the time would have been more annoying than the small impact on maneuverability.

Next up is a handle-like thing on the rear near the gas bottle. I'll call it the "pram handle".

This is only partly to give me something to push it around by. The bottom half is made from some more 2 inch by 1 inch box section, reinforced with another offcut of angle iron across the top. This is where the bottle will be strapped to. The cradle was tight enough on the bottle that it was rather stable by itself, but I like being on the safe side. In the end, I used a ratchet strap on the bottom (a dubious-quality one that I got for free; my gearbox was strapped to its shipping pallet with it).

The rest doesn't need to be very strong, so I used some 1mm-thick galvanised angle iron that I got for free off my brother, who saved it from a skip. The bits sticking out of the side are made from the same free angle iron. They are for wrapping cables around when the welder is stowed. It's neater than wrapping everything around the bottle.

A dry run shows that everything worked out more or less as I thought it would. You'll notice that there's a capping on the top of the pram handle now.

The most important part of this was to find out whether it would fit under the workbench in the workshop.

Of course it does, and now you know the other reason I made the cradle to drop the gas bottle slightly below the chassis.

:)

And that was the fabricobbling1 part done; I completed it on my day off, and then I needed a kebab unlike I have ever needed a kebab.

The rest moved into evenings after work. I fitted the regulator, which just screws in; no surprises here.

Because I needed to make the pipework into the welder longer, this gave me the opportunity to upgrade it. The old pipe worked fine, but it had an overall diameter of about 9mm. It is hard to get hose clamps that work with tubing this small; my brother fixed my initial leaks with the "piece of copper wire" expedient:

I tried a couple of clips that nominally would work down to 9mm, and they just didn't work. Thicker-walled tubing meant a larger outside diameter, which meant that I could use proper Jubilee clips. The thicker walls also mean it should be harder to crush, which might be significant given that much more of it is exposed than before. The extra thickness made it rather tight on the cooling fan...

...but that's another way of spelling "it still misses".

A lot of tidying up of welds and a couple of coats of Jenolite satin black paint made it look less like a bunch of random bits of steel stuck together, which it is, and more like a proper welding cart, which it also is.

Finally, with everything in place, the gas feed hose neatly routed (enough), and the cables all stowed, I have a welding cart that I'm pretty proud of. If hobby welders had dreams, this little Clarke that I got for free is living them.

And so, about a week later, that's the end of the side quest. That means I can get to the job I actually wanted to do when my MIG welder's gas ran out.

See you next time. :)

How much did it all cost?

I don't actually know! And it's not easy to work it out, either.

I can't price the gas bottle and its regulator into it. I built the cart because I wanted to use a big reusable gas bottle, not the other way around.

The angle iron and 3mm steel plate is stuff I had already. It wasn't exactly free, but I didn't really go to any expenses here either. When I visit my local metal stockist I usually pick up far more than I need for whatever project I am working on, because angle iron and steel plate always comes in handy.

The box section I used had a similar story. I bought 25 kilos of random offcuts for welding practice, and it costed me £32 shipped. I've used them for all sorts of things over the last year or so; I still have lots of it left after completing this.

My castors were free. I think if you couldn't find a place to scavenge some, you could get something similar new for about £20. All of the bits made from thin galvanised angle section were free too; my brother knows to save this sort of thing if he gets the opportunity.

So like, you can read that as "basically free, but only if you are me in very specific ways", and that isn't an entirely uncharitable reading. But the fun of this sort of project is that there's not really a wrong way to make it! If I only had bits of box section and steel plate, I'd have found a way to make it with box section and steel plate. If I didn't have free thin galvanised angle iron, but did have some tube, I'd have made those parts with tube. If I didn't have really big thick bits of angle iron to bolt the wheels to, I would have made those with steel plate and gussets. Scavenge whatever you can and make it fully yours!


  1. A phrase I have stolen from Sarah -n- Tuned↩︎

I modified my welder, didn't die

This is my MIG welder.

I wrote about it briefly when talking about the time I lost the plot.

It's a Clarke 151 EN, which was a cheap welder when it was new (about £200 in 2013). It is even cheaper for me, because I got it for free from my brother last year. He bought it and never used it much, and decided it needed a better home, so he gave it to me. As for you, you could probably pick up a similar machine for less than a hundred quid these days if you look around. If you find one it'll probably be in perfect condition, because people who use welders to the death tend to buy expensive professional machines, and people who buy hobby welders like this tend to use them very occasionally.

If you hadn't noticed from the photo above (and also if you had), I modified mine to use a Euro torch. I did this out of frustration with the availability and quality of consumables for the Clarke torch. Euro torches all use the same generic consumables, so they are easy to find, and it is easy to find high-quality ones by buying a known brand rather than CSQQXV or whatever on Amazon.

What I didn't do was fit a gas solenoid. Flux core (gasless) welding was fine for what I was doing, and it didn't take me long to get the hang of it, so I pulled out the remains of the gas feed and called it finished, and used it for about nine months with no problems.

And it still hasn't given me any problems! But one of the characteristics of flux core wire is that it loves heat. You need to run about twice the power for any given thickness of material as you would when welding with gas-shielded solid-core wire (which I like to call gasful welding, because that is fewer words and I find it funny). That was fine for what I was doing.

But the next subproject of my Rover P5 will require welding things onto a very fancy axle housing.

Spoiler alert!!

A millimetre or two of heat distortion on the axle housing would ruin the housing, probably permanently, and I (literally) can't afford that to happen. Thus I need to do the same thing with less heat, and so I needed to convert this welder back to gasful operation.


And even more context here, because like cats, you can never have too many contexts.

In most cheap MIG welders, shield gas flow to the nozzle is controlled by a valve in the torch, which looks like this:

The gas ordinarily fills the pipework all the way from the bottle up to this valve. When you press the trigger, the trigger directly (mechanically) opens a valve which lets the gas through. Simple.

On a Euro torch, there is no such mechanism. Instead, welding machines with Euro torches will have a solenoid in the welding machine itself controlled electrically; when you press the trigger, the solenoid is turned on and gas flows into the torch. So to have a Euro torch, you need to install a solenoid somewhere. Which is what I did!


I rather wish I had written a post like this about fitting the Euro torch itself back in June of 2024. I didn't, because I was in a rush, because I needed a working welder on a short timeline. Instead, I watched a YouTube video.

That went into lots of detail about the fitting of the torch itself, and if you are doing the conversion yourself you should watch it. But it was, to my mind, rather light on the details of installing and wiring the solenoid. That might scare some people off, because that means going into the "spicy" side of the welder with the voltages that can kill you instantly. It scared me until I actually did it.

That's why I'm documenting it here: to show you exactly what to do, to demonstrate that it is not scary, and also because I like the sound of my own text.

Here's the things you'll need:

  • A gas solenoid
  • Some angle iron or other random bits steel you have kicking around for making a tiny bracket, and (probably) two M4 screws
  • Three 6.3mm female spade connectors
  • Two 6.3mm piggyback spade connectors
  • One M4 ring connector
  • Cable ties
  • Wire, in brown, blue, and yellow/green colours
  • 6mm (ID) flexible plastic tubing
  • At least two and ideally four hose clips of the same outside diameter as your plastic tubing
  • A grommet
  • (Probably) A 3/8 BSP male to 6mm hose tail fitting

I'll tell you more details about the "why" of these things as we go.


First, you'll want a gas solenoid, obviously. I bought mine from Weldequip. I could have got one cheaper by getting something from an Amazon or eBay non-brand, but I would rather buy electrical things of non-trivial complexity that could kill you if they go wrong from a company with a reputation to maintain. I use their picture of their solenoid below, because I didn't think to take one of mine.

For the Clarke 151, you will want an AC 220/230V 50/60hz solenoid. This is probably the case for other hobby welders, but you'd best check this yourself.

And on the subject of voltages, we're entering the spicy side of the welder here, so please observe the following safety precautions:

  1. Don't get killed
  2. Yep

Of course you know to open the welder with the mains power turned OFF at the plug to the welder, not just turned off on the orange switch on the front of the welder. Before touching anything inside the welder, I prefer to turn off the welder at the plug, then unplug the welder entirely. You might think that one of these steps is redundant; electrically speaking, you would of course be correct. But for me, unplugging the machine is an active step that is difficult to forget; this also means I have to forget two things for there to be any voltage at the machine, rather than one.

Anyway, unless your solenoid comes with a bracket, you'll need to make one.

I made mine with a little offcut of thin angle iron with a captive M6 bolt welded onto it. The bracket is attached to the solenoid with two M4 screws (using holes that existed in the solenoid for this purpose). There is already a hole in the divider for attaching something in roughly the right place for a solenoid, but it's too small for an M6, so I bored it out with a 6mm drill bit.

Whatever you do for this bracket, remember to obey the direction of gas flow! This is indicated with an arrow on the body of the solenoid. Gas solenoids only control gas flow in one direction, and they won't work if you reverse the flow. The arrow should of course point towards the front of your machine, because that is where the gas will be travelling.

Wire up the earth

Our first electrical connection will be the earth (also known as ground). Of the three prongs on your solenoid, you can tell the earth terminal in one of two ways. First, the earth prong will be marked with the earth symbol, which is this:

If no prong has this marking, your solenoid is dangerous shit that needs to be thrown in the bin; get one from Weldequip instead. But also, of the three prongs, one of them will be oriented in a different direction, and that is usually the one that will be earth. You can see that in the photo of the solenoid above; the power prongs are angled horizontally, and the earth is vertical.

You will want a yellow-green wire for this. It will need a 6.3mm spade terminal on one end and an M4 ring terminal on the other. Attach the spade terminal to your solenoid, then run the wire along the body of the welder (not the shortest possible route) down to your earth point on the bottom plate of the welder, and once you know the wire's length, cut it and crimp on the M4 ring terminal, and bolt it to the earth point. The earth point looks like this:

I like using the correct-coloured wires, and you should too. Of course, electrically it makes no difference. And of course you, right now, are smart enough to look at the thing you just wired up and know what does what. But you in future might look at the wrong-coloured wires and misread it. The person you sell or give your welder to in the future might do the same. Use the correct colours to be nice to future-you and others. :)

When attaching wires (and other things) to the body of the welder, I used these self-adhesive cable tie mounts, because I had a bunch of them left over from wiring the workshop. They're like £2 a pack from B&Q.

Wire up the power

The next two wires will piggyback off jumpers J1 and J2 on the main board on the front of the welder. I've indicated them below.

Obviously each one already has a connector going to it. So what you will need is a piggyback connector.

This is a connector which slides over a male spade terminal, and provides another male spade terminal on the other end. That'll allow you to connect two spade connectors to a single male spade terminal. Disconnect the existing connector from the J1 terminal from the board. Crimp a piggyback connector onto a wire of the correct colour (blue), push the terminal onto the connector on the board, and then push the original connector on to the piggyback terminal. Repeat this but with J2 and brown wire.

These will go back to the remaining two terminals on your solenoid. It should not matter which wire goes to which of the remaining terminals; solenoids should work the same regardless of polarity. It's up to you how you route them but it's best to follow the path of existing wiring as much as you can.

Test the solenoid

At this point your solenoid is electrically connected. It would probably be wise to test it at this point. Plug in your machine and turn it on, pull the trigger of your torch. You should be able to hear the solenoid clicking when you pull it, and clicking again when you release it.

Watch the front board around the area of your piggyback connectors; if you see sparks then unplug your machine, re-seat the connectors, and try again.

Turn off and unplug your machine after testing.

Hook up the gas feed

Now for the relatively safe bit.

I mentioned flexible plastic tubing with a 6mm internal diameter. I used PVC tubing for mine. Silicone tubing is rather more heat-resistant than PVC, but PVC is somewhat stiffer for any given wall thickness, so it better resists folding when going around tight bends. I chose PVC because of this; I don't think heat will be a problem.

This should be 6mm ID, because that is the standard diameter for the gas port on a Euro torch socket. It is also likely the same as the inlet and outlet of your solenoid. If you are using disposable gas bottles (as I am to prove the concept; I'll move on to the big refillable bottles later) then you likely have some tiny push-in fitting on your regulator. Depending on the quality of your regulator, you might be able to unscrew the outlet port of the regulator and screw in one of these...

...which is a 1/8 BSP to 6mm hose tail. If your regulator has no provision for that, you'll have to get some step-up adapter in the middle of your hose.

From your solenoid, you'll want to run your hose out the back of the welding machine so that it can meet your gas bottle. I drilled a hole just to the left of the one that exists (which could not be bored out larger because it's right next to the middle dividing plate). I put a grommet in it when routing the hose, so it doesn't cut the hose. I didn't think deburring the hole would be sufficient guarantee against that.

The downside of locating it here is that this is where the gas bottle wants to sit, so the bottle has to be strapped on at a weird angle. I didn't hear the bottle complaining about this, and anyway it's under my workbench so I never see it.

Exiting here is really tight on the cooling fan...

...but "it's tight" is another way to spell "it misses"; the only way this could foul is if some of the external part of the hose was pushed back into the machine, and the grommet should stop that from happening.

In future, when I move to the bigger refillable bottles, I might route the air hose into the cold side of the welder and out of the body of the welder as far over to the edge of the machine as I can. We'll see.

You'll see that I used cable ties for attaching the gas hose to the solenoid, which is what I used anywhere else the hose needed attaching to something else. This turned out to be inadequate for the section from the gas bottle to the solenoid. It leaked. After a failed trip to my local motor factor to obtain some proper clips for this, my brother came up with the idea of stripping some of the single-core wire I used for the wiring and twisting it around the hose. It's an expedient field repair (bodge) he learned on his intercontinental road trips.

It's crude, but it works! I only needed to do this for the section from the bottle to the solenoid. It's not necessary for the rest. That's because any time there is gas in the rest of the pipework, it will be flowing to your torch, and that is the path of least resistance vs leaking. And that's why I said in the list of ingredients that you'll "at least two" proper cable clips, because you only actually need two.

I'll soon replace all of this with proper 8mm hose clips for consistency, but this works fine for now.

Anyway, the final task is to run the hose from the output of the solenoid into the gas port of your Euro torch socket. You can do this how you like. You could make a hole in the spicy-side divider immediately after the solenoid and make most of its route on the cold side. I choose to route as much as I could along the top of the spicy side of the welder, and exit through the bottom of the wire feed box. I hope you can see what I mean by looking at the top of this photo of the spicy side....

...and then at this one near the gas port on the Euro socket.

That's it!

Anyway

So like, I had no clue what I was doing with any of this and somehow made it work. The reason I did this, as said, is because I need to weld stuff to a fancy new axle housing. When I bought my axle housing, I also bought a short section of exactly the same tubing.

I got this section for practice to work out the correct settings on my welder before doing the real thing, and that's why I spent much of a Saturday turning it into the Frankentube of Wat.

By the end of it, I was pretty sure I know what to do, and it didn't take me long to get almost-neat-looking welds with the gasful setup.

And that, of course, is the next chapter of the P5 saga entirely given away, which means you won't need to read that post! Two articles for the price of one! See you next time.

Another tiny weekend project

I like my workshop's speaker.

It is a Bose SoundLink Mini II. It's small and it makes plenty enough noise to fill the three-by-six metre metal shed. It also isn't smartshit which requires an Internet connection for imaginary reasons; it plays the music I want it to play, and that's all.

What it also was, though, was sitting on top of the toolbox. The toolbox has a hinged lid, so if I wanted to open it I would have to move the speaker first. That takes a whole five seconds, and that will not do. Instead, I decided I needed to attach it somewhere out of the way. And that is how I got sidetracked from making parts for the Rover P5, which is what I was actually meant to be doing that day!

First I chopped up some C-section galvanised steel that I got off my brother for free, folded over and welded the ends to close them (this makes it more rigid and also less pointy after filing down the joins). And then a magnetic welding torch holder made the mistake of getting into my line of sight.

That got sacrificed because I already have one of these in use. As I recall I have two because they came in a pack of two, not because I need two of them. And better than a speaker shelf is a speaker shelf that I could attach anywhere in the shed!

I welded those two things together with the free MIG welder, and tested it on the wall to see if there was any vibration from the assembly.

There wasn't, partly because the Bose speaker has a little rubber pad on the bottom which does a good job of dampening the frequencies that would allow that to happen, and partly because everything was tightly welded together.

With the concept validated, I welded on some little upstands at the front and the sides, made of whatever random little off-cuts I had, so that the speaker could not easily be knocked off the shelf.

Though this is indoors, I wanted to paint it so that it looked nice. I used a Jenolite colour called "Ultramarine Blue Gloss". Being a Jenolite Directorust paint, it's not particularly fussy about a perfect surface. I first used it on an old water tank I converted into an outdoor workbench/cupboard...

...but that's another story. In this story is the fact it's a nice colour that looks good on things in a workshop. With that painted rather imperfectly (but good enough), and my speaker given a rather overdue clean...

...I have a tiny, neat-looking shelf that I can attach anywhere in the workshop. And that's how I spent several hours to save the five seconds or so it took to move my speaker from the top of the toolbox! But it was fun; the best thing about having a workshop is using it to make more things to have in your workshop. :)

I migrated this site to Hugo

On and off over the last few weeks I have been migrating this site from a Django app written by me to a static site generator called Hugo. If you don't recognise at least one of the technical words in the previous sentence, then you won't find anything interesting to read here. But if you find anything that is broken on here, it's probably something I broke during the migration, and you might want to let me know.

Migration wasn't hard

I had to move all my old content into the new site while not breaking any links. I used Markdown for all the content in the old Django app (in case I wanted to do something like this some day), so there was not much conversion required there. I had my own special snowflake markup for handling images and YouTube videos, which required a little work to convert.

The core of the migration was 161 lines of Python code (and then another 20 lines of throwaway Python to fix my breaking all the OpenGraph images). If I had entire days to spend on it and an unlimited attention span I might have finished the exporter in a day. I didn't have that, because I have a day job and a stupid car project and a mind that says well I'm going to have to Google this thought unrelated to any particular thing I am doing, but it was much more work thinking about than doing.

The slightly harder part was learning what I needed to learn about Hugo and doing a basic theme for it, but all of that might have been only a couple of long days - if, again, I had been focused on it.

After the migration, I rather wish I had used Hugo from the start. This site was a Django app, because Django is my day job and it is what I know; I figured I would more time fiddling with Hugo (or some other static site generator) than I would writing my own Django app. But I definitely spent far more time writing tests for my Django app than I did migrating this to Hugo!

Authoring is nicer

I like writing things in my favourite text editor. It seems a more obvious way to write, because that is what I do with most of the rest of my time at a computer. Actually, that was partly the way I was writing already; I was writing posts in a text editor, then copy-pasting into the Django admin interface when I was finished. And if I needed to do non-trivial edits I was copy-pasting it into my text editor, editing it, and then pasting it back.

This is not because Django's admin interface is bad. Although it wins no beauty contests, it's rather better than most web-based interfaces, because text boxes in the Django admin behave as text boxes have in your operating system for about 30 years, rather than the fallout of React meeting some UX designer's reinvention of "type text into a computer". But to those people for whom "favourite text editor" is a valid sequence of words, writing text into a web browser is not as natural as working on files in one's favourite text editor.

As with all static site generators, Hugo's master copy is just a bunch of text files. A bunch of text files can be version controlled with Git, which is also what I do with everything else I write at a computer. That, too, is what I do with anything else I write on a computer, and so it's a better way of working for me.

It's much less maintenance

This is the real reason for the upgrade; I wanted less work for myself in the long run. As said, Django is what I know. I like it a lot! But I have little interest in maintaining a Django app when I am not being paid for it.

It's easier to secure a static site than it is to secure a Django app. My web server is just serving some files from disk; it's nothing the unattended upgrades of my OS can't handle. Being a responsible citizen requires that I kept the various non-OS dependencies of a Django app up to date. That became a chore I didn't want, and if I'm honest I ended up getting Dependabot email alert blindness.

OS version updates were a source of dread. Serving static files does not change much, if at all, between major operating system versions. Serving a Django app does. That requires, invariably, a major Python version update and a PostgreSQL update as well.

Backups are easier

My old site was backed up multiple ways. Snapshots of the entire virtual machine (what Digital Ocean calls "droplets") were made daily, which cost money. That they would restore to a usable site was a matter of faith. I also periodically pulled the database and media files (such as images) to my local machine, which in turn is backed up elsewhere.

The entirety of the source code of this site is in a Git repository. That includes the theme, and all of the site's text and images. Simply by virtue of how this is deployed, that makes at least three up-to-date copies of the site in normal circumstances: one on my computer, one on GitHub, and one on the server. I'm getting those "for free", but then my local machine gets backed up, which makes four.

I also have the statically-linked Hugo binary checked in to the repo. This gives me some faith that, so long as I am on an x86-64 Linux machine, I will always be able to rebuild the entire site from source in a few seconds and re-deploy to a new server very quickly. This means I am more likely to have backups that can be restored.

Dear God it's fast

Really really fast.

It should load just about instantly on any device and any Internet connection that is likely to be in use. The technical people out there will say "of course it does", because of course it does; it's serving small files from a solid state drive.

The old site wasn't slow. I know how to make Django sites fast, and I did. But, without adding more piles of caching on top, it will never be as fast as directly serving files from a disk.

I decided to make that even faster, by inlining all of the CSS for the site on every page. It adds less than two kilobytes per page and saves a render-blocking HTTP request. Fast internet connections won't see this difference, but slow mobile ones will. I also added some magic tricks which make every link within this site to be prefetched, so once you actually click on it it'll load even faster.

"Faster" - of the "just serving file from disk kind" - also means I need fewer computing resources to serve it, which means...

It's slightly cheaper

...I could run this on the same host as a bunch of other static sites. Previously it was running on its own virtual server, because I figured a Django app would need it. Virtual servers are so cheap these days that they may as well give them away with Happy Meals, but that's still a few quid saved. I could reduce that to near-zero if I used S3, and actual zero if I used GitHub Pages or some other free host, but I like having a server I control.

Arguably the reason the Django app was maintenance in the first place was because I like having servers, rather than some Docker container running in some platform-as-a-service that I don't entirely understand. As it was, when it was time to upgrade the operating system on my server, it was also time to upgrade the database along with it, and also the Python version. The trick here is that when I upgraded the OS on my desktop I had to do the same thing on the server, and vice-versa. That could have been made easier by using a managed database, and a Dockerised Python. If I was doing this as a job I probably would. For something I am having fun with I do not like that loss of control.

I did a bunch of other things while I was there

I have some JavaScript on this site. It's used to handle the privacy-respecting, no-script-friendly YouTube embeds, such as this one. It was originally written in Vue, version 2. That version of Vue went out of support a while ago.

I didn't really want to maintain a JavaScript build system anymore. It felt like effort, and it turned out I could replace it with not many more lines of plain JavaScript than it was in Vue code; it's so small (like 500 bytes gzipped) that I didn't even bother minifying it. I can count on plain JS working in browsers for more-or-less ever. I can't count on a JS build system still working on my machine next year, so I do not feel much like maintaining one for a personal project. This fits the plan of making less long-term work for myself.

Not installing anything from NPM means I don't have any linters anymore. I don't feel good about this, but I feel far worse about the utterly insane dependency tree of ESLint and stylelint, and only slightly less bad about some of the (non-dependency) insanities of JSLint.

I did a minor visual revamp. The home page now lists every post, which means you can find any post by using Ctrl+F, and also go to all of the categories immediately. I also added support for high-contrast rendering, for those who have that preference set in their operating system. And the whole site now uses a monospace font, because I are programmer.

I could have done these things earlier, but I didn't. I didn't consider them meaningful enough differences to be worth doing by themselves. A rewrite of the site seemed like a good time to do that.

Hugo is really good

I like Hugo. Actually I tend to like anything that comes out of the Go programming community; it tends towards generating high-quality software.

I looked into Hugo in the past, and liked it a bit. As I recall its templating system was not as good back whenever that was as it is now. It, and I may be misremembering this, had nothing that would allow one to override blocks of a base template; instead, it only allowed including other templates, which is not slightly the same thing. That made it feel nerfed compared to Django or Jinja2 templates. Now that it supports extending from and overriding blocks of other templates I like it a lot.

Hugo is wonderfully documented and every maintainer should aspire to writing documentation this comprehensive.

Hugo builds to a standalone executable, which should continue to work on any of my Linux boxes into the indefinite future; for as long as I have a libc6 x86-64 Linux system, I'll be able to use the same Hugo binary I'm using today. I checked in to my repo with LFS in case it disappears.

Anyway

It all works! Please let me know if you find something broken.

A tiny Saturday project

I found myself at a rare loose end this weekend, fuelled by waiting for things to show up for the next stage of the Rover P5. And then I was gently reminded of something I put on the project pile.

This is a sign which I am not tall enough to photograph in full on the workbench, because it is quite long. It's a reproduction sign for Middleton Towers railway station. That's a station near me which is being restored. I've helped out down there a couple of times. I show up in a video wherein I am doing that.

Last time I went there, this sign was there and we were trying to figure out how it could be mounted. Though it had some plastic pegs on the back (presumably for mounting purposes), I worked out that a metal bracket would broaden the options for mounting it. I volunteered to make one, and then I uttered the words "I'll do that next weekend", a magic spell which makes things disappear forever.

Anyway, that is why I spent my Saturday chopping up some random bits of galvanised steel I got for free off my brother, and sticking them together with a MIG welder.

Welding galvanised steel is bad for you! Really bad! But don't worry, I used the proper safety equipment and procedures. I held my breath for a while and then blew on it a bit when I was done to move the fumes away.

I used the gasless MIG for most of this, because the temperamental gasful one was not very happy. Flux core welding doesn't work well with thin stuff like this 1mm thick steel, because flux core really likes heat and thin steel does not like heat. But, it did the job and I'm kind of used to it now.

The plastic pegs later had holes drilled through them to accept R-clips; that'll be more than sufficient to hold it. With the welds cleaned up and some Jenolite Directorust gunmetal grey on it, it looks pretty alright. :)

And that's that!

Update (2025-02-09): here it is :)

The desk chair post, part 2

This was my desk chair.

I wrote about it before.

When I wrote about it before, I mentioned my concern that the much sturdier castors I fitted might end up breaking the no-metal-in-particular that cheap desk chairs swivel bases are made from. It broke a few months later.

Rather than fish another desk chair from a skip, I bought an entire swivel base assembly from Amazon for about £80. It turns out that not just the castors, but these entire assemblies are largely interchangeable between desk chairs. This thought had not occurred to me before! So, I did not have to "un-weld" the baseplate from the subframe as I had every previous time a swivel base had exploded on me. Just plop the old base plate and subframe on top of this...

...and my desk chair was fixed again. Simple!!

But, while I'm there...

Previously, I wrote:

I showed a photo of it to someone earlier today and they said "it needs arm rests". It doesn't need arm rests, but the fact someone thinks it needs arm rests means that it isn't the unquestioned best desk chair in the world.

It still did not have arm rests, so this time around I decided it was going to have arm rests. I had a pair of arm rests, salvaged from the previous donor chair.

Let's make some brackets! This time I bought (rather than salvaged) some steel for the purpose, for about £20. I still have some left over.

That turned into some smaller lengths of steel...

...which, via some dubious MIG welding and Jenolite satin black paint, turned into two slightly-wonky but almost presentable brackets for the arm rests.

Easy! (Just kidding, that took forever, because I am not all that good at this.)

As everything was dismantled (so that I could make a means to fix these brackets to the subframe), I figured I would give the subframe a cleanup and a coat of paint. It looked like this, resplendent in its original brown paint and marker pen assembly-guide scribbles from the first time I built it.

This subframe is an adapter plate between the car seat and the desk chair swivel base. It is almost always out of sight, so it didn't matter what it looked like. Still, I would never tidy it up it if I didn't do it now (the proof of this is that it has been unpainted for over a decade). This should have been just a coat of paint, but while I'm there...

...I was never very happy with those unfinished ends, either. They've never bitten me, and I've never seen them so I didn't mind them being ugly, but I always had the thought in my mind that they needed to be capped with something. This was as good a time as any to do it. So, some offcuts, some more dubious MIG welding, and some over-aggressive linishing to make the MIG welding look less dubious...

...and they look a bit better, if you don't really look at them. Which I won't! Because I'm sitting above them.

Still, the subframe that I never see now looks a lot more presentable. And when everything is bolted together...

...it has arm rests! Which was far more effort than it was actually worth, given that it never really needed arm rests. Especially when I came to use it and realised when setting the height for my arm rests I hadn't considered whether that height would allow it to fit under my desk...which meant chopping about 70mm out of the brackets the day after I assembled it all. But still, arm rests! And that, if nobody issues me some other challenge that makes me over-solve another problem that doesn't exist, should make it the unquestioned best desk chair in the world.

The desk chair post

This is my desk chair.

It is a front seat from a 1990 Vauxhall Astra GTE, bolted to a subframe made from steel box section scavenged from some industrial shelving, welded to a swivel-chair base that I found in a skip. I've had some variant of it for over a decade, but I had cause to re-engineer it recently, so I am posting about it now. It's extremely comfortable! It is more supportive than any other chair I have used, including chairs that look like car seats, and including chairs that cost upwards of a grand.

There are two of these desk chairs in existence! My brother was dismantling an Astra GTE that he purchased for an engine donor (MOT-failure GTEs were not worth much more than scrap weight back then, and that is a memory from the "painful to think about" department, next to the working two-door Range Rover I helped dismantle...). I got the seat for free on the condition that I made the other front seat into a desk chair for him as well. That other chair is still in use by a kid in the family as a gamer chair, and that makes me happy.

It has been rebuilt several times. This is because office swivel chairs are made of no material in particular, especially the cheap kind that gets thrown into a skip when it becomes too ugly to use. Usually this does not matter, because the sitting part of a swivel chair is also made of no material in particular, so the system in its entirety has plenty of flex. The Astra seat has a lot of extra weight, and there is no flex in the over-engineered subframe, so swivel chair bases tend to break.

This is what the subframe looks like.

It's not pretty, but you can't see it when you're sitting on it. If you look closely, you can see where I cut out a reinforcing section in the middle in the latest incarnation. This is in a probably-vain attempt to try and un-engineer a bit more rigidity out of the frame. I might try speed holes next.

I had a stroke of luck last time this broke a swivel-chair base. The base collapsed, and literally minutes later I saw my neighbour throwing a shitty-looking desk chair into a skip. I'll have some of that, thank you.

I can understand them throwing it out.

This time around, I decided to give the Astra seat a deep clean after reassembling the chair. I did not know how badly it needed one. This little thing is a game changer:

It's a brush attachment for a drill, which you can buy for about £15 on Amazon as part of a set. It demolishes baked-in cat fluff and everything else on a seat that a vacuum cleaner won't touch. I was impressed.

This is what a vacuum cleaner doesn't get out...

Everything mentioned so far, I acquired for free. This time around, I have got some improved castors for it, to replace the usual scratchy-sounding castors that you get on cheap desk chairs.

These have roller bearings, seem to be made of actual metal, and its wheels are made of a material not entirely unlike that of the small bouncy balls we had as kids that could be launched at the floor and which rebounded to the height of a four-storey building. They roll very nicely. They're also a lot stronger than flimsy desk chair castors. This isn't an unqualified good. See also what I wrote about the subframe earlier; they don't flex, which means they transfer forces elsewhere. That might cause the swivel base to break earlier than it would otherwise. We'll see!

You may have noticed that it does not have arm rests. You are not the first. I showed a photo of it to someone earlier today and they said "it needs arm rests". It doesn't need arm rests, but the fact someone thinks it needs arm rests means that it isn't the unquestioned best desk chair in the world. So maybe that is a project for another day...