Project: EOGee – Beginning and PCB Analogue bringup

I’ve seen some cool tricks you can do by measuring the electrical signals of the body. One of these was using electrooculography (the measurement of the electrical signals of the eye) to detect movement of the eyes.

I looked about online and found the Spiker Shield by Backyard Brains, which is a board designed to interface with Arduino and measure EEG/EOG/ECG signals but it didn’t quite match my requirements – I wanted multiple channels and I wanted to work with an ARM processor. Luckily their design is open source so I took their basic analog design and built my own digital interface.

Continue reading “Project: EOGee – Beginning and PCB Analogue bringup”

HP2VGA: PCB Design with a BGA

This PCB represents two firsts for me – first 4 layer board and first BGA package. The former isn’t really a big deal and is really just necessary because of the latter. Due to my memory requirements, I was forced to use the Lattice iCE40HX8k which has more RAM than the smaller variant, iCE40HX4k, and also only comes in BGA packages.

Continue reading “HP2VGA: PCB Design with a BGA”

The bad news, I managed to blow two of the three motor drivers by connecting 9v into a 5v pin. Oops.

The good news, the remaining driver works fine!

Here is a video of it in action:

Here you can see me reversing the direction of the motor by connecting the DIRECTION pin to 5v or 0v.

The step pin is actually disconnected and is therefore floating. However, because the voltage on it is therefore fluctuating, it more or less simulates a quick step pulse train.

I have ordered some replacement drivers and some opto-couplers as I reckon the next step is to connect the stepper motor to the pc and see it in action. The opto-couplers ensure that, should anything go wrong with the motors, no electrical signal can be fed back into the pc, potentially damaging it.

Project: PCB Mill CNC – Testing the Motor Driver

Project: PCB Mill CNC – First Steps

Last time I tried to build a CNC, I didn’t realise how CAM software interacted with the hardware. From research I have found that packages like Mach3 generally communicate with a CNC tool via a parallel/printer port. The protocol is pretty simple: each motor has two direct pin connections – step and direction.

So first things first I need a parallel port. You don’t find these kind of things on modern laptops, so I took a dive back in time to my dad’s old laptop from about 10 years ago. We are talking a 256MB of RAM, 20GB HDD, 1GHz pentium processor, 3.37kg beast.

This is what a parallel port looks like.

This is what a parallel port looks like.

The first step I decided was to check that the parallel port is spouting out the right kind of data. So with the help of a parallel port break-out device (thanks again, dad) I hooked up the PC to my oscilloscope.

What I would expect is a series of pulses on the “step” pins and a constant voltage (until I change direction) on the “direction” pins. Luckily, this is exactly what I got.

The Mach3 interface. Retro but functional.

The Mach3 interface. Retro but functional.

The parallel port breakout device with probes.

The parallel port breakout device with probes.

Oscilloscope reading. Can you make out the tiny pulses?

Oscilloscope reading. Can you make out the tiny pulses?

What this means is that the PC can be connected directly to stepper motor controllers which coincidentally also have a “step” and a “direction” pin and therefore I do not need any kind of intelligence in the form of a microprocessor.

In the end the stepper motor drivers I went for are these albeit from a significantly cheaper distributor:

My choice of stepper motor driver.

My choice of stepper motor driver.

So, next thing I reckon is to wire up one of these drivers and motors and test it out.

Project: PCB Mill CNC – Introduction

With the Smart Watch project drawing to a close (all that’s left is software refinements and a final video), it’s time to begin a new project.

Having just completed an entirely electronic/software project, I think it would be nice to move onto a hardware based project. It is for that reason that I will be attempting to make a Printed Circuit Board Milling CNC based of these plans by Tom McGuire. This isn’t actually my first attempt at a CNC machine. Back in 2012 I had a first attempt, using only parts from a scrap printer. This didn’t go to plan for a number of reasons – lack of planning, cheap parts, lack of research and impatience to name a few. But this was before I started my Engineering course at uni.

This was my first attempt at a PCB Mill.

This was my first attempt at a PCB Mill.


This was an “improvement”.







To cut a long story short, it didn’t go well. I didn’t think properly about how to interface it to a PC and I didn’t get appropriate motors. It is now gathering dust in my room.

Here is a video of it at it’s peak:

Hopefully, by taking time to do appropriate research and buying high(ish) quality parts, I should be able to make something useful.

Let’s hope for better luck this time.