23

A customer of ours makes industrial robots that run on very old, but stable, hardware and software. The only bottleneck has always been the hard drive in these moving machines. Due to constant movement (shocks etc.) HDDs normally don't survive beyond six months.

So now we're trying to connect an SSD. The motherboard doesn't have a SATA connection (no surprise there) so we're using a SATA-to-IDE converter to connect it to the IDE port on the motherboard. This works and the BIOS recognizes the drive.

Only problem is that it won't boot. It freezes on POST. In the BIOS (from the 1990s), we need to specify some values, called 'HEADS', 'SYL', 'CLUSTER', and 'LANDZ'. Unlike traditional HDDs, this drive obviously has no platters. Is there a way the drive mimics these things on IDE and can we somehow find out what these values should be for our specific drive? We have changed the values at random and sometimes it passes POST, sometimes it doesn't. If it does, however, it still doesn't boot and just says there's no drive connected.

In short, does anyone have any experience connecting a SATA SSD to an old IDE motherboard and what can we do to make this work (if anything)?

5
  • 3
    Blimey. My immediate response is "Good luck with that", but on the other hand, I'd love to know if it's possible. May 8, 2013 at 8:29
  • How much space/capacity do you need?
    – ewwhite
    May 8, 2013 at 13:16
  • Slight side node: Platter drives used CHS addressing a long time ago, but no modern drive actually uses it. CHS can only address ~8GB of drive; anything larger than that is using LBA.
    – Chris S
    May 8, 2013 at 13:29
  • So what did you decide to do?
    – ewwhite
    May 13, 2013 at 19:08
  • They're going to choose between industrial SSDs and CF cards. For their low cost, I think CF is going to be tried first, but if they wear out too quickly or are not OK for other reasons, I'm sure they'll opt for an SSD with IDE connection.
    – Knelis
    May 14, 2013 at 7:34

5 Answers 5

25

I would use an industrial IDE SSD...(another option). It doesn't sound like you need much space, and there are SSDs made specifically for this purpose. I would NOT bother with IDE adapters and consumer-level SSDs for this application. If you do go for compact flash, again, try something that's purpose-built for the application.

4
  • 1
    IDE SSDs.. That's like putting a 4.2l V8 engine in a golf cart. May 8, 2013 at 11:55
  • 19
    Not really. When you have a significant investment in specialized hardware, you have to maintain it in whatever manner is possible. I do cringe when I see RS232 serial communication and Windows 2000 control interfaces on a $3 million tomato-sorting machine, but it is what it is.
    – ewwhite
    May 8, 2013 at 12:30
  • 4
    +1 A manufacturer offering a specific part such as this should be able to provide better support in this situation - specifically, they must have encountered the problem with spindle settings for old BIOSes May 8, 2013 at 15:21
  • Thanks, I've also suggested this to them. It's now up to them to decide what they will end up using. I guess they'll try CF first because of the relatively low cost, but these SSDs may be the best alternative, therefore I'll mark your answer as the correct one.
    – Knelis
    May 14, 2013 at 7:35
19

Does it have to be a SATA SSD? CompactFlash cards are pin-for-pin compatible with the ATA standard 1.

Which means you can use a passive electrical adapter to connect one to an IDE cable (or two!). Would this give you enough space (I've seen some mahoosive CF cards...), I wonder.

It'd give you the reliability of solid state memory, and the oldness of IDE/ATA.

11
  • 1
    For what it's worth, I have used CF cards connected via IDE adapters many times in the past. They always worked flawless and excellent. However, there is one drawback: They have no wear leveling controllers, meaning that traditional operating systems tend to write the same spot again and again and wear the cells out, so you end up swapping the cards possibly even more often. In my cases, I used specifically configured Linux distributions that kept most of the stuff in RAM disks and wrote the relevant stuff back in long intervals, but that's not going to work everywhere.
    – Sven
    May 8, 2013 at 8:52
  • 1
    Such stuff exist: amazon.co.uk/Sharkoon-Hard-Disk-Silencer-Fixer/dp/B000FLR8PE/…
    – Sven
    May 8, 2013 at 9:04
  • 1
    Come back and let us (me!) know how it goes. May 8, 2013 at 10:47
  • 2
    @SvW: Wikipedia says that at least some CF cards have wear leveling these days. If you can't find one that does, you could always plug an SD/CF adapter to your CF/ATA adapter and use an SD card. Bonus points for using a MicroSD card in a MicroSD/SD adapter in the SD/CF adapter... May 8, 2013 at 23:28
  • 2
    They make CF cards specifically intended for industrial applications, to be used as a hard drive. They're more like tiny SSDs then a normal CF card, but they're in the CF form-factor. That may be worth looking into.
    – Fake Name
    May 9, 2013 at 8:05
2

I use an IDE SSD in one of my older laptops* (not from the 1990s, its from 2005). It works completely flawless so far. I chose the Super Talent DuraDrive ET2 with 128GB which was about 140€ (seems to be much higher on amazon.com). If you are aiming for industrial machines, I don't think you should care about a few hundred dollars and go for drives made for that environment (see ewwhite's answer). Even if the hardware could be identical, the support surely isn't.

*Did it mostly out of curiosity, and it did give a nice responsiveness boost (not that hard ... the laptop wasn't build for Win8 back then). The laptop is mostly used for in-the-field audio recording, the reduced noise and increased shock resistance helped to somewhat "justify" the "investment", mostly curiosity though ;)

0

we need to specify some values, called 'HEADS', 'SYL', 'CLUSTER', and 'LANDZ'. Unlike traditional HDDs, this drive obviously has no platters. Is there a way the drive mimics these things on IDE and can we somehow find out what these values should be for our specific drive?

Does your BIOS not support "HDD auto detection" ?

My understanding is that, for compatibility with older IBM-PC compatible BIOSes such as your system, every IDE drive with over 8 GB of storage uses fake cylinder-head-sector values of (512 bytes/sector)×(63 sectors/track)×(255 heads (tracks/cylinder) )×(1024 cylinders)=8032.5 MiB -- the so-called "8 GB limit".

My understanding is that IDE drives with less than 8 GB of storage often specify 255 heads (tracks/cylinder) and 63 sectors/track and however many cylinders are needed to fill the disk.

The landing zone on a hard drive is usually near the inner diameter -- i.e., at or beyond the largest track number.

My understanding is that many DOS-like operating systems use FAT16. With large disks, people generally set up FAT16 partitions with the maximum number of sectors per cluster -- 2^64 sectors per cluster. With the standard 512 bytes/sector, this results in 32 KiB per cluster. FAT16 is limited to at most 2^16 = 65536 clusters per partition. That is why FAT16 is limited to a maximum partition size of about 2 GiB.

I've seen IDE hard drives with a "compatibility" jumper. With the jumper in the default position, the hard drive correctly reports its actual size, which confuses early operating systems that never expected to work with such a huge hard drive. With the jumper in the "compatibility" position, the hard drive lies and says it's much smaller -- it wastes some space, but at least those early operating systems can now run.

it still doesn't boot and just says there's no drive connected.

Can you tell the difference between "no hard drive detected", vs. "found the hard drive, but it hasn't been formatted yet", vs. "I see a boot partition on this hard drive, but there's no operating system on it to boot"?

Can you boot the machine on some other media (perhaps a live CD or another hard drive with the original operating system?) and then try to format the new, blank hard drive? (That way Sector 10 will be exactly where the machine expects to find Sector 10, no matter how messed up the settings are).

0

Dunno if it's the case with all SSDs, but my Samsung 830 EVO actually reports a head/track/cylinder count for backward compatibility:Piriform Speccy

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .