Thanks for the contributions! I had not noticed them before,
so I have included the "cleaned up" version of the code here.
I will take a look at your modifications, and attempt to incorporate
them (or just copy wholesale). Especially true for std::unique_lock,
which (as you know) is far better/safer than manipulating the mutex
directly. So, you may ignore the attached code (although it does
contain a bug fix for attempting to synchronize while the scope
is slewing, apparently a *very* bad thing for the controller!). I
*think* I also caught what you were referring to about calls
that do multiple receives, including resynchronize.
The UserRate stuff does not work with the firmware version I am
using either. I have tried to put comments in the code, until (if
ever) we can get an answer from the developer, or from another
means. Othewise, it's just too dangerous to use, since the
controller I have supports a rather invisible rate that is not rate
1, 2, or 3!