This one is a bit weird. First the system:
G2core running on a Due, modified so probing works. Shield of my own design plugged into Due. Motors etc work perfectly, problem is with probing. The switch inputs do not connect directly to the Due GPIO pins, they go through a logic level opto-isolator which has push-pull outputs so the Due input is always being driven hard (20 ohm in either high or low). Hooked scope probe up to the Due input, there is never any noise on the input, it is perfectly quite until the contact is made (there is contact bounce but that is not the problem).
First tried with the touch plate widget, it works perfectly. So it seems like the input circuit is doing what it is supposed to be doing. I can run twenty probes in a row, they all work perfectly.
Then I close TouchPlate and try AutoLevel. It starts working fine, but on the eighth point I get an already tripped message. If I restsrt the AutoLevel from then on it always gives the already tripped message. The only way to clear this is kill the browser and SPJS and re-start, then the AutoLevel starts working and gives the already tripped message on the eighth point.
I’ve tried this many times and it is always on the eighth point.
I tried this on the little CNC router which has a grbl controller, using jpadie workspace, and AutoLevel works fine.
The fact that it always goes wacko on the eighth point seems to point to a software issue rather than random noise or some such. I suppose it could be either G2core or AutoLevel, but given that TouchPlate works 20 times in a row without the error message, it sort of points to G2core working all right with the probing. I haven’t looked into whether TouchPlate and AutoLevel use exactly the same probe commend so there might be a difference there.
At this point I’m stumped, I don’t know what else to look at.