Solving the HP16500 Compact Flash card mystery - Page 1
Forum section: electronics / testgear

author: av500
author_rank: Contributor
timestamp: July 11, 2025, 11:33:10 am
content: The HP16500 series of logic analyzers comes in three versions: the HP16500A which only runs from LIF formatted floppies and the HP16500B and HP16500C which also incorporate an IDE hard drive, can use MSDOS formatted floppies and where the HP16500C has the most powerful CPU, supports the most memory (mine runs with 64MB now) and has added networking capabilities out of the box.By now all the original IDE drives are either failing after such a long time or they make rather strange sounds indicating that their end is rather near too. The immediate idea is to replace them with solid state storage, either in the form of an IDE SSD or using compact flash cards which have an electrical interface that is compatible to IDE/ATA.IDE SSD are rare and/or expensive and you need to take into account that the HP16500B/C operating system only supports FAT12 or FAT16 formatted drives and is thus limited to a drive size of 2GB.So the easiest way to replace the aging spinning disks is to use a 40-pin IDE to CF adapter and a compact flash card. Sadly a quirk in the 16500 OS makes this not such an easy task.Many users have found out that the 16500 are very picky about which CF cards actually work, some are rejected outright and the unit does not even boot, others can seemingly be formatted but then no files can be written to the cards. Some people assume it’s due to the specific brand of the IDE to CF adapter, others think that the 16500 issues some special IDE commands that certain cards don’t support. The real reason is much simpler and unfortunately makes finding a supported card a real game of trial and error.Out of the whole IDE/ATA specification, the HP16500B/C only uses three commands, namely Read Sector (20h), Write Sector (30h) and Identify Drive (ECh). The Identify Drive command returns information about the drive parameters, like model name and serial number but most importantly the drive size and geometry. Amongst the data returned is also one field named “Number of unformatted bytes per sector” which has been present in the earliest versions of the ATA specifications that I could find but for which there was never given any explanation is to what it actually means.At the time the HP16500B/C were made all hard drives had a sector size of 512 bytes and this number is mentioned explicitly in the specifications several times, without referring to “Number of unformatted bytes per sector”. This field is present up to the official ATA-1 specification but was then quickly retired in the ATA-2 spec of 1996 marking it as “Vendor specific (obsolete)”When the HP16500B came out in 1994, I assume all hard drives would report the “number of unformatted bytes per sector” as 512 and so the 16500 OS uses that number in order to format and operate the connected hard disk (or SSD or CF card)Sadly old and current compact flash cards report all kinds of sector sizes. Out of the random collection of cards I acquired over the years or bought specifically in the past weeks, I have seen sizes of 512 (correct), 64, 528, 576 and even 0. For some cards I could find the data sheets and confirm these number there too.The 16500 dutifully tries to create a FAT16 filesystem using the number as reported by the card but then fails to create a file.Only if the card reports a correct sector size of 512 the card will work.I have also tried to outsmart the 16500 by using SD cards and an SD to CF adapter of which I have two, one bought in the early 2000s for which I can find no reference on the net and one acquired recently and which uses the common FC1307A chip inside. The early SD to CF adaptor gives a sector size of 512 for all SD cards and works, the newer model sadly always reports 576 and thus cannot be used either.here are all the cards and adapters I tried:old SD to CF adapter:32 MB SD Sandisk:works512 MB MMC extrememory:works1 GB SD Sandisk:works4 GB SD: not recognized due to 2GB limitnew SD to CF adapter: reports 576, does not work with any SD card16 MB CF Canon:works32 MB CF Unknown:works64 MB CF HITACHI:works64 MB CF extrememory: reports 0, unit does not boot256 MB CF DANE-ELEC: reports 528, does not work256 MB CF Sandisk: reports 576, does not work512 MB CF Sandisk: reports 576, does not work1 GB CF iCF4000 Innodisk (bought in 2025): reports 512, works1 GB CF MemoryPartner (AliExpress, 2025): reports 512,works2 GB CF MemoryPartner (AliExpress, 2025): reports 64, does not work4 GB CF MemoryPartner (AliExpress, 2025): reports 512, but is larger than 2 GB so does not workAs theInnodisk iCF4000has been reported to work by others before, is reasonably sized and seems to be easily available at the time of writing, it’s the card I would recommend to get and use with the HP16500B/C. I got a few of them recently and paid ~$7 per card

author: aeg
author_rank: Regular Contributor
timestamp: July 12, 2025, 11:14:00 am
content: Thank you for the great work in solving the mystery!You may be aware that there is a list of compatible cards on KO4BB's Wiki:https://www.ko4bb.com/doku2015/doku.php?id=test_equipment:hard_drive_conversion_to_cf_for_hp16500I added your information to the Wiki page.Could this also be why Quantum is the only brand of spindle drive that works in the 16500?Someone once said they saw a 16500 sending vendor specific commands to a drive, but it could have been a mistake.Now that we know the secret, it might be possible to patch the 16500's system software to always substitute 512 into the Identify Drive response.

author: av500
author_rank: Contributor
timestamp: July 12, 2025, 01:13:20 pm
content: Quote from: aeg on July 12, 2025, 11:14:00 amthanks for that, I applied to get a login there, but you did it for me!

author: 44kgk1lkf6u
author_rank: Regular Contributor
timestamp: July 12, 2025, 09:43:40 pm
content: When the device doesn't like some flash card or hard drive, it may help to create a filesystem using a computer.My 16500C came with a 4 303 756 800 byte hard drive. I don't know whether it is the original or if the previous owner replaced it. I tried to save the configuration (stuff such as what the signals were called). It said there was not enough space on the disk. It said the file system only had about 8 MiB of space in total. That was barely enough for the required files. I zeroed the drive using a computer. Then I used the logic analyzer to format the drive. It still only created a FAT12 file system that was only about 8 MiB in size. I created a 128 MiB FAT16 file system using the computer. I put the files inside using the computer. The device could load the files. It showed that there was 128 MiB of space. The link contains some information about the format. Though not everything seems to apply to my case. It says that the device uses a sector size of 32768 bytes. But in my case it only created a FAT12 file system that had sectors of 512 bytes. Maybe there are different versions of the firmware. When I created the file system using the computer, I did not bother to use large sectors in order to use the entire 4 GiB of space. 128 MiB was enough. I only had to swap the byte order using dd conv=swab.https://opengpib.sourceforge.net/HP16500CHardDriveNotes.html

author: av500
author_rank: Contributor
timestamp: July 14, 2025, 09:23:08 am
content: Quote from: 44kgk1lkf6u on July 12, 2025, 09:43:40 pmthis looks more like an overflow error in the firmware to me, where it sees a 4GB drive but thinks its a small drive with <=16MB and thus formats it in FAT12...