Many programmers / engineers suffer from a mild OCD. To them, it just feels wrong if the minor rev doesn't match exactly, even if there is no practical advantage for doing so.
Be kind to us them; they suffer for their art.
Yet
you they seem to get real upset when I say "Oh, I always just disable keying
as a first step of troubleshooting / permanently after machine acceptance."
"But... But... there could be different features on different firmware levels!"
"It's a basic 16 point IO card or a drive with a command word and a speed reference. It's
most likely going to work. Requiring Bubba the shift electrician (as Ron Beaufort would call him) to determine the firmware versions and flash the replacement module at 3AM is
guaranteed not to work.
A few years back I got a middle-of-the-night call in after a shift electrician was struggling and failed to find the appropriate firmware for a replacement Powerflex 70 drive. I came in, looked at the IO tree said "$#%^ing keying"
, disabled it, and immediately the replacement drive worked.
I've also had untold amounts of grief with Devicenet and keying. Apparently when a 1770-KFD is connected to a network with a scanner card, it communicates through the scanner card (at least in my experience with a SLC). If the scanner will ignore a node because of keying, the KFD won't see it either.