Saturday 4 August 2012

Laminator for PCB Transfer



 Yesterday I bought a cheap A4 laminator from Tesco;  I'd seen PCBs done like this before so I thought I'd try it out myself as I didn't want to use the household iron as it does tend to smudge.

I used an old Press'N'Peel reject print I did some time ago; I did quite a few passes through the laminator before I cooled the PCB and removed the backing film. It seemed to work well, the only problem was having to put it through so many times.



I had an idea to add a push button switch on the motor wires, so I could pass the board through manually using the switch so it would hold the time in the laminator thus keeping it hot.
















Ok. I've just added a push button to the motor; so now I can slow it down going through; it seems to work well!


Wednesday 11 July 2012

Basic FPGA Board

A few weeks ago I ordered a simple FPGA board, it came with a Blaster USB programmer. FPGA's are something I've heard so much about, but never tried, so I thought it might be nice to try and create perhaps a cool video chip for my PAL TV experiments or maybe a simple logic analyzer; anyway - I'm sure it will be lots of fun and games!

Sunday 17 June 2012

PAL TV Signals using a PIC

Whist I was leaning about PIC microcontrollers the thought had crossed my mind about the possibility of simple computer system, in such a system it would certainly be nice to use a real TV as the output display rather than a large expensive LCD module.






After doing some Google'ing I stumbled upon these superb explanations of how PAL TV signals work.

http://martin.hinner.info/vga/pal.html

http://www.rickard.gunee.com/projects/video/pic/gamesys.php


My first attempt used only Horizontal Sync signals followed by a striped pattern, the result is the image you can see above. Because there is no Vertical Sync the image is actually shifting vertically, but because of the nature of my pattern, it gives the appearance of a fixed stable picture.

Of course this is pretty useless for displaying anything useful as the picture needs to be static. So the next test was add Vertical Sync; In order to test the picture I'd need to alter the format of my test pattern to something that would show up if the VSync didn't work properly, ideally I should have used a checkerboard pattern but I opted for a simple code change. For this I simply added a black border of 50 scanlines, top and bottom of my striped pattern; and the result was the image below.




















In this picture you can see the TV's text "AV"; this is not part of the signal generated, only the striped pattern is generated.



This signal produced is PAL non-interlaced, which means I don't generate field1 then field2 scanlines, I only generate a continuous set of scanlines.


The basic C code looks like..


        doVSyncNonInterlacePre();

        for(ucRasterLine=50; ucRasterLine!=0; ucRasterLine--) {
            doHSync();
            doBlackScanLine();
        }

        for(ucRasterLine=204; ucRasterLine!=0; ucRasterLine--) {
            doHSync();
            doScanLine();
        }

        for(ucRasterLine=50; ucRasterLine!=0; ucRasterLine--) {
            doHSync();
            doBlackScanLine();
        }

        doVSyncNonInterlacePost();



A simple explanation of the code is that my picture starts with a VSync non-interlace pre sequence, then for 50 scanlines it generates the HSync signal followed by a black scanline; Then the visible pattern is the HSync and stripes for 204 scanlines; and then the bottom black border, which is actually the same as the first top black border; And it finishes off with a VSync non-interlace post sequence; after which it repeats indefinitely.





In this example I decided to re-write the code to make it display a pattern dynamically across the horizontal. The pattern was white, dark grey and black bars. the gray is very dark! and doesn't show up much. The code required to make it dynamic requires more cpu cycles, this means the more time calculating what to display, the bigger your pixels will be! 


















I'd like to play around with pal signals a little more in the future, but I think I will need to get a much faster PIC, my poor 16f877A running at 5Mhz ( 20Mhz / 4 ) is just far too slow.



.. to be continued!!! ;-)

Saturday 5 May 2012

Programmer Upgrade


    Today I received my new device programmer in the post; It's a TOP3100, it's primarily use is for programming my PIC and flash memory chips but hopefully I should be able to use it for other things. The serial JDM programmer I was using before this is very basic, and only works on older computers with a serial port.

I tested a few chips with it this afternoon and it's really nice and fast, one nice feature it has is that it will test pretty much all standard logic chips!!








(Update 20th Jan. 2014)    TopWin6 / TopWin7  Model TOP3100 problem programming the PIC18F2520 chips?

Recently I have tried the programmer with these chips and I get verify errors;  it clearly seems to have a problem with these.  Last night I ordered a PICKit 2 so when that arrives I can verify the chip tested are indeed ok.  The PICKit 2  isn't the latest PICKit, but it was cheaper than a PICKit 3.

(to be continued!)

Friday 4 May 2012

Saitek Mephisto Exclusive Senator - Repair / Fix!

My older brother bought one of these rather nice chess computers a few years ago and it has seen a good number of games over the years; then recently it had developed a fault; the fault appeared intermittent at first but soon got to a point where it was unusable, so I offered to take a look at it.

After stripping it down and then some inspection I noticed that the ribbon cable had actually fractured, this was probably due to design fault by the original designers / manufacturers. I can only assume that after years of use of the pull-out tray stressed and wore out the ribbon cable.


After purchasing a new ribbon cable from Ebay and a lot of soldering later, it was back to it's old self, I also replaced the internal backup battery while I was at it.

Below are a few pics showing the repair and the inner workings of this top-end chess computer.