c2eca33ce8
Ready for release 1.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.
2025-05-16 15:50:26 +02:00
1cf4b9ab25
Made some functions virtual so they can be overwritten
2025-05-15 14:26:00 +02:00
e088bfbbcb
Added initial value for motorMessageText
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.
2025-05-05 09:15:15 +02:00
2a7934b8d6
Fixed bug where arguments were given in the wrong order.
2025-05-05 08:51:34 +02:00
dd0610fd99
Added connection assertion and moved msgPrintControl to key
2025-04-25 15:54:41 +02:00
c7936191d9
Added Connected PV
2025-04-25 13:17:41 +02:00
76a91d4a2f
Added message print control for movement timout watchdog
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.
2025-04-15 17:15:34 +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.
2025-03-31 10:42:07 +02:00
828e9bc59c
Fixed a bug in msgPrintControl
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
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
e92a867189
Bugfix for movTimeoutWatchdog
...
Update of README.md
2025-02-14 16:19:17 +01:00
c06cf8e76c
Fixed small typo in an error message
2025-01-22 11:01:08 +01:00
b6e0f03a17
Moved the initialization of some parameters into sinqMotor
2024-12-23 09:30:24 +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
26754e608d
Fixed a bug which resulted in motorStatusProblem not being set properly.
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_)
2024-12-09 11:14:19 +01:00
86006e408a
Prototype for version 0.3
2024-12-04 13:38:13 +01:00
6656841a01
Added some flags for NICOS and refactored some records from pmacv3 to
...
sinqMotor
2024-11-29 14:54:54 +01:00
682325de7d
Substantial rRework of 0.2.0 after the CAMEA test showed multiple
...
problems. Also improved the documentation.
2024-11-26 16:51:12 +01:00
5502c39219
After reimplementing the pmacV3 driver using the sinqMotor parent class,
...
quite some changes have accumulated. Besides various code changes, especially the documentation has
been improved.
2024-11-20 11:29:20 +01:00
89bbbedaee
Fixed CI pipeline issues.
2024-11-15 16:20:57 +01:00
a4501b4517
Moved shared functionality from the pmacV3 driver into this library.
2024-11-15 12:09:49 +01:00
df698554c0
Adjusted the readme and renamed some bits in sinqController.
2024-11-14 16:14:07 +01:00
8afb1fd4fb
Removed src/Makefile, since this is not needed.
2024-11-13 09:05:39 +01:00
74faa1aabf
Appease the compiler by changing static to const for string literals
2024-11-13 08:38:32 +01:00
af182bb73b
Initial version of sinqMotor
2024-11-12 15:27:24 +01:00