07-16-2018 04:19 PM
Attempting to operate the Ni8452 in I2C high speed mode using the Ni845x.dll (v16.0.0.49152) installed on a Windows 10 PC and seeing an address ack error when calling ni845xI2cWriteRead() using the basic API. The address seen on the bus (i.e. 04, see attached trace) is not correct, but this is not what was set via ni845xI2cConfigurationSetAddress. After changing the HS enable bit back to 'disabled', the call then works correctly (address 16 is seen on the bus and the data is read correctly). The clock rate has been left at the default value (reads 1700). Any pointers on how to get this working?
Solved! Go to Solution.
07-17-2018 06:35 PM
Very interesting... definitely sounds like unexpected behavior.
Are you able to confirm if the behavior exists in the most recent version of the driver (18.0)?
07-17-2018 09:50 PM
This is the most recent version of the driver from what I can tell. We have NI-Visa 17.5 installed currently and the Ni845x.dll file creation date is Friday March 23rd, 2018 10:38am. The files are dated the same in 18.0 (i.e. 3/23/18), so it doesn't look like there have been any changes.
08-07-2018 07:14 PM - edited 08-07-2018 07:14 PM
Since there hasn't been any progress with this, wondering if it's possible to get the source for the Windows DLL so we can figure this out ourself?
08-08-2018 04:56 PM
Didn't mean to leave you hanging!
I don't think there is much chance of getting the source code however since this seems to be unexpected/wrong behavior I'd recommend you file a bug report either online or by calling in.
or
866-275-6964
08-20-2018 04:32 PM
The problem turned out to be with the device being tested and the i2c decoder on the scope, not the software. The DLL was correctly reporting the NACK. Thanks for the help!