From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Linux Users

cancel
Showing results for 
Search instead for 
Did you mean: 

PCI 6509 with loopback cabling.

Hello,

This may seem a slightly odd thing to do, but I'm doing it for the purpose of writing the application without needing a number of machines.

I'm using the ANSI-C interface for NI-DAQmx 8.0.2 on SUSE Linux.

I've got a PCI 6509 connmected to a screw terminal.

I've then connected the input/output ports for my application to spare ports on the terminal.

I've written an application for testing that will access these spare ports.

i.e. the signals will be output looped round onto different ports and fed back into the same card on the same machine.

I get the error..

-50103

NI Platform Services: The specified resource is reserved. The operation could not be completed as specified.

Is it possible to have two applications talking to one card?

If I run one of the applications it appears, on the surface, to be OK. But there's not data being transmitted.

0 Kudos
Message 1 of 4
(5,319 Views)

I thought it's possible to have 2 applications talking to one card, assuming that both apps don't use the same resources on the board. This depends on the board and the policy and granularity of the resource manager in the driver. I'm sorry, I don't know anymore detail what the answer is on that card.

Message 2 of 4
(4,333 Views)

Hi jonnnnnnn,

Adding the same digital port or line to multiple tasks and running (or just reserving) the tasks at the same time will cause that error. Is that what you're doing?

There is a way to have a digital input task snoop on a port or line that is used by another task. Use the DAQmxSetTristate() function to set the DI.Tristate property to false. This bypasses the reservation mechanism that prevents multiple tasks from sharing the same port or line. It also prevents the digital input task from trying to tristate the line, so it doesn't interfere with any digital output tasks that are driving the line (or may have driven the line in the past).

Brad

---
Brad Keryan
NI R&D
Message 3 of 4
(4,333 Views)

Thanks for the replies, folks

>Adding the same digital port or line to multiple tasks and

>running (or just reserving) the tasks at the same time will

>cause that error. Is that what you're doing?

I'm creating two different channels using different lines. i.e. connecting pin 1 to pin 2 and creating a channel on each.

Anyway I used a card in a second machine and have found issues my code. I'm starting to wade through the examples, which is proving more productive, to build up what I need to do.

Cheers.

0 Kudos
Message 4 of 4
(4,333 Views)