Festo linear motion with Modbus

Has anyone been able to control the Modbus version of the Festo CMMO linear motion controllers through Modbus? It doesn’t seem to work through the usual Polyscope Modbus client setup screen. As soon as a connection is made through Polyscope it returns Modbus E1 or E3 error. The next step is to try with URscript but I’m curious if others have had success with these Festo controllers and a UR.


One thing that’s unfortunate is that UR Modbus only easily deals with 16-bit registers. Any chance that the device is 32 bit?

Other than that, do the error codes indicate anything?

E1 - “The function code received in the query is not an allowable action for the slave. This may be because the function code is only applicable to newer devices, and was not implemented in the unit selected. It could also indicate that the slave is in the wrong state to process a request of this type, for example because it is unconfigured and is being asked to return register values. If a Poll Program Complete command was issued, this code indicates that no program function preceded it.”

E3 - “A value contained in the query data field is not an allowable value for the slave. This indicates a fault in the structure of remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register.”

The bit length seems to be okay, but I think I found the issue. The set of Modbus functions supported by the UR and the set supported by the Festo CMMO controllers does not overlap, with the exception of one (0x03 - Read Holding Registers). Basically, it looks like these two devices cannot directly communicate through Modbus.

Ouch, sorry to hear that. Just out of curiosity, what document did they list that in? Festo likes to split everything up and I wasted some time trying to find their documentation before I posted last.

Hi mmalloy
I hope you are doing well.
I can share this with you in case you are stil interested in this topic, we are using CMMP instead of CMMT.
You can contact me at alejandro.lopez@festo.com.


Find more info and FMAS PSI:
→ EN

→ ES

→ FR

Hi terryc,

The info was a bit hidden, but you’ll find it at the bottom of page 22 in the CMMO-ST-C5-1-LKP Device Profile FHPP manual. The CMMO supports these Modbus functions:
-0x03 (3)
-0x07 (7)
-0x10 (16)
-0x17 (23)
-0x2B (43)

UR supports functions 1-6.