Prototype board module for the Sudoku solver – Part 2

Well, here it is – finally! My prototype board for my Sudoku solver project – finished:

I did few things wrong here – some intentionally, some unintentionally.

First of all, it definitely isn’t an enjoyable experience to wire-wrap this! In fact, it was quite frustrating!

Why did I do it!? Because at the time I started working on this, almost no PCB fab house was working (timely at least!) because of the C19 pandemic. And if it did – shipping didn’t! So…

Then, after soldering everything together, I realized the wire-wrapping tool was inappropriate for the 100mil (2.54mm) pitch of the board. I had to finish it up – it’s an addiction – once I start something, I must see it through! But I will not repeat it anytime soon – I will go straight to designing my PCB layout and patiently wait for the delivery! πŸ™‚

The use of this particular material for the perfboard… Avoid it! The copper just peels off under slightly higher heat. Use boards which are FR4 based when it comes to the insulating material.

Then the jumper next to the CD4511 (bottom left corner of the IC, just bellow the resistors on the image above)… I added this so I can disconnect the power rail to the IC and therefore test all the voltages before inserting the IC (and the microcontroller!) into it’s dedicated socket. Well, while wiring – I managed to bypass it and after it was too late.

When I did start testing the board, I accidentally applied the wires from my +5VDC adapter – reversed! Well, it wasn’t really accidentally as I was under the illusion that the wire with the white stripes is the ground and not the live wire! What a beginner’s mistake!

The mistake above cost me a spare CD4511 because I totally fried the first one. It seems it doesn’t like reverse polarity so much! πŸ™‚

Other than that and a few (3 actually!) missed solder joints, that was it. I could finally program it using my USBtinyISP.

The program is to the point I am happy with it. One thing that is not fully tested is the AUTO MODE i.e. waiting for commands on the I2C bus for the LCD index to write to and the digit to display – and of course the standard refactoring process. I have to set the fuses on the ATmega328P so I can use the external 16MHz crystal and achieve at least 100kHz clock speeds on the I2C bus.

The source code in my BitBucket repository is without the AUTO MODE and the final refactoring (although this is a continuous improvement process) but I plan on releasing it during this upcoming extended weekend. The final PCB layout is nearly done and next week I can order them and (fingers crossed!) I can start assembling everything around Christmas.