Jump to content


Photo
- - - - -

PCI Problem: If 2 DUTs are installed then BAR0 reads return 0

pci visa driver development

  • Please log in to reply
4 replies to this topic

#1 grapnel

grapnel

    I want a LabVIEW icon under my name!

  • Members
  • 3 posts
  • Version:LabVIEW 2010
  • Since:2004

Posted 21 November 2011 - 08:12 PM

Hi there, This is my first posting on lava. A coworker pointed me here after I told him I had reached my limit trying to debug this hardware issue. I have a PMC device I am trying to test. The test plan calls for putting 2 of the devices on PMC-PCI adapter cards and installing them in a Windows PC, then running tests.

When I put just one of the devices in the PC I didn't have a problem. I made a driver using NI's VISA driver wizard. And I was able to read from the PCI configuration and BAR0 address spaces of the device using the VISA test panel in MAX.

However, when I plugged in the second DUT I started having a strange issue. I could still read from the configuration spaces from both devices, but one of the two DUTs always returned zero when I read from it's registers in the BAR0 address space, the other worked normally. No errors showed in Windows Device Manager.

So far I found a workaround that gets both cards working, but I still haven't figured out the root of the problem.
  • Power up the PC with both cards installed
  • After Windows boots up, switch off the power on one of the PCI-PMC adaptor cards
  • Then in the Windows Device Manager click the "Scan for hardware changes" button and check that one of the cards is gone
  • Switch the carrier card back on
  • "Scan for hardware changes" again and click through Windows' "Found new Hardware" dialogue to re-install the driver
After that rigamarole both cards work untill I restart the PC. Does this issue sound familiar to anyone out there? Can you offer some suggestions for steps I should take for diagnosing PCI problems?

#2 asbo

asbo

    I have no idea what you're talking about... so:

  • V I Engineering, Inc.
  • 1,273 posts
  • Version:LabVIEW 2011
  • Since:2008

Posted 21 November 2011 - 08:39 PM

On the surface, it doesn't seem like a VISA issue, more like a device driver issue. Are you using the latest driver from the manufacturer?

#3 grapnel

grapnel

    I want a LabVIEW icon under my name!

  • Members
  • 3 posts
  • Version:LabVIEW 2010
  • Since:2004

Posted 21 November 2011 - 11:23 PM

Hey thanks for replying. I don't have a driver from the manufacturer because they haven't released one yet, instead I used NI's VISA driver wizard to make a default PCI driver for testing purposes. I'm hoping to get some words of wisdom to help me find what is causing the problem.

#4 asbo

asbo

    I have no idea what you're talking about... so:

  • V I Engineering, Inc.
  • 1,273 posts
  • Version:LabVIEW 2011
  • Since:2008

Posted 22 November 2011 - 12:13 AM

Unfortunately, I don't have any experience with VISA driver generation.

Of course, my first suggestion is to get in touch with NI and ask how to better diagnose this issue and if they've seen it before. A situation where a generated driver is used on multiple identical devices may not be that common and could have some issues.

Also, you could use NI's I/O Trace to log everything that's going on with VISA - I don't know if this will catch what the driver is doing, but an I/O trace is usually something that NI requests to troubleshoot hardware-related issues. Additionally, you could check the Windows Event Log to see if there's any information there - again, I don't know if the driver will report there, but it's worth checking.

#5 grapnel

grapnel

    I want a LabVIEW icon under my name!

  • Members
  • 3 posts
  • Version:LabVIEW 2010
  • Since:2004

Posted 22 November 2011 - 05:14 PM

Those are great suggestions, I'll take a look. :D





Also tagged with one or more of these keywords: pci, visa, driver development