This is it in a nutshell. I make sure the PlanetCNCMacOS app is not running when my code runs. I have tried just calling the API on the alread-running app, which at least offers the benefit of a valid license, but I was unable to control any of the axes in that case. By calling Run() from the API (as shown below), I can move the axes, but I can't home them, because the invalid license message appears after a single axis is homed and the homing process stops. Also, the license message periodically appears, blocking the UI until it is dismissed.
If you need me to, I could put together a minimal Xcode project to demonstrate the problem.
Code:
dispatch_async(dispatch_get_main_queue(), ^{
int running = (IsRunning() || IsRunningExt());
if(!running)
{
Run(false);
}
});
Thanks,
Ben