Wednesday, 8 October 2008

Oh, how I hate hardware bugs...

I must have misplaced my head while designing the keyboard PCB.

The last two days my girlfriend and I have

1) Checked all the ICs involved in the rotary encoder circuit
2) Checked the functions of the rotary encoders
3) Checked the PCB routings for any errors or broken paths.

We didn't find any errors on the ICs, they all performed flawlessly on the bread board.

As for the encoders, they seem to be of different kinds. The tempo encoder seems to stay permanently connected to +5v and send out pulses of 0V (or rather, it varies with the position of the encoder), while the mode encoder stays at 0 and sends out pulses of +5v. Not sure if this is a problem, but it has to be checked.

The routing, however, is a different story. First of all, although it is not possible to see why when inspecting the PCB, the connection between the tempo encoder and pin 5 on the left flip flop IC is broken! This may have happened when the IC overheated earlier.

More important though, I have not routed +5v and ground to the ICs! This is a mistake made in Gschem, the software I used when designing the circuits, I simply must have forgotten to attach the necessary pins to the power connector :-(

So, right now I have to:
1) swap the tempo encoder for one similar to the mode selector one.
2) connect pin 5 on the left flip flop to pin 1 of the tempo encoder
3) connect pin 14 on the right flip flop to pin 2 of the tempo encoder (5v)
4) connect pin 7 to pin 8 on the right flip flop (ground)

...then we'll see what happens.

No comments: