I tried to implement I2C using PXIe-6548. But it is giving me an error when I try to set drive type as 'open collector'. Is there any niHSDIO software upgrade required to set the drive type property to 'open collector' and not 'active drive'?
I have niHSDIO 1.7.0 installed.
What is the error that you are receiving when trying to set the drive type as open collector?
According to the NI Digital Waveform Generator/Analyzer Help, "NI 6544/6545/6547/6548 devices support the open collector drive type for static generation operations, which means that they can set the configured data channels to a high-impedance (Z) state when the channels are configured to drive the Generation Voltage High Level."
If you are trying to configure the drive type as open collector for any operation other than static generation then you should receive an error.
I think you can configure a channel to drive 'z' not only in static but also in dynamic generation. Beceause, when I set the 'supported data states' property to '0,10,H,L,X,Z' it worked fine.
Where are you setting this "supported data states" property?
According to the HSDIO Help the open collector drive type is supported for dynamic generation with 655x devices. For your device, the 6548, you can only use the open collector drive type for static generation:
On second thought, since you are trying to do I2C I think that you will want to use the high-impedance Z state (not open collector) since the 6548 can do per cycle tri-state like the 655x devices. Don't try to configure the board to be open collector. Instead just set up a dynamic generation session and set up the cycle tristating.
Look over this tutorial for more information about per-cycle control and stimulus response.
You might also find this reference library useful when creating your waveforms to generate.