Hello Sibylle and all,
Like Jörn replied, there should be no issues to build e3 on Ubuntu. If you have the prerequisites installed, it should build pretty much out of the box.
For ecmc, I think it would be good to contact Anders Sandström at PSI (in cc, as I am not sure if Anders follows tech-talk). I know they are using it to operate a lot of motors, also with EPICS.
I have not built or used it myself recently, but I can really recommend it, it is an excellent package. There has been a lot of substantial improvements in the last years, and depending on your application I think it could have some substantial advantages over
other solutions, event TwinCAT.
Best regards,
Timo (ESS)
On 2025-05-28, 15:10, "Tech-talk on behalf of Jörn Dreyer via Tech-talk" <tech-talk-bounces at aps.anl.gov <
mailto:tech-talk-bounces at aps.anl.gov> on behalf of tech-talk at aps.anl.gov <
mailto:tech-talk at aps.anl.gov>>
wrote:
Hello Sibylle,
I have successfully used e3 on an Ubuntu 24.04 host. I guess that your failure comes from missing prerequisites.
I have installed the following packages before using e3:
- patch
- m4
- gcc
- g++
- tclx
- python3-dev
- libtirpc-dev
- re2c
- patchelf
- libusb-dev
- libsnmp-dev
- libxml2-dev
- libreadline-dev
- libopencv-dev
- libudev-dev
- libboost-all-dev
- libgsl-dev
- git
- libglib2.0-dev
- libx11-dev
- libxext-dev
- libzip-dev
- libfreetype-dev
- liblcms2-dev
- make
I tested it on a VM with a fresh installed Ubuntu desktop and also OpenSuSE Tumbleweed without problems.
Regarding your questions:
1) It depends on the type of devices you want to talk to. For motors, I would recommend to give the ess ethercatMC a try If you have a Beckhoff PLC in your system
There is also a BechhoffADS driver that talks directly via the etherlab driver to the devices, but it is limited to certain devices.
2) If your device is not supported you might need to implement it for the BeckhoffADS driver.
I don't know ecmc by hart, but if I remember correctly it is quite fancy but hard to set up as it takes a project file from TwinCAT and gives you access to each and every register of you devices.
This could be dangerouse for a novice as you can possibly destroy your device by misconfiguration.
Hope this helps you a bit,
Jörn
Am Mittwoch, 28. Mai 2025, 13:23:34 Mitteleuropäische Sommerzeit schrieb Sibylle Ducroizé via Tech-talk:
> Hello,
>
> I have just started working on an update of the control system software
> for an accelerator.
> I am still trying out different configurations and learning how to use
> EPICS. I followed the tutorial of the EPICS documentation so I know
> basic information about IOCs and have common support modules installed
> (asyn, calc, streamDevice,...)
>
> I would like to communicate with Beckhoff I/O terminals, both as a way
> to learn EPICS and to try out configurations for the final project. I
> have tried following this advice
> <
https://epics.anl.gov/tech-talk/2018/msg00279.php > <
https://epics.anl.gov/tech-talk/2018/msg00279.php > > from a previous
> tech-talk question from 2018.
> So far I have installed etherlab's ethercat master
> <
https://urldefense.us/v3/__https://gitlab.com/etherlab.org/ethercat__;!!G_uCfscf7eWS!e7dazAbiiIaQgW2B8trCKUmDQiA1qqxV5LI23pHrrWfr0BtoCOobFERw9NiJhtJAc2dQlUH666hIKgU87BJ95yX-AITXpQ$ <
https://urldefense.us/v3/__https://gitlab.com/etherlab.org/ethercat__;!!G_uCfscf7eWS!e7dazAbiiIaQgW2B8trCKUmDQiA1qqxV5LI23pHrrWfr0BtoCOobFERw9NiJhtJAc2dQlUH666hIKgU87BJ95yX-AITXpQ$>
> and I've tried installing
> PSI's ecmc <
https://urldefense.us/v3/__https://github.com/epics-modules/ecmc__;!!G_uCfscf7eWS!e7dazAbiiIaQgW2B8trCKUmDQiA1qqxV5LI23pHrrWfr0BtoCOobFERw9NiJhtJAc2dQlUH666hIKgU87BJ95yXNbSPhcQ$ <
https://urldefense.us/v3/__https://github.com/epics-modules/ecmc__;!!G_uCfscf7eWS!e7dazAbiiIaQgW2B8trCKUmDQiA1qqxV5LI23pHrrWfr0BtoCOobFERw9NiJhtJAc2dQlUH666hIKgU87BJ95yXNbSPhcQ$>
>which needs e3
> <
https://urldefense.us/v3/__https://gitlab.esss.lu.se/e3/e3__;!!G_uCfscf7eWS!e7dazAbiiIaQgW2B8trCKUmDQiA1qqxV5LI23pHrrWfr0BtoCOobFERw9NiJhtJAc2dQlUH666hIKgU87BJ95yWHPmVh9Q$ <
https://urldefense.us/v3/__https://gitlab.esss.lu.se/e3/e3__;!!G_uCfscf7eWS!e7dazAbiiIaQgW2B8trCKUmDQiA1qqxV5LI23pHrrWfr0BtoCOobFERw9NiJhtJAc2dQlUH666hIKgU87BJ95yWHPmVh9Q$>
> to build. Unfortunately, e3-build
> fails to install epics base so I didn't get very far...I am on ubuntu
> which might be the problem.
>
> My questions :
>
> 1. Are there maintained EPICS drivers for communicating with Beckhoff I/O ?
>
> 1.a. If so, is ecmc a good option ? (As it depends on e3, meant to
> run on centOS which is obsolete)
>
> 1.b. Are there other similar alternatives ?
>
> 2. Should I basically write my own drivers ?
>
> 1.a. An advice / general approach for me to follow as I am new to
> EPICS ?
>
> Thanks,
>
> Sibylle
>