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  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 
<== Date ==> <== Thread ==>

Subject: RE: motor record & PC6K: program upload fails
From: Mark Rivers <rivers@cars.uchicago.edu>
To: "'Konrad, Martin'" <konrad@frib.msu.edu>
Cc: "tech-talk@aps.anl.gov" <tech-talk@aps.anl.gov>
Date: Thu, 18 Jul 2013 18:41:26 +0000
Hi Martin,

I don't know about the intended behavior, since I did not write the driver.  I am just saying what the actual behavior is. (Note that there is a comment in the driver code that says that I am the original author, but that is not true.  It is a remnant of someone's cut and paste from my Newport MM4000 driver on which this driver was based).

I tend to agree with you that this seems like something that should be done before iocInit.

PC6K_num_cards is set correctly after the PC6KConfig commands, and the required motor_state structures have been allocated.

However, the motor_init() code is where the connection to the asyn driver occurs, and that does not happen until iocInit.

If the code that initializes the connection to the hardware, like:

	/* Initialize communications channel */
	success_rtn = pasynOctetSyncIO->connect(cntrl->asyn_port, 
                                            cntrl->asyn_address, &cntrl->pasynUser, NULL);

were moved from motor_init() into PC6KConfig() then you would be able to call PC6kUpLoad before iocInit().

Mark

-----Original Message-----
From: Konrad, Martin [mailto:konrad@frib.msu.edu] 
Sent: Thursday, July 18, 2013 1:13 PM
To: Mark Rivers
Cc: tech-talk@aps.anl.gov
Subject: Re: motor record & PC6K: program upload fails

Hi Mark,
> So your PC6KUpLoad command must not be given before iocInit, it must be after iocInit.
But would mean we reprogram the controller while the IOC is running and
record processing is in full progress, doesn't it? That sounds quite
dangerous to me. I was expecting it to program the controller before
record processing starts. Can you please confirm that running it after
iocInit really is the intended behavior?

Martin


Replies:
Re: motor record & PC6K: program upload fails Pearson, Matthew R.
References:
motor record & PC6K: program upload fails Konrad, Martin
Re: motor record & PC6K: program upload fails Konrad, Martin

Navigate by Date:
Prev: Re: motor record & PC6K: program upload fails Konrad, Martin
Next: Re: motor record & PC6K: program upload fails Pearson, Matthew R.
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 
Navigate by Thread:
Prev: Re: motor record & PC6K: program upload fails Konrad, Martin
Next: Re: motor record & PC6K: program upload fails Pearson, Matthew R.
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 
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 ·