Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

How to avoid running updateNIDriver safter restoring from clonezilla image

I'm using openSUSE 11.3 with niDAQmx 8.0.2 driver

My HW is NI PXI-6229

 

Basically I develop my software on a test PC when SW passed all the tests I make an image of that hard-disk and than use it on many other PCs which all have the same configuration.

 

The sequence of the actions if following:

 

1. Save Master copy of the SW to the clonezilla image

2. Restore Master copy to a clone PC with the same HW configuration.

3. if I run nilsdev on that clone PC I will get message that my driver is not correctly configured and I have to run updateNIDrivers

4. after running updateNIDrivers (apparently all kernel modules are recompiled and updated) I can run nilsdev

result of the command is the following:

NI PXI-6229: "Dev2"
NI PXI-6229: "Dev1" [Not Present]

 

My understanding from this thread: http://forums.ni.com/t5/Multifunction-DAQ/How-to-have-always-my-card-in-Dev1/m-p/1021887#M53586

that DAQmx configuration database has been updated and system is thinking that somebody removed Dev1 and inserted Dev2

 

Next time when I create a Master copy (assume new SW features are added) the number will change again from Dev2 to Dev3

and nilsdev will show

NI PXI-6229: "Dev3"
NI PXI-6229: "Dev2" [Not Present]

NI PXI-6229: "Dev1" [Not Present]

 

I have a workaround for this but I have not tested all corner cases.

Will it hang after say Dev9 to Dev10? or the number will continue to grow indefinitely?

 

Is there a way to purge DAQmx configuration database?

Where DAQmx configuration database is stored?

Do I have to run updateNIDrivers always or is there some other way? I don't want to touch my master copy SW after restoring image to a clone PC.

 

Kind regards,

 

Sergey

 

0 Kudos
Message 1 of 4
(3,104 Views)

Hello,

 

Thanks for your posting here. If I understand you correctly you can use the vi which I posted with this email as an attachment.

Hope this helps!

 

Regards,

Hossein

0 Kudos
Message 2 of 4
(3,090 Views)

I don't use LabView - all my code is written in Python ( C libriaries are imported with ctype)

 

Could you please explain what that code of yours is doing?

 

My setup is a bit more complex than I described above. I have 2 PXI-6229 DAQ cards.

After several experiments with installation of NI drivers I got the situation below:

 

devPC:> nilsdev
NI PXI-6229: "Dev2"
NI PXI-6229: "Dev1"
NI PXI-6229: "Dev1" [Not Present]

ANSI C API of NI has function

DAQmxGetSysDevNames

If I run it I get only "Dev2"

 

So coming back to my original question

Is there a way to purge DAQmx configuration database?

Where DAQmx configuration database is stored?

 

0 Kudos
Message 3 of 4
(2,943 Views)

Sorry about my delay.

What my program does is actually when you use the executable or the  installer of your code which will uses a hardware, in the other PC or host, then you just put the serial number of your hardware in it and it will automatically find the correct Dev in your MAX. It means that you don't need to try to clean your MAX and put your device again in your system to make sure that it will be detected in the same Dev in MAX.

 

I hope you can solve your problem and if you have any question, just ask.

 

Kind regards,

 

Hossein

0 Kudos
Message 4 of 4
(2,907 Views)