Hi Mark,
Many thanks for the fast response! That makes sense, I'm nearly there with the following st.cmd:
< envPaths
epicsEnvSet(STARTUP, $(TOP)\iocBoot\$(IOC))
dbLoadDatabase("..\..\dbd\mcaBrukerQM100.dbd", 0, 0)
mcaBrukerQM100_registerRecordDeviceDriver(pdbbase)
BrukerQM100Config(L0, "edx", "redacted_password", "Local server", 1)
# =========== Works after manually adding "$(BUSY)/dbd/busySupport.dbd" to Makefile ==========================
dbLoadRecords("..\..\mcaApp\Db\mca.db","P=XFLASH:,M=mca1,NCHAN=1024,DTYP=asynMCA,INP=@asyn(L0)")
# ==============================================================================================
dbLoadRecords("$(ASYN)\db\asynRecord.db","P=XFLASH:,R=L0,PORT=L0,ADDR=0,OMAX=256,IMAX=256")
# ======== init the ioc ========
iocInit()
# < ..\save_restore.cmd
# ======== save settings every thirty seconds
# create_monitor_set("auto_settings.req",30,"P=XFLASH:")
1)
The error I get with this is
(BrukerQM100Config) Unable to find function OpenClient
(BrukerQM100Config) Unable to find function SendRCLCommand
(BrukerQM100Config) Unable to find function ReadSpectrum
(BrukerQM100Config) Unable to find function GetSpectrum
(roentecServer) Unable to find function StartSpectrumMeasurement
(roentecServer) Unable to find function StartSpectrumLifeTimeMeasurement
(roentecServer) Unable to find function StartSpectrumCounterMeasurement
(roentecServer) Unable to find function StopSpectrumMeasurement
... which I assume is because I compiled for 64 bit and the Makefile specification is
BIN_INSTALLS_WIN32 += RTPCI.dll
However this happens when trying to use the 64 bit control driver too. I'm assuming that the 64 bit driver is currently unsupported?
2)
RontecXFlash.db requires the asynOctet interface on the given port. I assume this db would have to be rewritten for the port from BrukerQM100Config?
Best wishes,
Eva
Hi Eva,
That is not correct. The BrukerQM100Config command is defined here:
It is
int BrukerQM100Config(const char *portName, char *user, char *passwd, char *server, int spuno)
The portName argument to that command is the name of the asyn port to create for this driver. It is not the name of a drvAsynIPPort.
You don't need to build your IOC with drvAsynIPPort. The IP communication is done using their DLL, not with asyn.
Mark
From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Lott, Eva via Tech-talk <tech-talk at aps.anl.gov>
Sent: Monday, April 28, 2025 4:14 AM
To: tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
Subject: Problems setting up MCA BrukerQM100
Hi,
I've been trying to set up an MCA ioc for the Bruker XFlash. I've built `mcaBrukerQM100.exe` (linking the hardware control dll), and am now in the process of writing the iocBoot for it.
My problem is that this ioc doesn't link `drvIPPortConfigure` - I need an IP port for running `BrukerQM100Config`. I've tried linking drvAsynIPPort.dbd in
https://github.com/epics-modules/mca/blob/master/mcaApp/RontecSrc/mcaBrukerQM100Include.dbd to no avail.
Does anyone have any examples of a production mcaBrukerQM100 support module that I can look at?
Eva
Helmholtz-Zentrum Berlin für Materialien und Energie GmbH
Mitglied der Hermann von Helmholtz-Gemeinschaft Deutscher Forschungszentren e.V.
Aufsichtsrat: Vorsitzender Dr. Volkmar Dietz, stv. Vorsitzende Dr. Jutta Koch-Unterseher
Geschäftsführung: Prof. Dr. Bernd Rech, Thomas Frederking
Sitz Berlin, AG Charlottenburg, 89 HRB 5583
Postadresse:
Hahn-Meitner-Platz 1
14109 Berlin
Deutschland
Diese E-Mail kann vertrauliche und/oder rechtlich geschützte Informationen enthalten. Wenn Sie diese E-Mail irrtümlich erhalten haben, informieren Sie bitte sofort den*die Absender*in und vernichten Sie diese Mail. Das unerlaubte Kopieren, die Veröffentlichung
sowie die unbefugte Weitergabe dieser Mail ist nicht gestattet.
This email may contain confidential and/or proprietary information. If you have received this e-mail in error, please inform the sender immediately and destroy this e-mail. Unauthorized copying, publishing or distribution of this e-mail is not permitted.