• Please review our updated Terms and Rules here

RD53 fun and games!

Teletech

Experienced Member
Joined
Jul 25, 2022
Messages
201
... or something.
So, I have a RD53 from an old system I really want the bits off of. Of course the heads were stuck.
Open up the drive and un-stick, easily done. Then I thought, what if I want all the nice coffee grinder noises of using a real drive. If the drive is fine apart from bad rubber, just R&R the rubber!
So, I've begun to do just that. I don't have any clue what a good hardness would have been and the existing sludge isn't a good gauge. The rubber pad was just a small rectangle glued into a channel in the hard-stop, or rather it likely was adhesive-backed. So, I decided to start with a few of the adhesive-backed rubber/foam sheets I have and see if one seems to work better than others.
There's also the matter of the head stop determining where the drive starts looking for track 0. I decided to risk some particles and scribe the position of the counterweight on the housing as a reference in the hopes that I can get the heads back in the same place.
Mummifying the drive so just the lid is showing and getting suited up for cleanroom duty is the longest part of the project.
At least I own several of these, so I can practice and get good before I work on the one I care about. Wish me luck.

Also, just for curiosity, who would run a RD53 if it had new rubber? I'm just wondering if I should just satisfy my personal needs or if I should try to refine the process to scale it beyond a few drives.
 
For those wanting to try it themselves:
A knife, to trim the label around the cover screws and the tape or foam you are using to cover or re-cover the rubber. Also to scribe the location of the heads.
Phillips screwdriver to remove cover screws
plastic wrap and tape to cover the rest of the drive
cleanroom to work in, you could use a glove-box as well, or even improvise something.
T-8 torx bit or wrench to remove stop screws.
Tweezers to fish the stop out from behind the head cables.
acetone to remove all traces of the old rubber
Some rubber or thick tape to put back in place of the goo you removed.
 
We have a bunch of RD53s at LSSM, all dead of course. We've not tried to rehab any of them, but we'd probably run some if given the opportunity. Probably on Qbus PDP-11s with RQDX3s. For us I'd say fixing those is a lower priority than most other restoration projects, but we might try it at some point.

-Dave
 
How nasty *is* the rubber, well...
IMG_20220919_105710.jpgIMG_20220919_105819.jpgIMG_20220919_105945.jpgIMG_20220919_110926.jpg
the first two are the bumper when it was removed, the third is the goo that came out when I went to scrape the rubber out, and the last shot is the new pad before I cut it flush with the metal ears.
It's early days, but the drive spun right up and did it's seek and read on the Gesswein MFM emulator/reader. Trying to run it in a system comes next.

Also, a note about goo: I don't recommend acetone as a cleaner for the lid before removal. It will instantly dissolve all the ink on the disk label.
 
Eeeeeew. :-(
Every bit as nasty as smashed dec-foam or the hammer cover on a ASR33 after a half-century. Very much like the consistency of gasket-maker compound. It add to the challenge since it means I really have not a clue how hard it's supposed to be. I feel like the "poron" foam I used is a bit on the soft side and might go with something harder for next drive.
 
First I tried it with the Gesswein MFM-board and it read fine, then I put it in a 11/23+ system and found I had left it as an empty filesystem for RT-11.
I went ahead and did a INI/BAD on it and it came back with just one bad block. So, success!

I went in with two more today. The first was another practice drive, one suspected of perhaps having motor issues. I found the rubber to be very soft and deformable, but it just had a divot where the heads hit, with the rest of it being a shape and size I could use to inform my work. Then I tried to remove the maximum stop and that just won't come out in any remotely easy manner. I haven't heard of heads getting stuck at that end of travel, so I'll just have to chance it.
The second drive was the one I really care about and it's heads were firmly stuck in the rubber. I went with a harder rubber for the stop on this one, so we'll see if there is a difference.
 
Fail.
So, no love on the recently re-rubbered drive. I assumed I got the position of the stop too far off where it needed to be. Now, I did mark it's starting position, but remember this was a starting position that represented it being stuck in the mud, as it were, so I had to guess at the amount of additional height the stop would have had when new. Off comes the lid, move the stop, should be good to try again, but wait... the head assembly takes a lot of effort to move and I see congealed lubricant around the top bearing. A cleaning of the shield/seal area with some acetone and then a few drops of acetone-thinned watch oil and it's moving much more like the others I've had open lately. It's nice to have had the luxury of a couple practice runs for reasons just like that. Sadly, the whole work thing intrudes, so no testing until tonight.
 
Important note for anyone trying this, be warned that if you set the stop too far away, the heads will touch the spindle while spinning up and disintegrate in very short order.
Sigh....
 
Another drive repaired and ready for service. This one was a bit annoying and shed light on what might have gone wrong with the failed recovery attempt.
The latest had a bad cable end on he head servo, so I'd advise checking the 1-wire flat ribbon cable to make sure you get under 6-ohms on the two pins on the motion-board while the connector is plugged-in.
It also had bad rubber and dried grease, but I suspect the cable-end was got it put on the shelf to begin-with.

Most of the drives I've tried have had sticky rubber, but in addition some have had dried grease in the hear actuator bearing that's enough to keep them from working properly.
You can free them "well enough" by wicking a few drops of acetone and thin oil mix in through the bearing shield and moving the actuator back-and forth a bit, but if you want to do it right:
Mark the position of the weight on top of the head-servo and remove it. Remove the wire circlip holding on the bearing shield with something small and sharp (X-acto knife, or equiv) and then pull off the shield (invert drive and give it a thump on the table should work, else the knife). Now wash out the hardened grease by flooding the bearing with acetone and soak up the acetone and floating grease chunks with a kimwipe or other lint-free absorbent item. Do this several times and work the headstack back and forth a bit to break up the chunks. Then re-grease with fine camera/VCR/weapons grease, using a syringe and working the arm. Then reassemble.

So far the tally is three fully repaired drives, one that give a LOT of errors (I suspect magnetic damage to the servo surface), and one with crashed heads.
Next I'll try to see if the one with many errors changes with format and then debate using it's headstack vs. sacrificing a headstack from a known-good drive in a recovery attempt on the crashed drive.
 
Last edited:
If errors varied by head this may be the head stack has shifted slightly so some of the heads aren't over the data. I recovered the data from a RD53 with this problem. If its this the drive will be fine after reformatting.

http://www.pdp8online.com/mfm/head_servo/
That's very interesting what you have going there. Some of the old Wilson HDD testers have that facility and I think the CDC976x drives do as well, with the idea that pack drives would be not unlikely to suffer pack-interchange issues due to alignment.
Honestly, I'm mostly just a mechanic in my understanding of the drive and tools, I don't know what I'm doing with the software. I'd be very glad to have whatever suggestions you would care to offer.
It seems to affect many heads, to the degree that it almost seems like it's the servo head that's off?
The error reports look like this, for instance:

Mismatch cyl 63,64 head 4,4 index 12
Mismatch cyl 63,64 head 4,4 index 13
Mismatch cyl 63,64 head 4,4 index 14
Mismatch cyl 63,64 head 4,4 index 15
Mismatch cyl 63,64 head 4,4 index 16
Bad sectors on cylinder 63 head 3: 0H 1H 2H 3H 4 5H 6H 7 8H 9H 9 10H 11H 12H 13H 14H 15H 16H
Retrying seek cyl 63, cyl off by -1
Invalid data id byte fa expected fb on cyl 63 head 4 sector 6
Retries failed cyl 63 head 4
Bad sectors on cylinder 63 head 4: 0H 0 1 2 4 7 8 10 11 12H 12 13H 13 14 15H 15 16
Retries failed cyl 63 head 5
Bad sectors on cylinder 63 head 5: 0H 1H 2H 3H 4H 5H 6H 7H 8H 9H 10H 11H 12H 13H 14H 15H 16H
Retries failed cyl 63 head 6
Mismatch cyl 63,64 head 7,7 index 0
Mismatch cyl 63,64 head 7,7 index 1
Mismatch cyl 63,64 head 7,7 index 2
Mismatch cyl 63,64 head 7,7 index 3
Bad sectors on cylinder 63 head 6: 0H 1H 2H 3H 4H 5H 6H 7H 8H 9H 10H 11H 12H 13H 14H 15H 16H
Retrying seek cyl 63, cyl off by -1
Retries failed cyl 63 head 7
Mismatch cyl 64,63 head 0,0 index 0
Mismatch cyl 64,63 head 0,0 index 1
Mismatch cyl 64,63 head 0,0 index 2



Mismatch cyl 64,65 head 4,4 index 5
Mismatch cyl 64,65 head 4,4 index 6
Mismatch cyl 64,65 head 4,4 index 7
Mismatch cyl 64,65 head 4,4 index 8
Mismatch cyl 64,65 head 4,4 index 9
Mismatch cyl 64,65 head 4,4 index 10
Mismatch cyl 64,65 head 4,4 index 11
Bad sectors on cylinder 64 head 3: 0H 1H 2H 3H 4H 4 5H 6H 7H 8H 9H 10H 11H 12H 13H 14H 15H 16H
Retrying seek cyl 64, cyl off by -1
Retries failed cyl 64 head 4
Bad sectors on cylinder 64 head 4: 1 2 4 5 6
ECC Corrections on cylinder 64 head 4: 13(1)
Retries failed cyl 64 head 5
Bad sectors on cylinder 64 head 5: 0H 1H 2H 3H 4H 5H 6H 7H 8H 9H 10H 11H 12H 13H 14H 15H 16H
Retries failed cyl 64 head 6
Bad sectors on cylinder 64 head 6: 0H 1H 2H 3H 4H 5H 6H 7H 8H 9H 10H 11H 12H 13H 14H 15H 16H
Mismatch cyl 64,65 head 7,7 index 0
Retrying seek cyl 64, cyl off by -1
Retries failed cyl 64 head 7
Mismatch cyl 65,64 head 0,0 index 0
Mismatch cyl 65,64 head 0,0 index 1
Mismatch cyl 65,64 head 0,0 index 2
 
Looks like the normal head stack is twisted.
Mismatch cyl 63,64 head 4,4 index 12

This says we were expecting cylinder 63 but found a sector header that said cylinder 64 when we selected head 4.
Retrying seek cyl 63, cyl off by -1
This says to try to fix it we seeked another track


Mismatch cyl 64,63 head 0,0 index 0
Now that we switched to head 0 we are off in the opposite direction. I assume in the blank lines was retrying seek off by 1 where we moved back a cylinder.

We then repeat the same sequence on the higher heads.

You might be able to recover some more data with the --ignore_seek_errors option. Suspect you will still have lots of read errors.

This is what i recovered data from with the previous posting. You may not be able to recover all the data from the first cylinder since you can only pull the servo so far before it goes unstable. When it goes unstable if the stops aren't good you can destroy the heads like you found out since it will rapidly go to one extreme. If heads start coming off the platter to the outside or hit the spindle bad things happen. its easy to do something wrong with this method and have the servo go unstable.
 
Looks like the normal head stack is twisted.


This says we were expecting cylinder 63 but found a sector header that said cylinder 64 when we selected head 4.

This says to try to fix it we seeked another track



Now that we switched to head 0 we are off in the opposite direction. I assume in the blank lines was retrying seek off by 1 where we moved back a cylinder.

We then repeat the same sequence on the higher heads.

You might be able to recover some more data with the --ignore_seek_errors option. Suspect you will still have lots of read errors.

This is what i recovered data from with the previous posting. You may not be able to recover all the data from the first cylinder since you can only pull the servo so far before it goes unstable. When it goes unstable if the stops aren't good you can destroy the heads like you found out since it will rapidly go to one extreme. If heads start coming off the platter to the outside or hit the spindle bad things happen. its easy to do something wrong with this method and have the servo go unstable.
Thanks very much for the feedback on that. I was wondering if it might not have been extra-chunky bumps in the grease causing the servo to drift, but additional cleaning and lubrication hasn't seemed to help.
I did make sure the inner stop will prevent damage but I'll double-check the outer stop before trying anything dire.
I don't know that there is anything I really want on that drive, so at some point just formatting it and having a good RD53 might be the best path. I might try your servo-offset tool as practice for recovering the crashed drive if nothing else. If I just get enough of the first cylinder to determine what the OS was, I can decide if it's worth my time.

Any future for ESDI functionality on the emulator in the future?
 
I might try your servo-offset tool as practice for recovering the crashed drive if nothing else.
Feel free to contact me if you try. Not sure if what I put online has enough documentation to figure out how to use it.

Any future for ESDI functionality on the emulator in the future?
I looked at this at the start and decided the beaglebone wasn't capable enough to implement. A local computer museum also has interest but since i don't need it for my machines there are higher priority things for now. May happen at some point.
 
Any future for ESDI functionality on the emulator in the future?
I looked into ESDI emulation for my RT PC. But then discovered that it worked well with IDE disks so I stopped the project.

In a way ESDI is simpler since the dataseparator is in the drive. Data just need to be shifted in. But there are certain things in the timing of signals that is important for it to work correctly that could make it complex. The dataseparator need to be enabled / disabled inbetween sectors to be able to get a new lock on the data stream as I understand it. The other thing is that ESDI have both soft sector and hard sector modes. ESDI is actually very much like SMD but with a serial command channel rather than Bus/tag.
 
Back
Top