If you're looking at a 29B, you should check out the dataio group on groups.io.
There were some production changes through the life of the model and early ones cannot be updated to the latest firmware, IIRC. There are also some gotchas on upgrading the memory if you want to do that.
The cartidges aren't that big a deal, it's the device support that's important. You can't program it if the 29b doesn't support it and you can't add new devices. It is really good for the devices it supports though.
A little weird to issue a correction to a really old thread, but since it's been revived...
To be perfectly accurate, the firmware where the device support resides is
not in the Model 29 mainframe. It's in the UniPak/2/2B programming adapter.
The UniPak2 and UniPak2B are functionally identical; in fact, Data I/O used to sell a kit for repackaging the 2 into a 2B. The difference is that where the 2's
biggest socket is 28p, the 2B uses the cartridge for anything bigger than a 24 - the 28, 40, micros, PLCCs, etc. And yes, the UniPak2/B requires a memory
board with higher capacity for later firmware versions. But this isn't the place for endless details; join the group mentioned above and all will be revealed.