Category Archives: projects

front right top corner

I’ve done the back corners of the printer. Now, I can tackle the front.

The front corners are where I will put the motors that control the X/Y coordinates of the hot-end.

So far, everything I’ve printed is symmetrical, but the two belts are at different heights, so in this case, one motor will be higher than the other.

I’ve decided that the right motor (right when facing out from the printer. left when facing the printer) will be the top motor.

I’ve designed the model for this so that it can wrap over the end of the case edge (and you can screw into it) and bolt the motor into the model.

front right top corner, with model Nema-17 motor in place

front right top corner, with model Nema-17 motor in place

front right top corner model

front right top corner model

It’s best to print this one on its side, so there is no support needed, and less cleanup in that space between the walls. After printing this out for the first time, I found that the wall space in my print was too tight, so I adjusted the STL file to add 1mm more space. this should not matter much.

motor and printed model added to box

motor and printed model added to box

back top corners

CoreXY printers have two timing belts overlaid on each other around the box. To allow the belts to move, bearings are placed in various corners. Today, I’ll tackle the back top corners of the printer box.

In the image below (taken from a scene of this video), you can see how it’s handled usually:

image showing back corners of CoreXY belt system

image showing back corners of CoreXY belt system

Because I’m trying to avoid using any rods are other forms of complex structure, I decided to come up with a printed solution that I could attach to the wooden corners of the box.

The design with bearings and a washer in place will look like this:

back top corners of print, with two bearings and a washer in place

back top corners of print, with two bearings and a washer in place

This slots neatly over the wood at the back top corners of the box.

The design is not yet perfect. I anticipate there will be pressure towards the center of the box on the bottom bearing, so I should have screw holes at the bottom of those walls as well. But, I think this will do for the “bootstrap” printer.

An improvement I will be making as soon as the prototype is complete, is to replace the metal bearings with 3d-printed bearings, like in this video. That will get me closer to having a purely 3d-printed 3d printer. Also, 3d-printed bearings will be cheaper than metal bearings, reducing the cost for future printers.

So to create the corners, we will need to print out two each of the outer back top corners, and the inner back top corners. Don’t slot them together until you have your bearings. Otherwise you will find it difficult (or impossible) to separate them without breaking them.

inner back top corner. bearings and washer go on the pole

inner back top corner. bearings and washer go on the pole

Screenshot from 2016-03-23 20-13-32

outer back top corner. the hole on the top slots onto the inner corner’s pole to keep it still

Once your pieces are printed, place an LM8UU bearing on each pole, then a washer, and then another LM8UU bearing. Slot the bottom piece with the pole into the top piece so that the pole goes into its corresponding circular hole in the top piece. You might need to shave the top of the pole slightly to make this fit. Don’t shave too much.

Finally, place the corner pieces over the back top corners of the box and bolt them in place. For the other edge and corner pieces so far, you could use screws, but this one will need bolts because there will be inward pulling force on the pieces from the belts going through them.

where to put the inner back top corner pieces

where to put the inner back top corner pieces

I don’t yet have the bearings for the corners, so the photo below is of installation on one side without the bearings. When the bearings arrive, I’ll update this post.

back top corner. the belts loop around the pole on this (after bearings are added)

back top corner. the belts loop around the pole on this (after bearings are added)

putting the box together

KV Printer 1 will be basically a 50cm^3 cube, giving quite a large printable area.

Obtain a 5mm plywood sheet and cut 4 50cm^2 squares in it. These form the base and walls.

Next, we need to stick this together at the corners. To do that, print out 2 corner pieces and 6 edge pieces. Using these as templates, drill 2mm diameter holes in all corners of the wooden squares (they’ll be 20.5mm in from X and Y), then screw the squares together like in the third image below.

outer corner for 3d printer

outer corner for 3d printer

outer edge piece for 3d printer

outer edge piece for 3d printer

placement of outer corner and edge pieces

placement of outer corner and edge pieces

Notice that we have not yet fastened the back top edges together. That will be done in the next post.

The finished product at this stage looks like this:

printer box after installation of back bottom corner and side edge pieces

printer box after installation of back bottom corner and side edge pieces

building a new 3D printer

after working with the MakiBox 3D printer for 8 months, I think I’ve learned enough about its failings to start building my own.

I’ve started building a 3D printer of my own, based on the SmartCore idea, but with enough changes that this will be my own design.

Makibox (on the right) printing out pieces for the new KVPrinter version 1. The wood on the left is for the walls and base of KV Printer 1

Makibox (on the right) printing out pieces for the new KVPrinter version 1. The wood on the left is for the walls and base of KV Printer 1

The MakiBox printer’s major failing (as far as I’m concerned) is in how it controls the X/Y position of the hot-end.

To do this, it has two long horizontal threaded rods, against the back wall and the left wall. These rods have long arms positioned on the threads, extending out above the print bed. Where the arms cross each other, the hot-end hangs down. Thus, the position of the hot-end can be adjusted by turning the rods.

The problem with this method is easy to see when you consider an analogy. Hold a pencil normally, and draw a 1mm line. Now, hold the pencil by the eraser end and try draw a 1mm line. The precision is just not there. The further away from the fingers the pencil lead gets, the harder it is to control it precisely.

One solution to this which I thought of, is to use a Bowden cable (bicycle brake cables, for example) to fix the position of the arms at the screw side to the position of the arms at their opposite sides. This would work, and would increase the precision of prints drastically, but it’s a lot of work and would look ugly.

After seeing the SmartCore printer, I decided that instead of fixing what I have, I would use what I have to make a new printer. In a way, I am printing a new printer. At least, parts of one.

The SmartCore printer is based on the CoreXY positioning technology, which is similar to the Bowden solution I came up with. Here is a video showing CoreXY in motion

In CoreXY, the hot-end (or drawing thing in the video) is positioned on a moving platform. It can move in X along the platform, and the platform itself moves in Y along rods in the sides of the frame.

To reduce cost in my own printer, I will replace the Y and Z rods with ledges that the platform will slide along.

My calculations suggest that the material cost of my printer will end up being below €150. If this ends up being correct, and the printer is as good as I hope it to be, then I will sell kit packages of the printer for €200.

Bill of Materials:

item amt cost per piece total
nema 17 motors 2 €18.61 €37.22
nema 17 motors 2 €12.675 €25.35
rods, 8x500mm 2 €4.58 €9.16
lm8uu bearings 12 €0.5075 €6.09
608 bearings 10 €0.237 €2.37
timing belts (meters) 5 €1.004 €5.02
controller board 1 €25.71 €25.71
pfte bowden tube 1 €7.97 7.97
hot end 1 €8.53 €8.53
psu, 12v 20a 1 €21.29 €21.29
Total €148.71

I’m working on construction at the moment. I’ll write more articles as I go.

Gardenbot 2014

Every year, I start a new Gardenbot project, and it rarely gets any further than a wish list. This year is different. I have a fully-functional robot that is battery-powered and can be controlled remotely via WiFi.


Getting this far has not been easy, so I’ll write up what I can remember so you can do the same (or so I can do the same again next year after I forget!)

The biggest problem was the computer itself. I’m using a Raspberry Pi, but powering it was tricky.

The Pi takes a 5V input, but I couldn’t find any ready-made 5V batteries, and didn’t want to use battery packs as I wanted to easily recharge individual batteries.

In the past, my experience with using batteries in series with each other was that one battery would discharge fully way before any others, leaving an apparently dead pack. To solve that, I’m using li-ion batteries scavenged from phones; each with at least 2800mAh in them. I link them in parallel, and “boost” the voltage using some regulators.

There are currently two voltage boosters in the system. The first one powers the Pi, and the second powers the USB hub. You can’t power the USB hub directly off the Pi as the Pi uses 700mA, and there’s not enough left over to power anything useful. So, for anything external, such as the WiFi and the camera on the robot, you need to use a powered hub.

To save space, I stuck the voltage boosters for the USB hub and the Pi inside the Pi case, as you can see in this photo. They’re the rectangular circuits with the large capacitors on them.


The capacitors are there to help stop fluctuations in power supply as various bits and pieces are turned on. There’s nothing quite as annoying as turning on a motor only to find that you have lost WiFi because of it and now have no way to turn off the motor.

The robot chassis is a hand-built case made from two perspex sides, a wooden base, and a wooden front. I didn’t measure anything – it was all done by trial/error.

The tracks are from Tamiya (example store). The box comes with enough for a larger base, but I didn’t need it all.

The claw at the front doesn’t work perfectly yet. The one I currently have is one I bought a few years back. It never seems to work properly for me. I think I need either a stronger servo, or just replace the claw completely.

The servo cable has three wires – ground, power in, and signal. The ground and power in can be plugged directly into the batteries. The signal, I hooked to GPIO 1 on the Pi (using this wiring guide for the main GPIO connector), which is then controlled using pulse width modulation (PWM) through the pin.

The motors for the treads are scavenged from the legs of a Robosapien bot I got for Christmas a few years back. These are standard DC motors, probably for up to 5V, but I’m running them off 3V and happy with them.

To control the motors, I was initially planning to create my own motor controller using some PNP and NPN transistors, but found a motor controller circuit from an old Cybot that handily does exactly what I need.


The camera is a standard web-cam, with the cables shortened.

Turning the machine on is done by simply connecting the little red cable between the battery-side and the “other stuff” side of the breadboard as you can see in the image above.

To charge the battery, I simply hook in a Li-ion charger directly into the left of the board (below). The charging circuit will happily charge multiple Li-ion batteries.


Hardware-wise, I’m almost happy. I want to replace the claw soon, but apart from that, I’m ready to work on software.

I already have code written for controlling the motors, which I’ll upload into Github over the next few days. I’m looking into SLAM now for creating maps via the camera system. I might have to write the solution myself, though, as the code I’ve found so far is written in academicese and I don’t understand it.

Funny, that, as I’m certain I can write the bloody code, but can’t understand the words that the academics use!

Quantum Immortality – Organ Transplants

Organ Transplants

The human body evolved to reproduce, and then last just a while longer to help to raise the young after that. The fact that we live so long these days raises problems, because our bodies are not “designed” to do so!

There is no good evolutionary reason for a body to last very long after the reproductive age has been reached, yet we try our best to stave off death a while, by replacing the aging and dying parts of our bodies with younger, healthier parts.

A short history

The first successful transplant was in 1905, and was the cornea of an eye.

Nothing much happened after that for almost fifty years, and then after a stuttering start, medical research started producing wonder after wonder.

If you count the number of new transplant types that have been completed in each decade, the curve is unmistakable – we are fast on our way to being able to transplant virtually anything at all from one person to another. [1]

Donor shortfall

While organ transplantation is becoming easier over time, there is a problem with supply.

In order for you to receive a new kidney (for example), someone else must donate one of theirs. This involves finding someone with a similar body chemistry to yours, so the organ isn’t rejected, and also hoping that the person is willing to donate the kidney.

If no live donor is available, then you need to hope that someone dies to provide you with their kidney. This is a tragic thing to hope for.

A kidney is a best-case scenario, as humans have two each, so the donor can survive without it.

But if you need a heart, then the donor will most likely be dead before you get it. And you’d better hope that the donor didn’t die of heart disease!

The problem that there are simply not enough donors for each needed organ is a huge one. [2]

There is also a problem that organs can only survive so long outside the body, so once a donor has provided its organs, the organs must be transplanted nearly immediately, or they will die.

The current way to transport organs to the transplanting hospital is by freezing them so that decay is minimal. But even this can cause cell damage as ice crystals form and break apart the cells.

Luckily, these problems are also being solved.

Only this week, as I write, there is news of a liver-preserving machine which you can hook a liver up to. This device will then keep the liver alive, by emulating a living body. In essence, the liver does not know that it is no longer in a body, and continues functioning. [3]

Now that this has been done for livers, it can be expected that similar news will be announced in the next few years for almost every other organ.

Artificial Organs

The shortfall problem, that there are simply not enough donors per required organ, can be fixed with artificial organs.

Organs are generally very difficult to replace, as they do quite a number of different things. But some of the simpler organs have already been successfully replicated.

An obvious example is the heart. The first successful artificial hearts (not a pacemaker, but an actual pump) were created in the 1982. While their recipients lasted only 112 days and two years respectively after surgery, that’s still time that the patients didn’t have without the hearts.

This artificial heart design was primitive by present-day standards, but encouraged further research.

Artificial hearts are usually used as “bridges”, to keep a patient alive while waiting for a donor to supply a “real” heart. But sometimes, the artificial heart’s help gives the patients’ own heart enough rest to heal itself, and a transplant is no longer needed. [4]

Almost every organ can be replaced, given enough time and research.

Ears can be replaced with cochlear implants.

Eyes can be replaced, but artificial eye resolution is still very low. There are many different threads of research ongoing in this area. [5]

Some of the more “bag-like” organs can be very successfully replaced right now with artificial versions.

Bladders, trachea, arteries; these can all be created from stem-cells and/or plastics.

Legs and arms deserve a full chapter. There is some amazing work being done in these areas.

The most difficult organs (in the body itself) to replace are the pancreas, liver, lungs, and kidneys. These perform specialised functions, and currently, artificial versions are not small enough to implant.

I expect to hear within a year or two of the first completely artificial kidney implant. There already is an implantable artificial kidney available, but it’s a lot larger than a natural kidney.

In the future, I expect that the only organ that you will not be able to replace, will be the brain itself. Not because it can’t be moved, of course, but because the brain is your identity – there is no point replacing your brain with someone else’s.

However, having said that, if your entire body was failing, you could transplant your brain into a younger body.

There are a number of reasons you should not hope for this to happen, though.

For one example, in order for you to do a brain transplant, there must be a younger body available for you to transplant into. But if a younger body is available and it is healthy, then it makes greater ethical logic to offer its organs to save multiple people, instead of just you.

For you to get a whole new body all to yourself, you would need to provide it yourself, and i can’t think of any legal or even close to ethical way that you could do this!

If it turns out you need a whole new body, you’re probably better off looking into brain uploads instead, which will be discussed later in the book. Currently, brain uploading is not possible, but the technology should be ready soon; probably sooner than the first successful brain transplant.


In this chapter, you learned a short history of organ transplants.

There is currently a shortfall of available donor organs.

Artificial replacements are available for some organs, and others are on the way.

The only organ that will never be replaced fully is the brain, but we’ll talk more about that in a later chapter.

Quantum Immortality – Life Expectancy

Life Expectancy

Life expectancy is an estimate of how long a person is likely to live. It is difficult to give a single number as the answer, as it depends what country we’re talking about, how old the person is, whether the person is male or female, and other parameters.

But, let’s throw out some numbers anyway.

How long do people live?

The average life expectancy of a newborn baby is currently about 67 years. This means that each baby born today will on average live to about 67 years.

That number might not sound very large, but it’s more than twice as long as in any other era of humanity. Even just one hundred years ago, life expectancy was only 31 years! [1]

This number does not mean that a person that is born today is constrained by the number 67 and will definitely die at that age. Life expectancy is what we currently expect a person to die at. This changes over time as we develop new medicines, better understanding of how the human body works, and better surgeries to replacing aging or faulty organs. We are not constrained by the limits of medicine at the moment of our birth. We can expect to take advantage of new medicines as they develop through our lifetimes. [2]

There is a very important distinction to be made here.

The above numbers are average numbers, in that they take into account all people of that time, including those that take care of themselves, those that don’t take care of themselves, those that live in wealthy countries, those that live in poor countries.

It makes sense to say that a person who lives in a more wealthy country and takes care of themselves, will live longer than a person who lives in a poor country and doesn’t take care of themselves.

Because life expectancy increases over time as our researches figure out more and more, the longer we live, the more likely we are to live even longer.

For example, let’s consider diseases such as HIV/AIDS and cancer. in the 20th century, being diagnosed with either of those was virtually a death sentence. But today, there is a “functional cure” for AIDS, and there are a number of potential cures for cancer also being worked on. All you need to do is survive long enough for the research to find better solutions, and those diseases will no longer be a concern for you.

Preventing the common causes of death

Currently, the top five killers of humans are: [3]

  1. heart diseases (cardiovascular)
  2. infectious/parasitic diseases
  3. heart diseases (ischemic)
  4. cancer
  5. stroke

So, logically, if you try to avoid those problems, then you should be much less likely to die in any particular year.

This means exercise, avoiding or cutting down on toxic habits such as alcohol and smoking, and avoiding stress. [4]

If you are serious about living forever, then you should read about each of the above causes of death, and try to change your habits so you are less likely to die of them.

If we add Quantum Immortality into the conversation here, then you could say that you don’t need to make any change at all to your habits, as you will survive everything that is thrown at you, through sheer statistics.

But, there is a very big difference between “surviving” and “living”.

Heart attacks hurt. A friend of mine, who had his first heart attack at age 32, described the pain as “like a truck sitting on my chest”. He survived that heart attack and at least one more, and is currently 52 years old and very healthy, but I’m certain he would have preferred not to have had the heart attack in the first place!

I have lost a few friends to cancer. In some cases, the cancer came and took the person within a year or two of diagnosis. In one very lucky case, the cancer (leukemia) took nearly twenty years to take the person even though the doctors said she had only a few months to live.

Cancer is not currently curable, but it is certainly preventable. [5] There are a number of potential cures being worked on at the moment, so Quantum Immortality says that you will survive cancer long enough to get cured. Or at least long enough to go onto a course that maintains your current state and then eventually you can be cured. But, considering that cancer is preventable in most cases, it is better that you don’t get it in the first place.

A look at Influenza

It’s worth looking back in time at how the list I wrote above has changed.

In the early 20th century, the number one killer was infectious diseases such as influenza. Infectious diseases is currently the number two killer, but Influenza is much less fatal now than it was then.

Influenza still kills tens of thousands of people every year, but as we learn more about it, it becomes less and less dangerous.

The worst deaths occur during “pandemics”, when fatal forms of influenza evolve and kill a huge number of people before we figure out how to solve the problem.

There were three quantified pandemics during the 20th century. Each of them killed less people than the pandemic before it on the list:

Killed Year Name
50,000,000 1918-1920 Spanish Flu
1,500,000 1957-1958 Asian Flu
1,000,000 1968-1969 Hong Kong Flu

One of the major reasons for the decrease in numbers is vaccination.[6]

Vaccination involves injecting a dead version of the virus into your body so your immune system can figure out how to defend itself against it. Then when the real thing comes along, you might get sick for a while, but you are much less likely to die.

There has so far been one pandemic in the 21st century, called the Swine Flu pandemic.

Only about 16,000 people died this time. [7]

I think the most important thing to take from this is to realise that the effort that we (as a race) put into solving the most common causes of death, is paid off with an increase in longevity in the general human population.

We live much healthier lives these days than people in the early 20th century, and it’s not like we actively put any effort into it – it’s almost like we “absorb” healthy lifestyles by osmosis. Our friends exercise so we exercise as well. Our friends drink less or smoke less so we do the same.

Our environment is improving, and we are improving along with it.


In this chapter, we learned that humans are on average living twice as long now as they have ever lived before.

We also looked at the top five causes of death, and how prevention of these causes is actually not all that difficult.

We also looked back in time at how one of the historical number one causes of death is not such a huge deal these days because of medical advances.

Quantum Immortality

Quantum Immortality

At the time of writing, the oldest person ever to have lived was Jeanne Calment, who died at age 122 years, 164 days in 1997.

It is my belief that you, the person reading this book, will far outlive Jeanne. In fact, you will simply not die, ever.

And you won’t have to take up a special diet, or join a religious order – it’s just a consequence of how reality works.

This is an outrageous claim, so I need to explain how it works.

How does Quantum Immortality work?

Quantum Mechanics (QM) is one of the most accurately tested theories of how the universe works. QM is hard to understand, but its predictions have been tested and retested for a century, and have held up. [1] [2]

QM says that every time anything happens, every single possible version of the event happens, and one is “chosen” to become real (to “cohere”). This is described as “collapsing the wave”, or “quantum coherence”.

There is a very interesting interpretation of QM that leaves out the collapse, and simply says that all versions of the event happen, and each can be said to be separate versions of reality; each of which is as real as the one you are in right this moment. This is known as the “many-worlds interpretation”. [3]

A consequence of the many-worlds interpretation is something called “quantum immortality” [4]. It’s also known as quantum suicide, but that’s a rather negative name for something so extraordinary and life-changing.

The idea is basically this:

  1. Let’s say you are lying in a hospital bed dying, and the doctors say you have a 50/50 chance of living to see another day.
  2. The next day arrives.
  3. Because there was a 50/50 chance of living or dying, the many-worlds interpretation says that you are dead in half of the newly branched universes, and alive in the other half.
  4. You cannot experience being dead, so you wake up that morning and dare the doctors to come up with another prediction.

This works, whether the prediction was 50/50, ¼, 1 in a million, whatever! If there is even the slightest chance that you will survive, then you will survive.

Do other people die?

You have probably attended funerals, or lost friends to accidents, disease, old age.

Your question at this time is: if quantum immortality is true, then why are those people dead?

Well, let’s consider the case of cousin Bob, who died after his car brakes failed and he slammed into a car. You are at his funeral, wondering why Quantum Immortality doesn’t mean that he’s alive.

There are many ways that this could have played out – the car brakes don’t fail, the brakes fail and the car misses the tree and slides to a halt in a muddy field, the brakes fail and the car hits the tree and Bob is thrown clear through the window and survives with a broken leg, or the brakes fail and there is a funeral held a few days later, where you wonder what happened to Quantum Immortality.

The fact that you are attending a funeral means that you are conscious of a reality where Bob did not survive. Bob is not conscious of this reality, so for Bob, this reality is not real. But for you, it certainly is.

Bob could have survived the accident in many ways, and because Quantum Immortality says that Bob can only be aware of versions of reality where he can be aware, this funeral simply did not happen. The Many-Worlds interpretation says that every possibility is its own reality, so Bob actually survived his accident and this is all a non-issue for him.

Unfortunately for you, you will never speak to Bob again – he’s dead in your reality. But, you can take heart in knowing that he’s alive and well in his own reality.

This, by the way, has huge “spiritual” implications. It means that everyone lives forever, even if you see them die. All you saw was one possible version of that person dying, but you need to keep in mind that every possible version of that person exists, and at this moment, the versions which could possibly be alive somewhere are alive.

This means that there is no true death. You may see people die, but they actually experience something different. You might see someone breathe their last on a deathbed, but in their own experience, they took that one last breath, and followed it with another and yet another, until they finally got over their ailment and got out of bed.

But what about when the odds are against you?

Naysayers may say that in some cases, it’s just too unlikely that survival could happen.

Let’s say, for example, that you fall from a tall building, and there is a one in a million chance that you land on a car roof (like in so many films), and a further one in a million chance that you survive this and get off the car roof and go about your business.

Well, that’s a one in a trillion chance that you survive the fall. That couldn’t possibly happen, right?

QM says that every single possible event has a probability, and the many worlds interpretation says that they all have their own realities.

So, in most realities, you might slam into the ground and you are dead, full-stop.

Then there are the realities where you fall a little to the left or right of that spot, closer to the parked cars, but still die. And then there are further realities where a car is driving along the road below and you just miss it and slam into the road behind it.

Each of those realities are real. But you are not aware of them.

You are only aware of the realities where either a gust of wind blew you enough that you landed on a parked car, or you landed on the moving car below.

Even then, there’s a million to one chance that impact with the car roof kills you.

Well, guess what? Million to one chances are a dime a dozen to QM. In Quantum Mechanics there are practically an infinity of possible results, so there are an infinite number of worlds in which you are a survivor.

Sounds great, right? Want to go jump off a building now to test it? Don’t.

You see, even though Quantum Immortality says that you will survive, it does not say that you’ll be all in one piece…

You will survive the fall, but you will very likely break most of your important bones, and be in hospital for months or years before you can hobble out. It’s survival, but it’s not nice.


So, let’s summarise then with this:

You will live forever.

You will see people die over the years, but should be happy that they are living forever in their own realities.

Even though you are essentially immortal, you can still be hurt badly, so don’t do stupidly dangerous things.

File server, using Raspberry Pi as the controller

This weekend’s task is to convert an ageing and awkward file server into something more manageable. I’ll do this by basically replacing the current controller (an old laptop) with a Raspberry Pi, and shoving everything into a box.

Firstly, an apology: I’m a hacker, in that when I create something, it will work, but it may not be pretty. I’ll leave the works of art to others, and focus on what I’m good at: solving the current problem with what I currently have at hand.

Here is the old system:


Four hard-drives, a laptop, a USB hub, lots of cables, lots of power supplies.

The goal is to cut it all down into just one box, one power cable, one ethernet cable.


So, first, I got an old ATX power supply from a machine I had lying around, and converted it so it didn’t require a motherboard to run.


To do this, open up the power supply box, remove any cables (leading to outside the box) that are not red, orange, black or yellow, and connect the green cable to one of the blacks (remove some of the insulation from the black cable first, obviously). The green cable tells the power supply that it’s okay to turn on.


While in there, I cleaned out some of the dust and fluff, and neatened the cables a little. There are four voltages that come from the power supply unit: 0v (black), 3.3v (orange), 5v (red), 12v (yellow). I wasn’t sure how many of each of these cables are actually needed to supply enough current, so when I was pruning cables from the ATX box, I just left these all intact.

Next, I laid out everything in a way that I thought made sense:


If the cables are removed, then the above will fit into a box that’s 27cm x 27cm x 18cm, with a few millimetres spare on sides and top, and a few centimetres at the back. We need the space at the back so we can re-organise the cables.

So, I cut out the pieces for the box walls. The wood I had (which I scavenged from the attic “floor”) is 1.2cm in width, so the panels I cut are:

  • two 27cm x 27cm, for bottom and top of the box
  • two 27cm x 15.6cm, for front and back
  • two 24.6cm x 15.6cm, for side walls

The last two, I left a little shy of 15.6. Partly because of ventilation, but mostly because I forgot the old adage to measure twice before cutting.

I put the floors and walls of the box together, with wood glue and screws.


Next, I needed to make the power rails. After a little thought, I decided to use two coat hangers (yes, seriously!), straightened then cut into four lengths of 27cm each. The resistance of each length was between .5 and .7 ohm, so I was pretty sure they’d do fine.


I drilled holes at the back end of the side walls and put the rails in. I’ve been told since building the thing that this setup may cause electro-magnetic interference – especially as the rails look a bit like aerials. If it causes a problem, I think I’ll need to coat the box with metal.


Next, I started wiring up the PSU. First, I placed the PSU in the box and measured roughly how long the cables should be, then I cut them about 3cm longer than that, and stripped the extra 3cm of each wire.


I then tied each wire to a rail making sure the stripped area of the wire was in full contact with the rail. Orange (3v) at the bottom as it’s unlikely to be used, then red (5v), black (earth) and yellow (12v) at the top. In retrospect, the 12v and 5v should be the other way around for neatness, but I didn’t think of that at the time.


Most hard drive enclosures use a 12v input, so what I did next was to take the hard drive power supplies, snip the cables so they were about 15cm long from the hard-drive end, then strip the ends and wire them up. The cables were wrapped in black plastic, the “live” wire having a broken white line printed along it. I connected the live wire to the 12v rail and the other to the 0v.


Next, I took the case off the USB hub, and screwed it and the Raspberry Pi to the underside of the case’s box.


The power supply for the USB hub is 5v, and when I stripped it, I found this was indicated by the live wire (5v) being red. I left this cable longish (about 30cm), so I can hinge the top of the case and open it without disconnecting anything.

Power for the Raspberry Pi is supplied through a micro-USB cable. I scrounged one from somewhere in the house and stripped it down to about 30cm in length. The cable has four wires – black, red, green, white. We only need the red (5v) and black (0v).

Finally, I inserted all the hard-drives with USB cables connected, and hooked it all up. I’ll need to get shorter USB cables to neaten it further, but the original cables will do for now.


Software-wise, I used Raspbian for the operating system, and ZFS for connecting the drives together and serving to the network as one large hard-drive.

networking a raspberry pi through your laptop

I finally got my own Raspberry Pi; a credit-card-sized computer that’s very cheap and low-power.

It didn’t come with any of the niceties that you would expect from another computer, such as a power supply or a case, or keyboard, monitor, or anything else. Basically, it’s like being given the motherboard of a desktop computer and you need to do the rest yourself.

So first thing was to install the operating system on it. This was easy. Just buy an SD card, and download the ISO of the OS that you want and copy it onto the card.

I already had a micro-SD card from an old Bada phone, so I just stuck that in an adaptor to bring it up to SD card size, then installed the Fedora remix using the Fedora Arm Installer. Painless.

Raspberry Pi connected to laptop using cross-over cable

Next, we need to connect the machine to the network.

My network is mostly WiFi-based, so I chose to hook the RaspPi to the network by piping its network through my laptop.

We need to set up the laptop so it can hand out IP addresses. Install a DHCP server on your laptop. I’m using Fedora, so installed with “yum install dhcp”, then edited /etc/dhcp/dhcpd.conf:

option domain-name "";
option domain-name-servers,;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet netmask {
  option domain-name-servers;
  option domain-name "";
  option routers;
  option broadcast-address;
  default-lease-time 600;
  max-lease-time 7200;

Then start the DHCP server with “service dhcpd start”.

Next, we need to connect the laptop to the RaspPi. To do this, I made a cross-over cable, and plugged it into the RaspPi.

Before plugging it into the laptop, we need to tell the laptop’s network manager not to set up DHCP over eth0 (as we’re the server, not the client, as far as the cable is concerned). To do this in Gnome, right-click your netowkr icon on the top-right, click Network Settings, and in Wired, click Options, then change the type to “Shared connection” (or whatever sounds like that).

Now plugin the ethernet cable into the laptop, then plug a USB cable into the laptop and the RaspPi.

If you “tail -f /var/log/messages”, you should get something like the below after a minute:

Sep 28 21:12:30 iga dnsmasq-dhcp[30147]: DHCPDISCOVER(em1) b8:27:eb:87:1d:86
Sep 28 21:12:30 iga dnsmasq-dhcp[30147]: DHCPOFFER(em1) b8:27:eb:87:1d:86
Sep 28 21:12:30 iga dnsmasq-dhcp[30147]: DHCPREQUEST(em1) b8:27:eb:87:1d:86
Sep 28 21:12:30 iga dnsmasq-dhcp[30147]: DHCPACK(em1) b8:27:eb:87:1d:86 raspi

That is the address of the RaspPi. You can ssh into it (username root, password fedoraarm), and do stuff!