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  2013  <20142015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: RE: Newport XPS-Q8 and Motor Record - armv5teb architecture
From: Mark Rivers <rivers@cars.uchicago.edu>
To: Tonia Batten <Tonia.Batten@lightsource.ca>, "Tech-talk@aps.anl.gov" <Tech-talk@aps.anl.gov>
Date: Sat, 3 May 2014 22:32:00 +0000
Folks,

Tonia Batten is having a very strange problem that I cannot understand, perhaps someone on tech-talk has an idea.

She is using the Newport XPS motor driver.  It works fine when it is run on an Intel machine.  However, when it is run on an armv5teb she is seeing a behavior I cannot understand.  This happens both with the older model 2 XPS driver (C code), as well as the newer model 3 driver (C++).

The asyn device support defines the following message structure:

typedef struct {
    motorCommand command;
    interfaceType interface;
    int ivalue;
    double dvalue;
} motorAsynMessage;

In the code that is called from the motor record it does the following:

   /* Make a copy of asynUser.  This is needed because we can have multiple
    * requests queued.  It will be freed in the callback */
    pasynUser = pasynManager->duplicateAsynUser(pasynUser, asynCallback, 0);
    pmsg = pasynManager->memMalloc(sizeof *pmsg);
    pmsg->ivalue=0;
    pmsg->dvalue=0.;
    pmsg->interface = float64Type;
    pasynUser->userData = pmsg;

    switch (command) {
...
    case SET_VELOCITY:
        pmsg->command = motorVelocity;
        pmsg->dvalue = *param;
        break;
 ...

    /* Queue asyn request, so we get a callback when driver is ready */
    pasynUser->reason = pPvt->driverReasons[pmsg->command];
    status = pasynManager->queueRequest(pasynUser, 0, 0);

So in the case of the SET_VELOCITY it copies the desired velocity to pmsg->dvalue.  It calls pasynManager->queueRequest to call back device support when the driver is ready.

This is the start of the code in the device support callback function:

static void asynCallback(asynUser *pasynUser)
{
    motorAsynPvt *pPvt = (motorAsynPvt *)pasynUser->userPvt;
    motorRecord *pmr = pPvt->pmr;
    motorAsynMessage *pmsg = pasynUser->userData;
    int status;
    int commandIsMove = 0;

    pasynUser->reason = pPvt->driverReasons[pmsg->command];

Tonia has added some debugging to the device support code.  When the velocity is being set, for example the code called by the motor record prints the following:

2014/05/02 10:10:56.266 devMotorAsyn::send_msg: SMTR1608-9-B20-05:brag command=7, pact=1, value=45000.000000
devAsynMotor::build_trans, calling queueRequest, pmsg=0x60b3cc, command=7, interface=1, dvalue=45000.000046

This is fine, the value 45000. has been copied to pmsg->dvalue

However, when pasynManager does the callback to device support from the queueRequest she sees the following:

devAsynMotor::asynCallback, entry, pmsg=0x60b3cc, command=7, interface=1, dvalue=0.000000
2014/05/02 10:10:56.308 devMotorAsyn::asynCallback: SMTR1608-9-B20-05:brag command=7, ivalue=0, dvalue=0.000000, pasynUser->reason=7
2014/05/02 10:10:56.310 asynMotorController:writeFloat64:: axis=0, function=7, value=0.000000

Note that pmsg has the same address (=0x60b3cc,), so it is getting a pointer to the same address as before the queueRequest.

However, pmsg->dvalue is now 0, rather than 45000.

Any idea how this could happen?

Thanks,
Mark


________________________________
From: Tonia Batten [Tonia.Batten@lightsource.ca]
Sent: Friday, May 02, 2014 12:18 PM
To: Mark Rivers
Subject: RE: Newport XPS-Q8 and Motor Record - armv5teb architecture

Hi Mark,

I am experiencing the same problem using the model 3 XPS driver.  I have included details from my testing below.  I can’t see anything in asyn-4-22/asyn/asynDriver/asynManager.c queueRequest function that would cause this.  Any insight you can provide is appreciated.

Regards, Tonia

Here is my st.cmd file.
#!./bin/linux-armv5teb/ideasMonoMtr

## You may have to change ideasMonoMtr to something else
## everywhere it appears in this file

#< envPaths

## Register all support components
dbLoadDatabase("./dbd/ideasMonoMtr.dbd",0,0)
ideasMonoMtr_registerRecordDeviceDriver(pdbbase)

## Load record instances
dbLoadRecords("./db/IDEAS_MonoMtr.db")
dbLoadRecords("./db/IDEAS_MonoPseudoMtr.db")
dbLoadRecords("$(MOTOR)/db/motorUtil.db", "P=SMTR1608-9-B20-05:")

# asyn port, IP address, IP port, number of axes,
# active poll period (ms), idle poll period (ms),
# enable set position, set position settling time (ms)
XPSCreateController("XPS1", "192.168.0.254", 5001, 1, 10, 5000, 0, 5000)

# asynPort, IP address, IP port, poll period (ms)
XPSAuxConfig("XPS_AUX1", "192.168.0.254", 5001, 500)

# XPS asyn port,  axis, groupName.positionerName, stepSize
XPSCreateAxis("XPS1",0,"S.Pos","10000")

asynSetTraceMask("XPS1",0,0xFF)
asynSetTraceIOMask("XPS1",0,0x2)

# XPS asyn port,  max points, FTP username, FTP password
# Note: this must be done after configuring axes
XPSCreateProfile("XPS1", 2000, "Administrator", "Administrator")

iocInit

Here is the asyn Trace information when I try and move the motor.
2014/05/02 10:10:56.253 SMTR1608-9-B20-05:brag devMotorAsyn::update_values, needUpdate=0
2014/05/02 10:10:56.257 devMotorAsyn::send_msg: SMTR1608-9-B20-05:brag command=5, pact=1, value=1000.000000
devAsynMotor::build_trans, calling queueRequest, pmsg=0x597bd4, command=6, interface=1, dvalue=1000.000001
2014/05/02 10:10:56.260 XPS1 addr 0 queueRequest priority 0 not lockHolder
2014/05/02 10:10:56.262 devMotorAsyn::send_msg: SMTR1608-9-B20-05:brag command=6, pact=1, value=10000.000000
devAsynMotor::build_trans, calling queueRequest, pmsg=0x60b224, command=5, interface=1, dvalue=10000.000012
2014/05/02 10:10:56.266 XPS1 addr 0 queueRequest priority 0 not lockHolder
2014/05/02 10:10:56.266 devMotorAsyn::send_msg: SMTR1608-9-B20-05:brag command=7, pact=1, value=45000.000000
devAsynMotor::build_trans, calling queueRequest, pmsg=0x60b3cc, command=7, interface=1, dvalue=45000.000046
2014/05/02 10:10:56.267 XPS1 addr 0 queueRequest priority 0 not lockHolder
2014/05/02 10:10:56.268 devMotorAsyn::send_msg: SMTR1608-9-B20-05:brag command=0, pact=1, value=246415.275059
2014/05/02 10:10:56.268 devMotorAsyn::send_msg: SMTR1608-9-B20-05:brag command=8, pact=1, value=0.000000
devAsynMotor::build_trans, calling queueRequest, pmsg=0x60b574, command=0, interface=1, dvalue=0.000000
2014/05/02 10:10:56.269 XPS1 addr 0 queueRequest priority 0 not lockHolder
2014/05/02 10:10:56.272 asynManager::portThread port=XPS1 callback
devAsynMotor::asynCallback, entry, pmsg=0x597bd4, command=6, interface=1, dvalue=0.000000
2014/05/02 10:10:56.273 devMotorAsyn::asynCallback: SMTR1608-9-B20-05:brag command=6, ivalue=0, dvalue=0.000000, pasynUser->reason=6
2014/05/02 10:10:56.274 asynMotorController:writeFloat64:: axis=0, function=6, value=0.000000
2014/05/02 10:10:56.274 asynManager::portThread port=XPS1 callback
devAsynMotor::asynCallback, entry, pmsg=0x60b224, command=5, interface=1, dvalue=0.000000
2014/05/02 10:10:56.285 devMotorAsyn::asynCallback: SMTR1608-9-B20-05:brag command=5, ivalue=0, dvalue=0.000000, pasynUser->reason=5
2014/05/02 10:10:56.291 asynMotorController:writeFloat64:: axis=0, function=5, value=0.000000
2014/05/02 10:10:56.299 SMTR1608-9-B20-05:brag devMotorAsyn::update_values, needUpdate=0
2014/05/02 10:10:56.303 asynManager::portThread port=XPS1 callback
devAsynMotor::asynCallback, entry, pmsg=0x60b3cc, command=7, interface=1, dvalue=0.000000
2014/05/02 10:10:56.308 devMotorAsyn::asynCallback: SMTR1608-9-B20-05:brag command=7, ivalue=0, dvalue=0.000000, pasynUser->reason=7
2014/05/02 10:10:56.310 asynMotorController:writeFloat64:: axis=0, function=7, value=0.000000
2014/05/02 10:10:56.311 asynManager::portThread port=XPS1 callback
devAsynMotor::asynCallback, entry, pmsg=0x60b574, command=0, interface=1, dvalue=0.000000
2014/05/02 10:10:56.314 devMotorAsyn::asynCallback: SMTR1608-9-B20-05:brag command=0, ivalue=0, dvalue=0.000000, pasynUser->reason=1
2014/05/02 10:10:56.316 XPSAxis:move: Set XPS XPS1, axis 0 move to 0.000000, min vel=0.000000, max_vel=0.000000, accel=0.000000, minJerk=0.005000, maxJerk=0.050000
2014/05/02 10:10:56.325 SendAndReceive unexpected response =-17,GroupMoveAbsolute (S.Pos,5.66625162537e-311),EndOfAPI
2014/05/02 10:10:56.329 XPSAxis:move: Error performing GroupMoveAbsolute[XPS1,0] -17
2014/05/02 10:10:56.330 SMTR1608-9-B20-05:brag devMotorAsyn::statusCallback new value=[p:60000.000000,e:60007.000000,s:4980]  P
2014/05/02 10:10:56.332 asynMotorController:writeFloat64: Set driver XPS1, axis 0 move absolute to 0.000000, base velocity=0.000000, velocity=0.000000, acceleration=0.000000
2014/05/02 10:10:56.334 asynMotorController:writeFloat64 error, status=3 axis=0, function=1, value=0.000000
2014/05/02 10:10:56.336 devMotorAsyn::asynCallback: SMTR1608-9-B20-05:brag pasyn{Float64,Int32}->write returned
2014/05/02 10:10:56.337 SMTR1608-9-B20-05:brag devMotorAsyn::update_values, needUpdate=1
2014/05/02 10:10:56.344 XPSAxis:poll: [XPS1,0]: S.Pos axisStatus=11
2014/05/02 10:10:56.353 SMTR1608-9-B20-05:brag devMotorAsyn::statusCallback new value=[p:60000.000000,e:60007.000000,s:4982]
2014/05/02 10:10:56.354 SMTR1608-9-B20-05:brag devMotorAsyn::update_values, needUpdate=1

epics> dbpr SMTR1608-9-B20-05:brag 10
ACCL: 0.2           ACKS: NO_ALARM      ACKT: YES           ADEL: 0
ALST: 0             ASG:                ASP: (nil)          ATHM: 0
BACC: 0.2           BDST: 0             BKPT: 00            BVEL: 1
CARD: 0             CBAK: 0x597710      CDIR: 1             CNEN: Disable
DCOF: 0             DESC: Mono Brag     DHLM: 59
DIFF: 18.6415275058764                  DINP:CONSTANT       DIR: Pos
DISA: 0             DISP: 0             DISS: NO_ALARM      DISV: 1
DLLM: 1             DLY: 0              DMOV: 1             DOL:CONSTANT
DPVT: 0x597728      DRBV: 6             DSET: 0x47f3d0      DTYP: asynMotor
DVAL: 24.6415275058764                  EGU: degrees        ERES: 1.0e-04
EVNT: 0             FLNK:CONSTANT 0     FOF: 0              FOFF: Variable
FRAC: 1             HHSV: NO_ALARM      HIGH: 0             HIHI: 0
HLM: 59             HLS: 0              HLSV: NO_ALARM      HOMF: 0
HOMR: 0             HOPR: 0             HSV: NO_ALARM       HVEL: 0.1
ICOF: 0             INIT:               JAR: 5              JOGF: 0
JOGR: 0             JVEL: 1             LCNT: 0
LDVL: 24.6415275058764                  LLM: 1              LLS: 0
LLSV: NO_ALARM      LOCK: NO            LOLO: 0             LOPR: 0
LOW: 0              LRLV: 0             LRVL: 246415        LSET: 0x597ff0
LSPG: Go            LSV: NO_ALARM       LVAL: 24.6415275058764
LVIO: 0             MDEL: 0             MIP: 0              MISS: 0
MLIS: 00 5c ee 80 00 5f b9 40 00 00 00 46                   MLOK: 00 59 50 c8
MLST: 0             MMAP: 0             MOVN: 0             MRES: 1.0e-04
MSTA: 18818         NAME: SMTR1608-9-B20-05:brag            NMAP: 0
NSEV: NO_ALARM      NSTA: NO_ALARM      NTM: YES            NTMF: 2
OFF: 0              OMSL: supervisory   OUT:INST_IO @asyn(XPS1,0)
PACT: 0             PCOF: 0             PHAS: 0             PINI: NO
POST:               PP: 0               PPN: (nil)          PPNR: (nil)
PREC: 5             PREM:               PRIO: LOW           PROC: 0
PUTF: 0             RBV: 6              RCNT: 0             RDBD: 1.0e-04
RDBL:CONSTANT       RDES: 0x548f38      RDIF: 186415        REP: 60007
RHLS: 0             RINP:CONSTANT       RLLS: 0             RLNK:CONSTANT
RLV: 0              RMOD: Default       RMP: 60000          RPRO: 0
RRBV: 60000         RRES: 0             RSET: 0x47f1d0      RTRY: 0
RVAL: 246415        RVEL: 0             S: 50               SBAK: 50
SBAS: 5             SCAN: Passive       SDIS:CONSTANT       SET: Use
SEVR: NO_ALARM      SMAX: 0             SPMG: Go            SPVT: (nil)
SREV: 200           SSET: 0             STAT: NO_ALARM      STOO:CONSTANT
STOP: 0             STUP: OFF           SUSE: 0             SYNC: 0
TDIR: 0             TIME: 2014-05-02 10:12:37.121731000     TPRO: 0
TSE: 0              TSEL:CONSTANT       TWF: 0              TWR: 0
TWV: 1              UDF: 0              UEIP: No            UREV: 0.02
URIP: No            VAL: 24.6415275058764                   VBAS: 0.1
VELO: 1             VERS: 6.8           VMAX: 0             VOF: 0

epics> asynReport 10 XPS1
XPS1 multiDevice:Yes canBlock:Yes autoConnect:Yes
    enabled:Yes connected:Yes numberConnects 1
    nDevices 1 nQueued 0 blocked:No
    asynManagerLock:No synchronousLock:No
    exceptionActive:No exceptionUsers 0 exceptionNotifys 0
    traceMask:0x1 traceIOMask:0x0 traceInfoMask:0x1
    interposeInterfaceList
        asynOctet pinterface 0x47f984 drvPvt 0x574470
    interfaceList
        asynCommon pinterface 0x47fb40 drvPvt 0x572760
        asynDrvUser pinterface 0x47fc28 drvPvt 0x572760
        asynOctet pinterface 0x47fb8c drvPvt 0x572760
        asynInt32 pinterface 0x47fb4c drvPvt 0x572760
        asynFloat64 pinterface 0x47fb7c drvPvt 0x572760
        asynFloat64Array pinterface 0x47fbf0 drvPvt 0x572760
        asynGenericPointer pinterface 0x47fc00 drvPvt 0x572760
    addr 0 autoConnect Yes enabled Yes connected Yes exceptionActive No
        exceptionActive No exceptionUsers 0 exceptionNotifys 0
        blocked No
        traceMask:0xff traceIOMask:0x2 traceInfoMask:0x1
XPS motor driver: XPS1
                 numAxes: 1
        firmware version: XPS-Q8 Firmware Standard V1.2.1
      moving poll period: 0.010000
        idle poll period: 5.000000
       enableSetPosition: 0
setPositionSettlingTime: 5.000000
               IPAddress: 192.168.0.254
                  IPPort: 5001
             ftpUserName: Administrator
         ftpUserPassword: Administrator
           movesDeferred: 0
              autoEnable: 1
          noDisableError: 0
  axis 0
    name = S.Pos
    step size = 0.0001
    poll socket = 0, moveSocket = 3
    status = 11
Port: XPS1
  Timestamp: <undefined>
  Input EOS[0]:
  Output EOS[0]:
Parameter list 0
Number of parameters is: 78
Parameter 0 type=asynFloat64, name=MOTOR_MOVE_REL, value is undefined
Parameter 1 type=asynFloat64, name=MOTOR_MOVE_ABS, value=0.000000, status=0
Parameter 2 type=asynFloat64, name=MOTOR_MOVE_VEL, value is undefined
Parameter 3 type=asynFloat64, name=MOTOR_HOME, value is undefined
Parameter 4 type=asynInt32, name=MOTOR_STOP_AXIS, value is undefined
Parameter 5 type=asynFloat64, name=MOTOR_VELOCITY, value=0.000000, status=0
Parameter 6 type=asynFloat64, name=MOTOR_VEL_BASE, value=0.000000, status=0
Parameter 7 type=asynFloat64, name=MOTOR_ACCEL, value=0.000000, status=0
Parameter 8 type=asynFloat64, name=MOTOR_POSITION, value=60000.000000, status=0
Parameter 9 type=asynFloat64, name=MOTOR_ENCODER_POSITION, value=60006.000000, status=0
Parameter 10 type=asynInt32, name=MOTOR_DEFER_MOVES, value is undefined
Parameter 11 type=asynInt32, name=MOTOR_MOVE_HOME, value is undefined
Parameter 12 type=asynFloat64, name=MOTOR_RESOLUTION, value is undefined
Parameter 13 type=asynFloat64, name=MOTOR_ENCODER_RATIO, value is undefined
Parameter 14 type=asynFloat64, name=MOTOR_PGAIN, value=0.000000, status=0
Parameter 15 type=asynFloat64, name=MOTOR_IGAIN, value=0.000000, status=0
Parameter 16 type=asynFloat64, name=MOTOR_DGAIN, value=0.000000, status=0
Parameter 17 type=asynFloat64, name=MOTOR_HIGH_LIMIT, value=590000.000000, status=0
Parameter 18 type=asynFloat64, name=MOTOR_LOW_LIMIT, value=10000.000000, status=0
Parameter 19 type=asynInt32, name=MOTOR_CLOSED_LOOP, value is undefined
Parameter 20 type=asynInt32, name=MOTOR_STATUS, value=18818, status=0
Parameter 21 type=asynInt32, name=MOTOR_UPDATE_STATUS, value is undefined
Parameter 22 type=asynInt32, name=MOTOR_STATUS_DIRECTION, value=0, status=0
Parameter 23 type=asynInt32, name=MOTOR_STATUS_DONE, value=1, status=0
Parameter 24 type=asynInt32, name=MOTOR_STATUS_HIGH_LIMIT, value=0, status=0
Parameter 25 type=asynInt32, name=MOTOR_STATUS_AT_HOME, value is undefined
Parameter 26 type=asynInt32, name=MOTOR_STATUS_SLIP, value is undefined
Parameter 27 type=asynInt32, name=MOTOR_STATUS_POWERED, value is undefined
Parameter 28 type=asynInt32, name=MOTOR_STATUS_FOLLOWING_ERROR, value=0, status=0
Parameter 29 type=asynInt32, name=MOTOR_STATUS_HOME, value=1, status=0
Parameter 30 type=asynInt32, name=MOTOR_STATUS_HAS_ENCODER, value=1, status=0
Parameter 31 type=asynInt32, name=MOTOR_STATUS_PROBLEM, value=0, status=0
Parameter 32 type=asynInt32, name=MOTOR_STATUS_MOVING, value=0, status=0
Parameter 33 type=asynInt32, name=MOTOR_STATUS_GAIN_SUPPORT, value=1, status=0
Parameter 34 type=asynInt32, name=MOTOR_STATUS_COMMS_ERROR, value=0, status=0
Parameter 35 type=asynInt32, name=MOTOR_STATUS_LOW_LIMIT, value=0, status=0
Parameter 36 type=asynInt32, name=MOTOR_STATUS_HOMED, value=1, status=0
Parameter 37 type=asynInt32, name=PROFILE_NUM_AXES, value is undefined
Parameter 38 type=asynInt32, name=PROFILE_NUM_POINTS, value is undefined
Parameter 39 type=asynInt32, name=PROFILE_CURRENT_POINT, value is undefined
Parameter 40 type=asynInt32, name=PROFILE_NUM_PULSES, value is undefined
Parameter 41 type=asynInt32, name=PROFILE_START_PULSES, value is undefined
Parameter 42 type=asynInt32, name=PROFILE_END_PULSES, value is undefined
Parameter 43 type=asynInt32, name=PROFILE_ACTUAL_PULSES, value is undefined
Parameter 44 type=asynInt32, name=PROFILE_NUM_READBACKS, value is undefined
Parameter 45 type=asynInt32, name=PROFILE_TIME_MODE, value is undefined
Parameter 46 type=asynFloat64, name=PROFILE_FIXED_TIME, value is undefined
Parameter 47 type=asynFloat64Array, name=PROFILE_TIME_ARRAY, value is undefined
Parameter 48 type=asynFloat64, name=PROFILE_ACCELERATION, value is undefined
Parameter 49 type=asynInt32, name=PROFILE_BUILD, value is undefined
Parameter 50 type=asynInt32, name=PROFILE_BUILD_STATE, value is undefined
Parameter 51 type=asynInt32, name=PROFILE_BUILD_STATUS, value is undefined
Parameter 52 type=string, name=PROFILE_BUILD_MESSAGE, value is undefined
Parameter 53 type=asynInt32, name=PROFILE_EXECUTE, value is undefined
Parameter 54 type=asynInt32, name=PROFILE_EXECUTE_STATE, value=0, status=0
Parameter 55 type=asynInt32, name=PROFILE_EXECUTE_STATUS, value is undefined
Parameter 56 type=string, name=PROFILE_EXECUTE_MESSAGE, value is undefined
Parameter 57 type=asynInt32, name=PROFILE_ABORT, value is undefined
Parameter 58 type=asynInt32, name=PROFILE_READBACK, value is undefined
Parameter 59 type=asynInt32, name=PROFILE_READBACK_STATE, value is undefined
Parameter 60 type=asynInt32, name=PROFILE_READBACK_STATUS, value is undefined
Parameter 61 type=string, name=PROFILE_READBACK_MESSAGE, value is undefined
Parameter 62 type=asynInt32, name=PROFILE_USE_AXIS, value is undefined
Parameter 63 type=asynFloat64Array, name=PROFILE_POSITIONS, value is undefined
Parameter 64 type=asynFloat64Array, name=PROFILE_READBACKS, value is undefined
Parameter 65 type=asynFloat64Array, name=PROFILE_FOLLOWING_ERRORS, value is undefined
Parameter 66 type=asynFloat64, name=PROFILE_MOTOR_RESOLUTION, value is undefined
Parameter 67 type=asynInt32, name=PROFILE_MOTOR_DIRECTION, value is undefined
Parameter 68 type=asynFloat64, name=PROFILE_MOTOR_OFFSET, value is undefined
Parameter 69 type=asynFloat64, name=XPS_MIN_JERK, value=0.005000, status=0
Parameter 70 type=asynFloat64, name=XPS_MAX_JERK, value=0.050000, status=0
Parameter 71 type=asynFloat64, name=XPS_PROFILE_MAX_VELOCITY, value is undefined
Parameter 72 type=asynFloat64, name=XPS_PROFILE_MAX_ACCELERATION, value is undefined
Parameter 73 type=asynFloat64, name=XPS_PROFILE_MIN_POSITION, value is undefined
Parameter 74 type=asynFloat64, name=XPS_PROFILE_MAX_POSITION, value is undefined
Parameter 75 type=string, name=XPS_PROFILE_GROUP_NAME, value is undefined
Parameter 76 type=string, name=XPS_TRAJECTORY_FILE, value is undefined
Parameter 77 type=asynInt32, name=XPS_STATUS, value=11, status=0
    int32 callback client address=0xd42c8, addr=0, reason=77, userPvt=0x5935c8
    float64 callback client address=0xdf1cc, addr=0, reason=8, userPvt=0x596aa0
    genericPointer callback client address=0x927a8, addr=0, reason=20, userPvt=0x597728




Replies:
Re: Newport XPS-Q8 and Motor Record - armv5teb architecture J. Lewis Muir
Re: Newport XPS-Q8 and Motor Record - armv5teb architecture Torsten Bögershausen

Navigate by Date:
Prev: Re: Point Grey Flea3 areaDetector ImageJ Viewer Problems Zachary Brown
Next: Re: Newport XPS-Q8 and Motor Record - armv5teb architecture J. Lewis Muir
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019 
Navigate by Thread:
Prev: RE: Point Grey Flea3 areaDetector ImageJ Viewer Problems Mark Rivers
Next: Re: Newport XPS-Q8 and Motor Record - armv5teb architecture J. Lewis Muir
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019 
ANJ, 17 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·