Friday, November 29, 2024

Believe the Virtual 2315 Cartridge Facility FPGA design is done, undertaking thorough simulations now

FPGA DESIGN RUNS IN GEORGE WILEY'S RK-05 EMULATOR BOX

The emulator was modified from providing virtual RK-05 disk drives into the facility that provides either a virtual or a hybrid 2310 (IBM 1130 internal) disk drive. Hybrid means the drive in the 1130 is spinning with a cartridge inserted, but the emulator is managing the flow of data to and from the 1130. Arm movements occur on the physical drive and are mirrored inside the emulator. 

The disk heads are not flying on the inserted cartridge, whose actual contents are ignored. Rather, an image on a micro SD card in the emulator is fed to the 1130 during disk reads and any writes from the 1130 are captured to update the image inside the emulator. 

COMPLETED LOGIC FOR THE FPGA DEVICE INSIDE THE EMULATOR

My design modified the Verilog built by George, adapting it to the way the 2310 disk drive works and introducing the hybrid mode. I believe it has implemented what I intended, but I need to very carefully simulate it as a first check that this is true. Once that is done I can begin testing on the IBM 1130 until it works as intended, compatibly and accurately. 

SIMULATIONS BEING RUN UNDER VIVADO TOOLCHAIN

I am using AMD's Vivado (originally from Xilinx) to simulate the various functions of my code. I intend to build this up function by function except for the two areas that are just too complex to model well in a simulation - operation of the SDRAM in the emulator box and the dialog over an SPI communications link from an application running in a Raspberry Pi Pico (also inside the emulator box). 

Sunday, November 24, 2024

Drat - error in my new PCB for 1627 controller card

STOPPED DEBUGGING THE BODGED CARD ON THE BENCH

Mostly the card was working correctly but I would continue to get flakey behavior that after investigation seems to be issues with the bench testing apparatus itself. The only issue that was still occurring was quite odd. 

When the system reset (DC Reset) would stop, the request for interrupt on level 3 (IL3) would immediately go on, but this was not because of any of the six movement commands being activated. If I monitored the DSW Bit 14 (busy) signal using a pullup resistor, the false triggering of the IL3 stopped! 

There is no logical connection between these other than possible shorts or power interactions through chips. It doesn't make sense from the design thus I had to ascribe it to an issue with the particular card I am testing - the bodged up one with jumper wires to the donor SLT card. 

BUILT NEW SLT CARD WITH INTEGRATED SLT CONNECTOR

I soldered all the components onto the new version of the card which has an integrated connector, avoiding the requirement for donor cards or jumpers. All the spring contacts are in place on the card so that it can connect to the pins in an SLT card socket, either on my bench tester or more importantly in an IBM 1130 card compartment. 


It was time to install the housings on the end of the cards. I have not completed the new 3D printed housings, but I pulled two off of the donor SLT card I had been using for the earlier instance of the plotter controller card. 

DISCOVERED BAD SPACING BETWEEN THE TWO CONNECTORS

One housing fit but the other will interfere with the first if I try to install it. I compared it to the spacing of a normal double width card and saw that my layout for the PCB was wrong!



You can see in the picture above that the left row of contacts lines up with the openings in the housing but the right row of contacts is over too far to the left. The width of the space between the connectors is too small in my card. I measured the spacing on an IBM double wide card and found that the middle of the contacts on either side should be .375" apart. 



In addition, there are small tabs on the IBM SLT card that lock the housings onto the card, so I should be implementing them as well. 




Back to the drawing board (well, back to KiCAD) and another round of PCB manufacturing. 

Various parts for recreation cards

3D MODEL FOR COVER ON MY REPLACEMENT SLT CARDS

Eric Schlaepfer sent me his files for a cover that he used when he created substitute SLT cards. He removed the spring clips from junk cards, rather than buy new ones like I did, but otherwise it is the same process to build a PCB that will have an SLT connector on its end. I will make one to assess it for possible changes - since my spring contacts are wider than the IBM part, it may be necessary to alter the design. 


You may recognize Eric from his work creating the Monster 6502, from his Tube Time social media presence on X or from his work with Curious Marc on various projects. 

SMS POWER PADDLE CARD IN PCB FABRICATION

I designed a card to use with the SMS power connections that the IBM 1130 utilizes to provide power to the 1053 Console Printer, 1627 Plotter, 1134 Paper Tape Reader, internal disk drive, and 1054 Paper Tape Punch. These have a tendency to snap. This card will allow museums and other 1130 owners to replace the connectors that are damaged. I produced ten of them, but will also share the design files on Github for those who need to make their own. 



Saturday, November 23, 2024

Disk drive reconnection and one issue

WIRED UP THE AC POWER CABLE TO THE DISK DRIVE

The AC power cable was reinstalled in the disk drive, with the ground wire connected to the AC box lug and the hot and neutral wires connected to their spot on terminal block TB4 inside the box. The cable runs back to an SMS power card that is plugged into the SMS power connectors that are used for the 1053 console printer, disk drive, 1134 paper tape reader, 1055 paper tape punch and 1627 plotter devices. 

HOOKED UP THE RUN SWITCH AND DISK UNLOCKED LAMP WIRING

When I tested the wires to determine which switch terminals each connected, I discovered that the switch was not working properly. It is a DPDT switch although only the Normally Open and Pole terminals are used. One of the two poles was not connecting to either the NO or the Normally Closed contacts.

I used Deoxit to spray inside the switch and exercise it until I restored a good low resistance connection when it is put in the ON position. The four wires from the switch were inserted into the terminal blocks on the front of the disk drive. A doubled set of wires from the Disk Unlock lamp on the main console was plugged into its spot on a terminal block. 

An end of a wire snapped off the pin connector that was plugged into a terminal block - but I soldered it back together easily. 

SMS POWER CARD SNAPPED OFF - SIGNS OF PRIOR DAMAGE AND BAD REPAIRS

I found that the card was snapped off at the fingers. One of the two finger sections showed signs of a prior break and a repair using some kind of liquid metal squeeze on material. It was also wrapped in black vinyl electrical tape, probably to keep the parts together.


This is the means of delivering 115VAC hot and neutral to the disk drive, as well as a good ground connection to the 1130 frame from the disk drive. I could directly wire this up, but that would not match the way that IBM connected the disk drive. 

DESIGNING NEW SMS POWER CARD TO BE FABRICATED

I fired up KiCad and began to design a compatible SMS power card. Once it is fabricated by JLCPCB I can use one to repair the disk drive connection and keep a few for other possible uses. I think the SSM museum could use one so I will send one to them. 

Tuesday, November 19, 2024

Assessing a location for the Virtual 2315 Cartridge Facility interface board

MOST COMPONENTS SOLDERED ON INTERFACE BOARD

I had a few hours in the workshop in between time spent with family visitors. I soldered on the connectors, installed the pins that allow me to hook up the cable connector from the 1130 controller logic, soldered on a cable that plugs into the disk drive, and a few other components. I still need to install the voltage regulator, resistors and capacitors. 

TESTED CABLE ROUTING AND MOUNTING POINT FOR BOARD

I had to find a potential location for the interface board where the cables from the disk drive, 1130 controller logic and emulator box can be routed simply and neatly. I did find a good spot, as you can see from the temporary mount with cable ties. 

I will drill and tap for the mounting screws along the left side of the interface board then work out a mount point for the right side. 

Parts arrived to build Virtual 2315 Cartridge Facility interface board

PCB ARRIVED ALONG WITH THE PARTS

This board is the interface between the IBM 1130 disk controller logic, the 2310 disk drive and the modified RK-05 Emulator that together form the Virtual 2315 Cartridge Facility. The cable from the CPU that normally would plug into the disk drive will plug into this new board. A cable attached to this new board will plug into the disk drive. A pair of ribbon cables connect this board to the RK-05, passing most of the signals between 1130 and disk while processing all the data related signals inside the emulator.


FINISHING UP THE FPGA AND C CODE TO BEGIN TESTING

In order to start testing with the 1130 and disk drive, my modifications to George Wiley's RK-05 Emulator must be installed. The 2310 disk drive differs from the DEC disk drives in quite a few ways. As well, my notion of a hybrid of real disk drive plus emulator is unique. 

I will do some final simulations of the FPGA logic before installing it on the FPGA chip in the emulator. The emulator FPGA works hand in hand with a Raspberry Pi Pico that manages the SD Card where the cartridge images are stored, thus there are some Pi side C code changes needed.

Saturday, November 16, 2024

Still testing substitute 5806223 card to support 1627 plotter on the IBM 1130

AFTER ERROR OF MISSING PULLUP, STILL HAVE ERRONEOUS BEHAVIOR

The card was producing the 1.9 ms and 50 ms output pulses now. More importantly, the interrupt level 3 request (IL3) was not incorrectly high before commands were issued. I saw the busy status emitted when the XIO Sense Device was issued.

What was wrong was the behavior of both busy and IL3. I saw the flipflop turn on, emitting IL3, when I requested a Drum Up move. However, the line dropped after 100 ms when it should have been latched on until an XIO Sense Device with bit 15 was issued. 

This is incorrect on three levels. First, the flipflop should not turn off by itself. Second, the timing suggests that even though I was issuing one of the 1.9 ms actions, the other pair of timers produced two 50 ms actions; the Drum and Carriage movement commands should create two 1.9 ms intervals. Third, the intervals, whether 50 or 1.9, have no path that should reset the IL3 flipflop.

There might be a short between wires, since this was a very bodged prototype, or a bad gate, but in any case the behavior is incorrect. I will check this further when I get back from a family trip early next week. 

Thursday, November 14, 2024

More testing of 5806223 replacement card and redesign to eliminate donor card requirement

CONVERTING THIS TO A DIRECT SLT CARD CONNECTOR ON THE PCB

I found some spring contact parts that would allow me to make a compatible end on my PCB that would slide into the card compartment and mate with the pins in the socket there. This did require some very careful measurement of IBM SLT cards to understand all the dimensions 

I implemented the pads onto which I will solder the contacts. The result will look very much like the original IBM end of an SLT card. I then need a 3D printed cover similar to IBM's black molded plastic part that protects the contacts and guides the card into the slot when it is inserted. 



The spacing of SLT pins in the card slot is .125" or 3.175mm. The connectors will fit easily in that spacing and are about the same width, length and height as the ones IBM uses. 

The plastic cover on the end of a card has grooves to slide over guides in the SLT board (backplane) at each card slot. It has notches to ensure the card can't be inserted rotated 180 degrees. It has .1"x.1" square openings that the SLT board pins slide into. 

I will need to design these covers and print them. I have time since the parts and PCBs will take a week or so to arrive. 

TESTING TO UNDERSTAND WHY INTERRUPT LEVEL 3 WAS ON INITIALLY

I did find that often the 1130 would power up with a level 3 request active. My design should initialize correctly and only drive the request after a plotter command has been executed. I took the card out and put it on the bench, reproducing the erratic IL3 behavior. 

The big breakthrough was while I was redesigning the card to feature an SLT connector. I spotted an error in part of the reset logic for the flipflop that drives the IL3 request. 

A gate will reset the flipflop either when the 1130 system reset signal is active or when an XIO Sense Device with bit 15 set is issued to area 5 (the plotter address). The signal for the latter case passes through an inverter. I realized that the inverter was a 74LS05, an open collector inverter, thus it should have had a pullup resistor on its output but it did not. 

I did a bodge change to the board on the bench and verified the correct functionality. I placed the card back into the 1130 and indeed the IL3 does not come on spuriously. I don't want to spend too much time working on the old design, when I will soon have the integrated SLT connector on the updated board. 

Disk drive bolted back inside IBM 1130 - without additional people

SPENT TIME MEASURING, VISUALIZING MOVEMENTS AND PLANNING STRATEGIES

The disk drive won't slide in from the front nor the back as the vertical height of the drive is larger than the vertical gap to the upper frame rails. Sliding from the side would require removal of CE transformer and usage meter boxes to open up the gap.

After I unbolted the transformer and meter boxes, I lowered them out of the path of the disk drive. I still had an issue because the height from the lowest to the highest part of the drive is too large, even tilting the drive as I slide it in to get over the frame stands that it has to bolt onto. To deal with this, I took the upper sheet metal off the drive to lower the height.

Transformer and meter box relocated

When I attempted to slide the drive in from the side, I found that a plastic bar that anchors the cartridge receiver tilt mechanism was about 3/4" too high to clear the left frame rail even with tilting. 

I had to admit to myself that the only way the drive would get inside the frame is to be lowered from above, exactly the situation that should force me to have a second person or some kind of a crane/lift. 

Inspiration struck. I have a board that is of appropriate size that I could use to sit the disk drive on top of the 1130 frame. If I slid the board backwards then it would pivot down and the drive would start to slide to the front but inside the 1130. Holding the front of the drive near its mounting spot, I could pull the rest of the board out and lower the rear of the drive to its mounting spots. 


BOARD METHOD IMPLEMENTED, DRIVE BOLTED DOWN

The method worked almost as well as I envisioned it. A bit more cumbersome to hold the drive from sliding too far forward while also pulling out a board and lowering the rear, but it did do the job. 


The bottom of the drive has four threaded studs that fit into holes on frame supports. I added the bolts and nuts to secure it down. To wrap up, I put the sheet metal parts back onto the drive. 

threaded stud with rubber donut on left side of picture


NEXT STEPS

When I get back into the shop, I will replace the CE transformer and usage meters to their proper positions and put the tops of the machine back on. 
  • I have to connect the AC power, the Run switch and the Unlock lamp to the front of the drive. 
  • The rear has a set of DC power connections to reattach for +3, -4, +6 and +48V. 
  • A duct for cooling air entering the rear of the drive will be reattached to a frame member
  • The run switch bracket must be attached
  • The faceplate will be remounted in front of the drive opening
  • Normally the signal cable from the CPU would be plugged into the drive's card cage
Since this will run with the Virtual 2315 Cartridge Facility emulator sitting between the 1130 and the disk drive, the connector going into the drive will come from the facility. I am still waiting for the PCB fab house and parts suppliers for what I need to make that drive connection. 

Monday, November 11, 2024

Another possibility for eliminating need for donor SLT cards when making substitute cards

SMT SPRING CONTACTS MIGHT ALLOW ME TO MAKE PCBS WITH INTEGRAL SOCKETS

I found some gold plated spring contacts that are .098" wide and solder onto a PCB pad. They can be set side by side to form the 12 connections on each side of an SLT connector. Their height above the PCB will create a .257" width between the two sides of the card. Since the SLT backplane (board) pins are spaced at .25", this should give a decent fit with adequate quality connection. 

I ordered some and will experiment to see how they work with real SLT boards. This is easier than having wires running from PCB pads to a standalone connector which must be anchored somehow to the PCB (see earlier post). 

Sunday, November 10, 2024

Wrapping up disk drive work, ready to install back in the IBM 1130

VERIFIED WRITE LOGIC AND WRITE CLOCK OUTPUT

The 2310 drive is formally called the 13SD and had the project name Ramkit. It is installed inside an IBM 1130 as its internal disk drive, as well as in a standalone cabinet labeled the IBM 2310, with one or two drives per cabinet. 

The 13SD produces a 720 KHz clock that it sends to the controller logic in the 1130 when the drive is switched to write mode. The controller logic controls a Write Data line based on the state of the clock signal. The clock pulse is sent by a constant 1 emitted during one half of the clock, whereas during the other half of the clock cycle the data value of 1 or 0 is transmitted.

Any time the Write Data line is 1, a flipflop reverses state which flips the magnetic orientation at the head. This writes a pulse on the disk surface. I verified the 720KHz signal was correct and that the flipflop toggles any time the Write Data line is set to 1. 

The recording scheme on this disk drive, like many, alternates clock pulses with data. Each half of the 720KHz clock cycle is called a bit cell. The first bit cell is always a 1, so it always records a pulse by flipping the magnetic field. The second bit cell records a pulse if the data bit is 1, otherwise it does NOT flip the field and no pulse is written. 

When writing a sector, the controller will send a preamble of a fixed duration of 0 data bits. That is, every clock cycle has a pulse in the clock bit cell and no pulse in the data bit cell. When reading, the drive will synchronize itself during the preamble so that it can tell the difference between clock and data bit cells. This will be important when data bit values of 1 are read later, as it comes in from the read head as a stream of pulses that must be separated. This synchronization is analogous to a phase locked loop. 

The drive, because it is in step with the alternation of clock and data bit cells that were written previously, can steer the clock pulses out one signal wire (Read Clock) and steer a pulse out a second signal wire (Read Data) when the data bit cell had a pulse. This helps the controller logic in the 1130 know that the absence of a pulse is a data value of 0, since the next clock pulse arrives with no pulse incoming on the Read Data line. On the other hand, if a pulse arrives on the Read Data line then we know the data value was 1. 

CHECKED SIGNAL VOLTAGES PRESENTED TO RK-05 EMULATOR HARDWARE

The RK-05 emulator has interface chips to read signals from the 13SD drive and from controller logic in the 1130. It also has chips to write signals to the drive and the controller logic. It acts as a relay station for many signals. For example, when the 13SD produces a Sector Mark pulse, it is passed along through the emulator to the 1130 controller logic. 

Reading and writing activities involve passing the 720KHz clock through to the controller logic, but not passing the signals to activate read or write on to the 13SD. Instead, the emulator produces a stream of pulses on Read Clock and Read Data signal lines to the controller logic, just as would have been emitted by the drive if its heads were really reading the disk cartridge. These come from DRAM in the emulator which holds the data that would be on a 2315 disk cartridge. 

For a write operation, the Write Data line from the controller logic, emitted in coordination with the 720KHz coming from the disk drive, will stop at the emulator. The incoming data bits will be captured and used to update the DRAM image of a disk cartridge.

When the disk drive first spins up, the emulator transfers the 1MB of content for a 2315 cartridge from an SD card to the DRAM where it is available for reading and writing. When the drive is switched off, the updated contents of DRAM are written back to the SD card. The format of the file on the SD card matches that used by the IBM 1130 simulators, which makes it relatively easy to create or update virtual 2315 cartridges. 

We have all the signals and behavior we need from the disk drive in order to work, in concert with the emulator, to perform exactly like the 13SD drive with a physical 2315 cartridge for each disk image on the SD card. 

PUT ALL COVERS BACK ON

I put everything back together, removing temporary wires, and installing all covers. The drive is ready to insert inside the IBM 1130. It is bolted to four spots on the frame, sitting on the right side of the 1130 as viewed from the front. A swinging door on the front of the 1130 is opened to gain access to the drive. A blue handle is pulled down to allow a 2315 disk cartridge to be pushed into the drive or removed.

The handle is then returned to its upright position and the Run switch on the drive is turned on. A lamp on the main panel of the 1130 indicate when the drive is unlocked, allowing the blue handle to be pulled down. The drive must not be spinning, otherwise the drive is locked. Another lamp on the main panel indicates when the drive is able to be accessed - File Ready - which turns on about 100 seconds after the Run switch is activated with a cartridge inside. 

The drive has a set of wires delivering 115VAC to power the motors. Another set of wires feeds the +3, -3, +6 and +48V DC power to the rear of the machine. A signal cable is normally connected from the 1130 controller logic to the backplane of the disk drive. However, this cable connects to the disk emulator, and a cable from the emulator is plugged into the13SD drive instead. Lastly, wires connect to the Run switch, Disk Unlock lamp and File Ready lamp. These will all be attached once the drive is bolted into place. 



PREPARED TO LIFT INTO THE 1130 WHEN I GET A HELPER

The drive weighs quite a bit and is bulky. It has to be lowered into the frame of the 1130 until the four bolts enter holes in support beams for the disk drive. The weight is therefore about two to three feet away from the body as the drive is lowered and raised in the frame opening, which introduces quite a lever arm that amplifies the effect of the weight on the people holding it. 

I will have to wait until someone relatively strong accompanies me to the workshop so that the two of us can lift the disk drive off the rolling lift table and insert it into its place inside the 1130 frame. Once is is sitting on its supports, I can do all the other work solo. 



DESIGNING INTERFACE BOARD AND CABLING TO USE RK-05 EMULATOR AND DRIVE

The RK-05 Emulator that I am leveraging as the core of my Virtual 2315 Cartridge Facility has two forty pin IDC style ribbon cables, one of which will interface with the IBM 1130 controller logic and the other will interface with the 13SD disk drive. Neither the 1130 nor the 13SD use IDC 40 pin connectors, so I will build an interface board to connect everything together. 

The signal interface from the 1130 controller logic is a cable with an SLT card connector on the end. This has the 24 pins of any SLT card and fits into one card slot on the backplane of the 13SD. Normally that cable with connector would be plugged into the 13SD. 

My board will feature two of the IDC 40 pin connectors, a set of header pins that match the card connector from the 1130 controller logic, and will have another cable with SLT card connector that is plugged into the 13SD. This puts the emulator in between the 1130 controller logic and the drive. A few additional connections will provide access to the Run switch and the state of the Disk Unlock lamp. 

Those two latter connections are either at 48V or 0, depending on their logical condition. The voltages are not safe to connect to the emulator. The interface board will have two level shifter circuits to convert the 48V signal into a TTL level output in order to feed it into the emulator. 

I have yet to finalize the shape of the interface board, nor the exact location where it will be mounted inside the IBM 1130. 


Evaluating possible SLT card socket to eliminate need for donor cards

ORDERED HOUSING THAT SHOULD BE COMPATIBLE WITH SLT BACKPLANES

Conor Krukosky had found a housing that appears to fit, as he has a long term project to create his own SLT cards. I ordered a couple of them so that I can do some experimenting. These are free hanging, which does mean I have some mechanical issues to content with in order to attach these to a PCB so it can be plugged in and out of the backplane socket. 



It would use thin wire-wrap (30 gauge) wire to span from PCB pads to the connector pins. I have to work out a good way to affix the housings on the end of the PCB in the correct spacing. The other issue with this methodology is that for a single size SLT card, the cost is about $13 for the connector and pins, not prohibitive for a few cards. 

For Conor's project to replace about 300 cards to repopulate his 1130, the costs add up especially when you add in the PCB cost plus the components to go on them. If you figure $40 per SLT card, which is probably low, then the cost for the 1130 card complement would be around $12,000. 


The IBM housing has features on the ends that key it so the card can't be inserted upside down into a card slot. I have to work out how the housing I just bought will work with the backplane keying, which might require some modification of the housing to make it fit. 


Saturday, November 9, 2024

Replacing the head connector required excavation to determine the coil wiring; successful conclusion

DUG OUT THE CONNECTOR TO FIGURE OUT WHICH WIRES GO TO EACH PIN

I know from the documentation about the wires from the SLT card compartment out to the female head connectors. There is a violet and a grey wire that goes to the two read/write coils, a red wire that goes to the erase coil, and a black wire that was not covered anywhere else. That wire hooked to the ground pins on the backplane.


The diagram for the wiring of the heads does not show the fourth wire - the ground connection. The only mention at all is the table above. 


However, from the head to the male connector, there is no documentation. I could figure out the pins because the connector is asymmetric, with two pins close together on one side and the other two spaced further apart. However, if I was not able to solder the pins then I would need to make a new connection and for that I would need to know how to identify the various coil connections.


I picked away at the plastic molded connector to expose the ends of the pins that were broken off as well as expose enough of the wires connected to those pins that I could confirm colors. It is good that I did, because the four wires I found in the connector were red, blue, white and white. These don't match the colors from the female connector. 


I found nothing at all about the wiring in the connector in the documentation for the 2310 drive which is also the internal drive on the IBM 1130. However, the heads are quite similar to the multiplatter 2311 drive that IBM introduced at about the same time. I looked over some documentation on that drive and found the head wiring that matched my connector.


It shows the four wires connected, unlike the documentation for the 2310 drive. I made some resistance measurements across the four wires hooked to the upper head, which was undamaged. I found no connectivity at all through the black wire to any of the other three, while the diagram above implies there is. I checked to the female connector for the damaged lower head and that too had no connection from the black wire to the pin on the connector. I removed one of the female connectors and could see that there is no connection at all to the fourth pin.


It was apparent that the black wire, hooked to ground, serves only as a cable shield up to the female connector. No such ground shield exists from the male connector to the head itself. That means that in the excavated male connector I was repairing, the blue wire was unused on this end and could be ignored. 

It was a painstaking process to solder the pins back on the two active positions where they had snapped off. Once I was certain that there was good connectivity, I covered the connector with Kapton tape and reinstalled it on the machine.


I tested from the backplane pins for the same resistances and connectivity, ensuring that my reattached female cable had good wire-wrap connections and that the entire path to the coils in the head was intact. 


HEADS BACK IN PLACE AND A VIDEO OF THE ARM MOVEMENTS




You can just see the two holes on the left side above the top head and below the bottom one that had pivot pins inserted. These allowed head loading plates to be pushed down onto the backs of the heads in order to force them down to fly 125 microinches above the spinning disk surface. 

The video I took shows the drive spinning, finishing up the 98 second delay before you can hear and see the head load solenoid snap closed. The solenoid is near the bottom left in the video, you may have to watch a second time to spot it. That would normally close the two heads around the spinning platter, but for safety reasons this is not done on this drive.

I then moved the arm forward and back in continuous mode, then stepped it in both 20 mil and 10 mil step sizes. You can see the backsides of the two detents, one for even and one for odd tracks. When moving in 10 mil steps, the detents alternate, whereas with 20 mil step the same detent is re-engaged after each movement. 

Replacement 5806223 card finished and being tested in the 1130

FINISHED ALL JUMPER WIRE TESTING OF THE STACKED PCB + DONOR SLT CARD

Making sure the card was properly connected required me to beep out each pin to the connection on the PCB. Once that was done, I checked for shorts to adjacent pins. No shorts there. The last set of tests were checks for pins that were connected to adjacent pads on the PCB where the jumpers are connected. That too was clean.


CARD INSERTED IN VCF 1130 AND SOME TESTS PERFORMED

When I first powered up, I heard a circuit breaker click off in the 1130 - the 6V supply. Because my card doesn't use the 1130 power rails of +6, +3 and -3, I ignored those pins. However, the donor card had a short between the +6 and the +3 pins (B11 and D03) most likely caused by the holes I drilled to fasten on my PCB.

The fix was easy - since the connections from the pins to the donor card are short traces, I just cut away the traces to isolate both of them from the card. The problem went away.



The level 3 interrupt was active and wasn't reset when I pushed the Reset button on the 1130. I pulled the card out and have begun checking on the bench. It is possible that the short that connected the +6 and +3 supplies also injected overvoltage into some of the chips on my card. 

Disk heads cleaned and reinstalled on the IBM 1130 internal disk drive, but too rough to be used

CLEANING HEAD SURFACES IN PREPARATION FOR FIRST ATTEMPT TO FLY ON PLATTER

The heads must be completely clean, free of any oxide or other buildups on the surface. These will be pushed down onto the spinning surface but will fly above it on a cushion of air about 125 microinches thick. That is produced by the air being dragged by the disk surface as it speeds under the head at around 45 miles per hour. 

Any imperfections on the disk surface will affect the air cushion and potentially apply a torque on the head which causes a portion to ride lower than the target height. Worse, if the oxide or other foreign objects on the head are larger than .125 mils they will touch the disk platter surface. 

This is in addition to the need to avoid dust, smoke or other particles in the air inside the cartridge that are on the large enough to jam between the head and disk platter, driving it down onto the surface. In mild cases this causes short light scratches on the surface and the head resumes flying. However, it can dig into the oxide surface and result in the head scraping along producing serious platter and head damage. 

I use 99% isopropyl alcohol (which of course has absorbed atmospheric moisture and is not really that pure when applied) with wipes that don't shed lint. The goal is a really clean head surface with no particles at all on the face, as verified under the microscope. 

Once I finished, the heads are just too scraped up to safely be lowered onto the disk surface. This drive will have to run with my virtual 2315 emulation facility which keeps the heads from touching the unused disk cartridge but otherwise spins the cartridge and moves the arms in and out, while serving data from the emulator instead of the disk heads. 

MAKING SURE LOWER ARM HAS THE PROPER SPRING BEND FOR INITIAL POSITION

The disk head is attached to a thin springy metal which allows the head to pivot in two directions. That springy metal is welded to a somewhat heavier springy metal piece that is screwed onto a thicker sturdy aluminum holder. 

The springy piece that screws to the holder should be pre-bent to hold the head up and away from the disk surface when the drive is stopped. A mechanism in the drive will push on the rear of the disk head to load it down to the surface, bending the springy piece. 

The lower head appeared to sit very close to the disk platter when it was stopped, which introduces some risk that it could be hit by a platter as a cartridge is pushed into the drive. Also, when the heads are unloaded they shouldn't be near the platter in case of vibration of the machine or other events. 

I got everything put together and sitting at the correct spacing. I spun up a cartridge with the drive modified only so that the two pivots that push the heads down on the platter are removed. Thus, the head load solenoid will activate and the drive will believe the heads are down, but they remain safely above the surface. 



REPAIR OF HEAD CONNECTOR WHICH HAD BROKEN PINS

The connector from the cables of the disk head to the rest of the drive electronics has four small pins, male on the disk head side. Two of the four were broken and not making contact when I tested the circuit initially. 

I planned to repair them by digging out enough plastic around the male connector to expose a bit of the metal of the pin remnant. I can then solder the pin back onto the remnant, holding the pin in a surgical clamp with kapton tape to block heat transfer. If I could do this very very carefully I could restore the pin sufficiently to insert one time and anchor everything in place. 

However, the heads are not going to actually be used to read and write, since they are not safe to fly 125 microinches over the spinning platter. I am going to make an alternate connection, just to allow the read/write circuits to see the impedance and current they expect. 



HEADS REINSTALLED IN DRIVE

The sturdy hold of the heads slides into a channel on the disk arm, up against a screw adjuster tip that controls how far it moves in away from the center of the disk hub. A clamp gets tightened to hold it in place. 

The head positioning is critical for reading previously recorded cartridges properly. Each track is spaced 10 mils apart and the actual data content is considerably narrower after the erase coil cleans away the outer edges of the signal. The head needs to be as close to centered over the center of the track as possible. 

There is an alignment process that achieves this, which I have written about in other posts. I won't need to perform this, since the disk heads are not actually accessing the disk cartridge inserted. The data is instead flowing to files on an SD card in the emulator I will attach to the drive. 

Thursday, November 7, 2024

Parts arrived, finally got drive startup and arm seeking to work

SWISS ARMY KNIFE OF TIME DELAY RELAYS BEING USED

This device cost just over $22 and provides a very wide range of solutions, including of course the 90 to 100 second turn on delay we need for the IBM 1130 internal disk drive. The drive provides a choice of 

  • Turn on with a set delay after power is applied
  • Turn on for a fixed duration when power is applied
  • Repeatedly alternate on and off for equal durations, starting off
  • Repeatedly alternate on and off for equal durations, starting on
  • After a trigger signal, wait for a set duration then turn off
  • A trigger signal turns it on for a set time, then off
  • At the end of a trigger signal, turns on for a set time, then off
  • Trigger signal turns on with set delay, then same delay before turning off
  • Alternatively latch on or off upon each trigger signal
  • Pulse on after a set delay when power applied, for a 0.5 second duration

Provides continuously variable delay setting in ten ranges from 0.1s to 10 days

Is powered by 12 to 240V of DC or AC at 50 or 60 Hz. 

Comes with either SPDT or DPDT contacts.

I am using it with 48V DC, in the first mode, set to 100 seconds. I only need a single pole normally closed switch. Super overkill but cheaper than buying a used time delay that is just the functionality I needed. 

WIRED IN AND TESTED, MOUNTED PERMANENTLY

The relay is installed and works properly - I get 98 seconds delay, which is right in the 90 to 100 second zone from the documentation. It sits nicely inside the power box. 

INVESTIGATING RESISTANCE IN THE MOTOR ON CIRCUIT

Since the scope showed an 8V voltage drop across a pair of switches in the motor turn on circuit, I checked them out with a meter and the resistance was really low. I pulled the PCB that the wire connects into and the voltage still popped up to 8. Finally, I happened to check that a fat wire jumper was good and found 3.5K between the terminals involved!

ALD SEEMED TO MATCH THE POWER STRIP WIRING, BUT IT DIDN'T

The wiring of the power terminal block in the ALD shows a jumper between terminals 4 and 6, installed on IBM 1130 systems. When I looked at the terminal block on the machine, there appeared to be a fat jumper right where the ALD showed it.



That certainly looks like a jumper, but it isn't. When I measured between terminals 4 and 6, it was 3.5K. I removed the screws to measure the jumper by itself and that is when I discovered that it is not a jumper. It is a ground wire screwed into the metal base on its underside and hooked to terminal 4. 

If you look closely it is obvious, but when viewing from somewhat above, it really looked like a U shaped jumper between the two terminals. The connection between the two terminals must be completed back inside the IBM 1130, although the ALD certainly makes it look like it happens here on the terminal block.

 I whipped up a jumper, added it to the wires already present there, and was ready to test. I set up the scope to monitor the -Drive Motor On signal to see if it now sat down at ground level, then look at the Integrator and ramp generator/detector relative timing. In particular I wanted to be sure the 70 percent latch didn't turn on. 

While I was looking at signal, 98 seconds elapsed and I heard the clang of the head loading solenoid activating! A quick probe of the -File Ready signal showed the drive happy and ready to accept commands.

USING CE SWITCHES TO MOVE THE ARM IN AND OUT

I tried the switches, asking to move the arm 20 mils inward toward the center of the platter and saw it move! I tried both 10 and 20 mil steps, forward and reverse movement, with success at each attempt. Holding down the continuous step switch produced a satisfying buzz as the drive moved about 100 tracks forward and then back. It is apparent that the 70 percent latch was what was blocking arm movement before this. 

RETESTED EMERGENCY RETRACT, THIS TIME SUCCESSFULLY

The logic in the disk drive looks at the status of the Home microswitch which senses if the arm is at track 0. If not, when DC power is turned on, the arm should move backwards repeatedly until it reaches home. With the power off, I moved the arm out away from home and then activated the 48V supply. The arm backed right up. 

TAPPING HOME SWITCH PRODUCES A FEW REVERSE MOVEMENT ATTEMPTS. 

I noticed that every once in a while the arm would make a single seek attempt while it was sitting at home. I tried wiggling the wires and back of the microswitch, which would cause the attempts. I suspect that there is a contact that needs cleaning there.

MUCH IS WORKING CORRECTLY ON THE DRIVE

The drive does its startup and power down, emergency retraction, emits the sector and index pulses properly, goes into File Ready state after the 98 second delay and head loading, and moves in and out on command. 

WORK AHEAD TO FINISH THE DISK DRIVE

I have to repair the connector for the one disk head, remount both of them after cleaning them really well, and try to fly the on a cartridge. The cartridge itself will need a really good cleaning as well before I even make the attempt. 

Aligning the heads involves moving them slightly inward with an adjustment screw while watching a signal pattern on an oscilloscope. A special pattern is recorded on the Customer Engineer (CE) cartridge for this purpose, where the track is recorded in a special eccentric path. 

An adapter substitutes the erase coil for the read/write coil because the erase coil is only sensitive to the two outer sections of a track, not the center. The read/write head records a wide track and the erase head trims away the outer bands to make the remaining signal narrow. Thus, the erase head poles are only focused on the outer edges - the curb and not the street. 

With the eccentric path on the CE cartridge, the track is oscillating inward and outward of the centerline of the current head position. When the amount of signal detected on one pole is the same as the amount detected on the other pole, the head is properly centered between the eccentric extremes. 

When the heads are aligned, I can watch the signal produced by the read electronics to validate much of the remaining electronics. All of these steps can be done without connecting the drive to the IBM 1130. Writing, however, is not permitted with the cable disconnected so that will have to wait until I reinstall the drive inside the 1130 cabinet. 

BIG RESISTORS ARRIVED, FINISHED REPAIR OF 35V REGULATOR BOARD IN DRIVE


NEW PCBS FOR REPLACEMENT 6223 CARD THAT INTERFACES 1627 PLOTTER


I got my components and the PCB blanks for the final version today. Before I solder together one of these, I decided to finish up the original with its bodge wiring, since it is working properly as far as all my bench testing is concerned. I drilled holes in the donor SLT card, soldered all the jumper wires between my PCB and donor card, then connected it with plastic screws and nuts. 

I will put a scope on the 1130 output pins, with my replacement card inserted, and run some test programs to make sure that the output to the plotter is correct and the response to the 1130 works as well. Perhaps I will even fire up the 1627 plotter carcass to verify the servo motors move under the commands, if I feel ambitious.