-
-
Notifications
You must be signed in to change notification settings - Fork 74
Description
Hi all,
I am using pyxcp successfully to communicate with a slave, so I have many things up and running, calibration, polling and static DAQ lists handling.
I write this just as a preinformation to my question. The question is about the error handling,
When the XCP slave does not respond for any reason, then for many command pyxcp repeats this forever and ever. Why is this defined like this? This blocks the port and each time i have to "kill" the python application to reconnect again.
I was debugging a bit and saw the repeater, ti says
class Repeater:
"""A required action of some XCP errorhandler is repetition.
Parameters
----------
initial_value: int
The actual values are predetermined by XCP:
- REPEAT (one time)
- REPEAT_2_TIMES (two times)
- REPEAT_INF_TIMES ("forever")
"""
REPEAT = 1
REPEAT_2_TIMES = 2
INFINITE = -1
What means it is predetermined by XCP? Is this hard defined in the standard that for example for master.connect(), this command should be repeated "forever" ?
Is there any configuration how to define for which command how many times to repeat it?
In my case calling a command "forever" without receiving anything lands in a dead lock.
Can I configure the error handling (retry) through a configuration or do i have to patch the code?