78 Commits

Author SHA1 Message Date
c2eca33ce8 Ready for release 1.0 1.0.0 2025-05-23 12:25:48 +02:00
87980e403c Fixed bug regarding the poll period member variables 2025-05-23 11:17:34 +02:00
b95e782ea8 Added accessor for maxSubsequentTimeoutsExceeded flag 2025-05-23 10:10:54 +02:00
cd7cc75eb7 Added destructors for the classes in order to use the PIMPL idiom with
uniqe_ptr
2025-05-23 09:38:41 +02:00
83aa437b6b Applied PIMPL by moving members to internal struct sinqAxisImpl
This change makes sinqMotor ready for 1.x releases where ABI stability
and backwards compatibility is guaranteed.
2025-05-22 13:56:44 +02:00
275672aaef Removed lock in reset and replaced it with wakeupPoller call
Trying to lock the controller from one of its axes may lead to
segfaults, hence it is not advisable.
0.15.2
2025-05-16 15:50:26 +02:00
61c5ec749e Merge branch 'main' of gitea.psi.ch:lin-epics-modules/sinqMotor 2025-05-15 14:26:15 +02:00
1cf4b9ab25 Made some functions virtual so they can be overwritten 2025-05-15 14:26:00 +02:00
a0b674b26e Made some functions virtual so they can be overwritten 0.15.1 2025-05-15 14:24:53 +02:00
e088bfbbcb Added initial value for motorMessageText 0.15.0 2025-05-15 11:39:47 +02:00
3c345e37da Fixed char array undefined symbol bug 2025-05-15 11:25:56 +02:00
b267200039 Simplified paramLib access and show error messages for one poll cycle
Simplified getting and setting paramLib entries via a macro and created
a mechanism within poll() which makes sure that error messages are shown
for at least one poll cycle. Also moved MAXBUF_ to the SinqController
level.
2025-05-14 16:07:03 +02:00
9bc90cff61 Simplified paramLib access and show error messages for one poll cycle
Simplified getting and setting paramLib entries via a macro and created
a mechanism within poll() which makes sure that error messages are shown
for at least one poll cycle. Also moved MAXBUF_ to the SinqController
level.
2025-05-14 15:59:48 +02:00
9792697d03 Addes instructions how to use sinqMotor as static dependency. 2025-05-12 16:41:33 +02:00
4d1c21fd74 Added a license (GPL3) 2025-05-09 11:59:51 +02:00
dbcfebc6de Added function to set the number of forced fast polls. 2025-05-09 08:14:05 +02:00
b89fe41c6e Added macros for adding and retrieving paramlib entries in order to make
the code less cluttered. Also built in a mechanism which makes sure that
forced fast polls are not ignored anymore when adaptive polling is
enabled.
2025-05-08 17:04:23 +02:00
5689402375 Further clarified the error message in checkMaxSubsequentTimeouts. 0.14.3 2025-05-05 09:15:15 +02:00
2a7934b8d6 Fixed bug where arguments were given in the wrong order. 0.14.2 2025-05-05 08:51:34 +02:00
3071e402b2 Fixed bug in sinqMotor.db (bad field name) 0.14.1 2025-04-29 14:43:32 +02:00
dd0610fd99 Added connection assertion and moved msgPrintControl to key 0.14.0 2025-04-25 15:54:41 +02:00
c7936191d9 Added Connected PV 2025-04-25 13:17:41 +02:00
3ec83b115e Added further info on versioning to README.md 2025-04-24 09:17:05 +02:00
bfda809257 Added high default value for RDBD
See docstring: This is to prevent overshoot stop commands.
0.13.1
2025-04-23 13:46:02 +02:00
76a91d4a2f Added message print control for movement timout watchdog 0.13.0 2025-04-22 11:43:47 +02:00
228bcf7fd7 Renamed some member fields 2025-04-17 16:28:52 +02:00
db03ffea0e Added adaptive polling
See documentation in README.md for parameter ADAPTPOLL
2025-04-16 13:05:48 +02:00
4c3254687d Renamed "ipPortUser_" to "ipPortAsynOctetSyncIO_"
I learned that there might be multiple asynUsers connected to the same
port for different types (asynInt32, asynOctet, ...). Therefore I
renamed "ipPortUser_" to better reflect this.
0.12.0
2025-04-15 17:15:34 +02:00
eb94379efe Small detail improvements from code review
In a code review with Edward and Alex, some optimization potential in
the sinqMotor.db file was discovered. This patch implements those
improvements.
2025-04-09 16:39:36 +02:00
1dd132c709 Added the ability to set the limits from the substitution file 0.11.0 2025-04-04 13:29:49 +02:00
7729eceb28 Added doReset wrapper around reset and added two functions to set and
retrieve the motor position which handle the conversion via
motorRecResolution.
0.10.0
2025-03-31 10:42:07 +02:00
828e9bc59c Fixed a bug in msgPrintControl 0.9.0 2025-03-19 15:01:20 +01:00
f26d1bb612 Added public accessors for all status library indices and some other
properties. This also enabled the removal of "friend classes".
2025-03-10 16:53:45 +01:00
bed245b010 Added PVs for error reset and status problem reporting and fixed a bug
in msgPrintControl
2025-03-10 14:28:24 +01:00
ca7bede4b7 Actually added the files for msgPrintControl 0.8.0 2025-03-04 09:23:34 +01:00
d3307db987 Added msgPrintControl feature to control the maximum number of IOC shell
message repetitions.
2025-03-04 09:12:11 +01:00
591509bd43 Forgot to save the changes to sinqController.cpp beforehand 2025-02-25 08:59:21 +01:00
5854d2c9d0 Added motor target position record which allows to read out the motor
target position from within a driver.
2025-02-25 08:51:44 +01:00
f134a61649 Added an explanation how to build the patched motorBase library from GFA 2025-02-20 18:01:51 +01:00
49be84068f Merge branch 'main' of https://git.psi.ch/sinq-epics-modules/sinqmotor 0.7.0 2025-02-14 16:20:41 +01:00
e92a867189 Bugfix for movTimeoutWatchdog
Update of README.md
2025-02-14 16:19:17 +01:00
8bc6109e2a Bugfix for movTimeoutWatchdog 2025-02-14 16:17:11 +01:00
c06cf8e76c Fixed small typo in an error message 2025-01-22 11:01:08 +01:00
f14ac66971 Missing controller name in PV name 0.6.3 2025-01-08 16:01:04 +01:00
b6e0f03a17 Moved the initialization of some parameters into sinqMotor 0.6.2 2024-12-23 09:30:24 +01:00
5946563372 Merge branch 'main' of https://git.psi.ch/sinq-epics-modules/sinqmotor 0.6.1 2024-12-11 09:59:36 +01:00
da96b4b973 Adjusted the encoder type naming to that of the new NICOS class
(https://forge.frm2.tum.de/review/c/frm2/nicos/nicos/+/35285)
2024-12-11 09:57:59 +01:00
61087d2e44 Adjusted the encoder type naming to that of the new NICOS class
(https://forge.frm2.tum.de/review/c/frm2/nicos/nicos/+/35285)
0.6.0
2024-12-11 09:49:17 +01:00
26754e608d Fixed a bug which resulted in motorStatusProblem not being set properly. 0.5.1 2024-12-10 09:09:02 +01:00
a866023957 Various improvements:
- Moved the encoder type PV to sinqMotor
- Unified the PV naming scheme
- Removed the IsEnabled function - this status is read out from the
parameter library (motorEnableRBV_)
0.5.0
2024-12-09 11:14:19 +01:00