Tuesday, April 2, 2019

building the IBM 1130 console display main PCB

Building main PCB

I had the final corrected board fabricated by AllPCB.com due to their relatively low pricing, good results I had with prior orders, and promised quick turnaround of 3 days to build and 3 days DHL Express shipment.

As I mentioned in the last post, something went wrong as they were cutting up the panel into individual boards such as mine. They started from scratch building the board at the point where it would have been heading out to DHL. That did cost a full three days delay in receipt of the PCB.

All the parts were here, waiting for the board to complete the assembly. In the interim, I wired up the power supply parts to install inside the 1130 console enclosure. The back door of the panel enclosure had a row of threaded standoffs along the width of the box, which were used in some models to hold small boards holding several SCRs.

I will use these to mount three parts of the power supply. The incandescent lamps of the IBM design are fed with 7.5VAC, through an SCR. This only allows conduction on the positive going half cycles, thirty intervals out of sixty in a second. If the signal from the 1130 logic is above 0.8V at the SCR input, it cause it to conduct during that half-cycle.

The filament integrates the power delivered during half-cycles to an average that determines how brightly the filament glows. In addition, the frequency of the light is determined by the average power; more power means hotter tungsten and a shift towards the blue. In practice, this moves the bulb between red-orange and almost yellow.

My first thought was to make use of the 7.5VAC supply, through a full wave rectifier and then a buck converter to produce 5V for the main board and another buck converter to produce 3.3V for the FPGA pin level shifters . This plan fell apart because of a few realities once I did some analysis:
  1. 154 lamps, which can each draw about 45ma when fully on with a yellow-white color, draw about 7 amps of current
  2. The buck converter I have is capable of delivering only 2A of current
  3. I also need power for the FPGA and four multiplexer chips, but that is minor
  4. The rectifier is rated at 50A which is sufficient but it yields an overvoltage without a buck converter or other limiter (see point 4 above)
I can still use the rectifier to produce DC since it has plenty of current handling headroom. If I had a higher capacity buck converter I could generate the 5V for the main board, but in any case I can use the other buck converter board to give me 3.3V for the voltage shifter reference.

In the worst case, full on white for all bulbs, the current requirement of the main board would be about 9.5A, 47 watts consumption. I found and bought a good buck converter rated at 12A/100W  which gives me plenty of headroom. I believe it will work well with the output of the rectifier, using a suitable capacitor to smooth the 120Hz pulsating DC.

I set this up on a testbench once the new buck converter arrived, watching and measuring to prove out my approach to powering the new display. First I fed 10.5 VDC from a bench supply and adjusted the buck boards to 5V and 3.3V respectively. That worked great, but there wasn't much doubt.

Later I used a 7.5VAC wall-wart supply to check the quality of the DC both into and out of the buck converters. Using a big electrolytic filter capacitor I selected across the bridge rectifier, I wired the buck boards up to power with AC.

The AC adapter produced about 8.5 or more volts AC. The two buck boards delivered the voltage levels they were set to produce. The scope showed that the inputs and outputs were free of excessive ripple or transients.

The PCBs boards looked great when I inspected them on arrival. Oddly, there were only 3 even though the minimum which I ordered was 5, but better to get 3 that work than be further delayed waiting on five. I can't recommend AllPCB.com due to my experiences with this order. With the parts collected around me, I began to solder up the board.

The first items I soldered on were the pull-up resistors for each of the four I2C based chips, since the SDA and SCL lines must have this to work properly. Next was the set of headers into which the daughter card with FPGA will plug.

Installing the 52 pin PCA9505 chips was the most demanding work due to the very fine pitch of the leads. I started on those first. For each one, after I verified that all leads were firmly soldered and that no visible solder bridges existed, I then did careful continuity tests to the end destinations as well as power and ground.

I hooked up an Arduino to the I2C chain of each chip as they were installed and used a quick and dirty program to show me the results as I set each input pin to high and low values. That verifies that each does work as intended.

I had apparently bad connections to some of the input pins, which I couldn't figure out since there was continuity. I then noticed that in all four cases it was pin 39 of the respective chip, the last pin, that was not detected. Now I suspect that the Arduino library I am using to do the quick and dirty is defective.

I tinned the power leads and tacked on temporary wires for testing purposes. Eventually these will be hooked to the power supply I am building. They must be able to handle 7-9 amperes. The main supply had electrolytic filter capacitors installed to complete the power input.

I had to install 155 individual header pins, as these are the connections for the 154 logic level signals from the 1130 computer plus the lamp test logic level. I had already verified connectivity to the expander chips so this didn't need anything more than a careful inspection by eye.

Board, ready to install the LEDs

2 comments:

  1. you have me confused, as there are 120 half-cycles in 60 hz AC. So if you use the positive half-cycles, that would be 60 of them, not 30. Unless you are only conducting every other positive half cycle (25% of the time)

    ReplyDelete
    Replies
    1. You are absolutely correct - typing without engaging the brain fully will result in embarrassing errors

      Delete