Merge Anders/devOctet to master

Merged
#1 · Created  · Last updated

Merged pull request

Remove TwinCAT/.gitattributes

ccbe3ab·Author: Torsten Bögershausen·Closed by: ·2018-03-21

Description

  • Add asynportdriver.

  • Add adsAsynPortDriver.cpp to Makefile.EEE.

  • adsAsynPortDriver.cpp: First make ok.

  • Use asynprint for log.

  • Register new iocsh command (adsAsynPortDriverConfigure).

  • Rename ecmc to ads.

  • WIP

  • WIP

  • WIP: First working version based on asynportdriver class.

  • WIP: Cleanup..

  • Makefile.EEE: Add db file for test.

  • Try dynamic creation of parameters. WIP..

  • Add test db

  • Add test startup script.

  • WIP

  • WIP

  • WIP dump working..

  • WIP: working find records..

  • WIP

  • WIP: paramInfo structure filled..

  • WIP. PLC data parsed.

  • Cleanup in formatting.

  • Add some ads functionallity to adsAsynPortDriver class.

  • Move parts of ads methods to class.

  • Minor formatting..

  • Add generic adsWrite..

  • adsWrite for both symbolic and ADR.

  • Add adsWrite (epicsInt32), move printparam to report method. And more.. WIP

  • Improved report method.

  • Improve report()

  • Remove read override methods. minor change in db-file..

  • Start implementation of callback.

  • adsApp/Db/adsTestAsyn.db: Only one record for forst tests..

  • WIP: Callback working.. Add adsRead().

  • Change to use other CPU.

  • WIP. Working..

  • WIP.. Write working

  • Remove drvAsynAdsPort.cpp

  • Remove old driver.

  • WIP..

  • Add array support (partly). Add function to update params (used by callback and adsRead). Cleanup.. WIP

  • Add array in db file. Change trace in cmd file.

  • Cleanup

  • adsTestAsyn.db: Add info field in waveform output record to allow readback..

  • Add array write support.

  • Add updateTimestamps() to avoid <undefined> timestamp..

  • More records..

  • Remove report in drvUserCreate().

  • Add asynReport last in startup file.

  • Remove asynReport from end in cmd file (executed before params are generated..)

  • adsAsynPortDriver.cpp:report: Add comment on param 0 for motor record..

  • adsAsynPortDriver.cpp:report: Add plc data type size printout.

  • adsAsynPortDriver.cpp:report: Write param name first.

  • New syntax: ? in end of drvinfo results in I/O intr. = in for no I/0 intr. (I/O intr for output records or waveform needs info(asyn:READBACK,1) field also).

  • New records.

  • Add string support as asynInt8Array

  • Add string records in db file

  • adsApp/src/adsAsynPortDriver.cpp:report: add asynType in printout.

  • WIP

  • Add buffers for arrays.

  • Wait utill initHookAfterIocRunning state before enable callbacks (ensure that interrupts are registered).

  • minor cleanup

  • WIP

  • Reconnect works. (WIP)

  • WIP

  • Add class for parameter info. Add utility file for general functions.

  • WIP

  • Moved utility functions and general stuff to adsAsynPortDriverUtils. Compiles. WIP..

  • WIP: reconnect works if cable error. If plc in config mode it seems symbolic handles are not renewed. Need more work..

  • Only complete reconnect if not connected to any amsPort.

  • Remove adsParameter class. Not used..

  • Add wrapper to adsUpdateParams with lock() called adsUpdateParamsLock() for use in callback function.

  • Add option TIMEBASE (PLC or EPICS).

  • Add timestamp support. Choose between EPICS timestamp and PLC timestamp (for I/O intr, normal polling always EPCIS timebase).

  • Enable timestamp from asyn (add field(TSE,-2) to all records).

  • Add new default parameter for time source (EPICS=0, PLC=1).

  • Cleanup in startup files.

  • Renamed startup files.

  • Add info to report().

  • WIP alarm and severity.

  • Add READ and WRITE alarms. Working on reconnect (sometimes fails).. WIP

  • WIP: try to make seemless renewal of handles and callback.. Not working well yet...

  • Reconnect seems to work. Still WIP.

  • adsAsynPortDriver.cpp: cleanup

  • adsAsynPortDriver.cpp: Cleanup

  • WIP reconnect more stable (only disconnect once).

  • Update adsTestAsynSlim.db

  • test.cmd: Remove duplicate lines

  • Only print reconnect error once.

  • Cleanup of printouts at reconnect.

  • Update comment in startup files

  • Set write alarm in genericArrayWrite().

  • Basic octet functionallity. WIP

  • Add connect() in constructor (to avoid error if only octet records).

  • Renove unused files.

  • adsApp/src/adsAsynPortDriver.cpp: Minor cleanup

  • adsApp/src/adsAsynPortDriverUtils.cpp: Remove printf

  • Update start files for test of octet interface.

  • Cleanup in example.

  • Cleanup in example.

  • Remove unused files.

  • adsApp/src/adsController.dbd: cleanup

  • Add startup file for only I/O access (no motor).

  • startup/adsMotorRecord.cmd: Improve comments/instructions.

  • startup/adsOnlyIO.cmd:Cleanup

  • Removed TwinCAT demo_project

  • Update of demo_project (submodule).

  • Remove unused files.

  • Update Readme

  • Remove unused files from Makefile.EEE

  • configure/RELEASE: Use .local files

    Make the RELEASE file more versatile: Use definitions from local files like this:

    include $(TOP)/configure/RELEASE_PATHS.local -include $(TOP)/configure/RELEASE_PATHS.local.$(EPICS_HOST_ARCH) include $(TOP)/configure/RELEASE_LIBS.local -include $(TOP)/configure/RELEASE.local

    (I think I stole the idea from another EPICS module, probably from AreaDetector)

  • downloadADS.sh: Use the appropriate git submodule commands

    When the use did not clone --recursice, the ADS/ is empty. Use "git submodule" to update it,

  • Install adsTestOctet.db, adsTestAsyn.db

  • Makefile (classic EPICS): Must link with -pthread

    (Not sure if or why this ever worked) But: ADS needs to be linked against pthreads Add -lpthread in USR_LDFLAGS

  • Add support for bool arrays.

  • Add bool and bool array records to db and opi file.

  • Add comment regarding bool (ADST_BIT)

  • Update demo_project with bool and bool[].

  • octet interface: Free all allocated vars in octetCmdHandleInputLine.

  • Add comments to adsAsynPortDriver class.

  • adsAsynPortDriverUtils: Add comments.

  • adsAsynPortDriverConfigure: Add help message if called without arguments.

  • adsAsynPortDriverConfigure: Add example configuration in help printout.

  • adsAsynPortDriverConfigure: Add note about needed twincat route.

  • adsMotorRecord.cmd: Correct spelling mistake.

  • startup/adsOnlyIO.cmd: Remove require axis.

  • adsAsynPortDriver.cpp: Cleanup and invalidate parameter at startup.

0 attachments

0 comments

Loading commits...