From 2dc10fe86932cdbc344a8b9ece8861d92d660c90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20S=C3=B6derqvist?= Date: Tue, 3 Feb 2026 09:47:24 +0100 Subject: [PATCH 1/2] Document how to do reset when having HW error --- README.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/README.md b/README.md index 239ab34..affc8d0 100644 --- a/README.md +++ b/README.md @@ -94,3 +94,25 @@ repository is checked out AND the change is commited (`git status` shows no non-committed changes). Please see the section "Usage as static dependency" in https://gitea.psi.ch/lin-epics-modules/sinqMotor/src/branch/main/README.md for more details. + +## FAQ +### Axis hardware error at startup +If at IOC startup you are met with the following errors: +``` +2026/02/02 16:56:49.470 Controller "turboPmac1", axis 3 => asynStatus turboPmacAxis::handleError(int, char*, int), line 735 +Driver hardware error triggered. +2026/02/02 16:56:49.485 Controller "turboPmac1", axis 7 => asynStatus turboPmacAxis::handleError(int, char*, int), line 735 +Driver hardware error triggered. +2026/02/02 16:56:49.492 Controller "turboPmac1", axis 8 => asynStatus turboPmacAxis::handleError(int, char*, int), line 735 +Driver hardware error triggered. +``` +You may need to reset to do a axis reset. This can be done with writeRead python tool. The following example does so for axis 3. +Confirm the hardware error: +``` +utils/writeRead.py 172.28.87.24:1025 P0301 +# If it returns 13 it's a hardware error. +``` +Reset the axis: +``` +utils/writeRead.py 172.28.87.24:1025 P0301=0 +``` -- 2.49.1 From 791e74f82f98447d8a14116976619190084cb870 Mon Sep 17 00:00:00 2001 From: mathis_s Date: Tue, 3 Feb 2026 10:02:54 +0100 Subject: [PATCH 2/2] Expanded a bit more on the FAQ --- README.md | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index affc8d0..b4a120c 100644 --- a/README.md +++ b/README.md @@ -97,6 +97,7 @@ more details. ## FAQ ### Axis hardware error at startup + If at IOC startup you are met with the following errors: ``` 2026/02/02 16:56:49.470 Controller "turboPmac1", axis 3 => asynStatus turboPmacAxis::handleError(int, char*, int), line 735 @@ -106,13 +107,26 @@ Driver hardware error triggered. 2026/02/02 16:56:49.492 Controller "turboPmac1", axis 8 => asynStatus turboPmacAxis::handleError(int, char*, int), line 735 Driver hardware error triggered. ``` -You may need to reset to do a axis reset. This can be done with writeRead python tool. The following example does so for axis 3. +You may need to reset to do a axis reset. This can be done with +`utils/writeRead.py`. The following example does so for axis 3. + Confirm the hardware error: ``` -utils/writeRead.py 172.28.87.24:1025 P0301 -# If it returns 13 it's a hardware error. +utils/writeRead.py 172.28.87.24:1025 P0301 # 03 specifies axis 3, 01 is the command to read out the error. +# If it returns 13 it's a hardware error. +# For the full list of errors see TurboPMAC_manual.pdf or src/turboPmacAxis.cpp, function "handleError". ``` Reset the axis: ``` utils/writeRead.py 172.28.87.24:1025 P0301=0 ``` +Check if the error has appeared again: +``` +utils/writeRead.py 172.28.87.24:1025 P0301 +``` +If the console output is not 0, the error has been deleted, but appeared +immediately again. In this case, the error cannot be reset remotely. +If it is an error such as 10 (limit switches hit), the motor needs to be +moved away from the limits, this resets the error automatically. +Other errors like 13 represent an actual issue on the hardware which +needs to be resolved by the electronics motion engineers. -- 2.49.1