LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Modifying complex events has several bugs

If had a few nasty problems with dealing with complex event sources (DAQmx and IMAQdx). This is in LV 8.5 with Vision 8.5 and Vision Acquisition 8.5 and and DAQmx 8.6

1. Modifying an event registration with with an event with more than one input (ie Change Detection Event on a Digital signal), can mess up the event registration.
for example in the block diagram of DAQmx.vi detach the user event, shrink the event down to just the DAQmx event now try to reattach the user event.

2. Registering Events unregisters other dynamic events (or perhaps none of dynamic events work). Run Simple.vi to see whats supposed to happen (since it just uses user events). You can trigger the user event after Registering another user event. In the DAQmx and IMAQdx vi's the user events stop working.

3. Registering events doesn't match match the input event registration, to see this add a camera attach event to the IMAQdx.vi (you may need to remake the first event registration due to problem one). Now look at the Reregister event node in event structure (I've messed it up with different out comes but it never seems to work right if there's more than one event with multiple inputs).

As a side note IMAQ Close Camera can return before it's done fully closing (that's why there is a delay in the IMAQdx example. Since If you Reregister the camera it'll error trying to open an already opened camera.

As for what I'm really using this for, I'm capture video from a firewire camera that can be triggered by a digital input on my DAQ board. And I have to stop acquiring images if the camera becomes detached, since if I unplug and plug back in my camera during a capture it blue screens my computer (which is rather bad).
Message 1 of 2
(2,770 Views)
Hi Matt,

This looks like two separate issues.  The first is that disconnecting events after connecting them to the Register for Events VI does not remove the elements from the VI.  This was reported to R&D (# 4GKCDSUS) for further investigation.  If you have already connected events to the Register for Events VI and need to change them, the workaround is to delete the Register for Events VI and place a new one on your block diagram.

The second issue is the different behavior when re-registering events, depending on whether or not the DAQmx or IMAQdx drivers were called in the re-registration.  This has been reported to R&D (# 4GKAAKUS) for further investigation.  The workaround for this is to explicitly re-register all events in the event structure.

Thanks for the feedback.
Regards,
Brandon M.
Applications Engineer
National Instruments
0 Kudos
Message 2 of 2
(2,730 Views)