EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: asynDriver R4-21: a possible patch for asynRecord.c: test on GigE camera
From: Kate Feng <[email protected]>
To: Mark Rivers <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Mon, 17 Jun 2013 13:11:51 -0400
Hi Mark,

    I have tested the updated code, and it works fine.

Thanks,
Kate

On 06/14/2013 06:11 PM, Mark Rivers wrote:
Hi Kate,

Thanks for fixing the problem with the Prosilica driver connection management when there were multiple cameras per IOC.  I've changed the Prosilica driver similar to your patch, but using a linked list rather than an array to hold the list of cameras in the IOC.

As we've discussed offline, I don't think the proposed patch to the asynRecord is necessary.  The asyn part of connection management is working OK.

I've committed the Prosilica changes to SVN, so you can test them if you have a chance.

Thanks,
Mark


-----Original Message-----
From: Feng, Kate [mailto:[email protected]]
Sent: Thursday, June 06, 2013 9:54 AM
To: [email protected]
Cc: Mark Rivers
Subject: RE: asynDriver R4-21: a possible patch for asynRecord.c: test on GigE camera

Hi,

      I got a chance to test the interactions of connect/disconnect between two
Prosilica GigE cameras within one Linux IOC. For your consideration, the attached patches
are based on areaDetectorR1-9-1, and asyn4-21.  In addition to the bug fix, which was
contributed on May 16, it fixes the following bugs:

1) Originally, only the 1st camera responded to the connect/disconnect callback function
due to one of the rules for the function PvLinkCallbackRegister(), which is
"The same callback function with the same event may not be registered twice".
Thus, the IOC did not know the connect/disconnect of other cameras (e.g. the 2nd camera).
The prosilica.diff patch fixes this problem by registering a static cameraLinkCallback()
function only once. It handles the connect/disconnect of all the cameras in the IOC.
2) Originally, if more than one camera is not connected at the start of the IOC,
it would be difficult to tell which camera is reconnected because the IDs
of the unconnected cameras might be unknown.  Thus, I added 'uniqueIP' as a private variable
in the 'C++ class prosilica' to keep track of the IP addresses of each cameras in the system
in case the unique ID is unknown. By comparing the unique ID or the IP address, one can match
the newly connected camera with the right one in the EPICS database (i.e. PVs).

     The patch should work if there are more than two cameras. Hope that this helps.

     Cheers,
     Kate Feng

________________________________________
From: [email protected] [[email protected]] on behalf of Kate Feng [[email protected]]
Sent: Thursday, May 16, 2013 2:14 PM
To: [email protected]
Subject: asynDriver R4-21: a possible patch for asynRecord.c: test on GigE      camera

Hi,

     I am using the asynDriver R4-21 to run Mark River's areaDetectorR1-9-1
software on a Prosilica (i.e. Allied) GigE camera.  Everything works
very well
except when the camera becomes offline (e.g. the Ethernet cable for the
Prosilica GigE camera is disconnected). Thankfully, the medm screen
indicated
the "disconnect" status when the Ethernet cable for the Prosilica GE
camera is
disconnected.  However, one could still hit the 'acquire start/stop' and
other buttons
via the medm GUI and access the PVs.

    One would wish to have a more detectable effect so that one could not
access
the camera's PVs, when the camera became offline.  The attached patch
will disable
the PVs access, if the Ethernet cable for the GigE camera is
disconnected.  If
the camera becomes online via Ethernet, the PVs will be accessible again.

    The patch is tested with the  GigE camera.

    Cheers,
    Kate Feng






References:
asynDriver R4-21: a possible patch for asynRecord.c: test on GigE camera Kate Feng
RE: asynDriver R4-21: a possible patch for asynRecord.c: test on GigE camera Feng, Kate
RE: asynDriver R4-21: a possible patch for asynRecord.c: test on GigE camera Mark Rivers

Navigate by Date:
Prev: Re: EPICS device disconnects and reconnects Kate Feng
Next: Re: EPICS device disconnects and reconnects Jason Abernathy
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: asynDriver R4-21: a possible patch for asynRecord.c: test on GigE camera Mark Rivers
Next: Modbus Zenon Szalata
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 20 Apr 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·