Thomas, I will see if I can find any details about Art Code 3336 and if I do I will post my findings. Until then let me tell you that any Art Code error I have ever seen was generated by one of three things. A bad macro, a bad plugin or bad Gcode. I recommend you set up a new profile with all things being default. The screen, the ref. all home script (which is basically the code I recommended earlier), everything. The only plugin you should have installed is the CS Labs. Make sure you can operate the machine without getting the error and start adding your custom bits in one at the time and test to see what it is that is causing the error message.
I do not think you are going to be able to initially reference the machine with much success any other way than having the operator click a reference all button. My experience with the CSLabs tells me the script in that button will have to be very clean and cannot contain any While IsMoving() loops for sure. I also tried using LED 999 and countless other ways. The only thing that made it stable and eliminated all sorts of weirdness is the code I posted earlier. I can understand sending the machine to a set position at the beginning or end of each program, that I understand. This is usually done by commanding those coordinates or with a G28, G30, or G28.1 in the G code. I have not tested these g codes with the CSLabs because if this machine gets out of position (following error is too great) the servo drives will throw a fault which will force the operator to reference the machine after resetting the fault. This eliminates the need to reference the machine before each cycle.
Mach and CSLabs are very capable but they (or any other controller or hardware) are only going to work the way they are hard coded to. Our job as machine builders is to get what we want without asking the controller or hardware to do things they cannot. This often means we have to rethink the way we are doing things. But, that is the best part about being the machine builder, we have that option. Code does not, it can only work as it is written to. We have to be creative enough to stay within those bounds and still get what we want.
Brett