PCW wrote: Hmm... maybe this will work better
net spindle-phase-a encoder.0.phase-A
net spindle-phase-b encoder.0.phase-B
net spindle-phase-a encoder.0.phase-Z
As you suggested, changing the one line from: "net spindle-index encoder.0.phase-Z" to "net spindle-phase-a encoder.0.phase-Z" seems to fix my problems with no other changes. :woohoo:
Now G33 and G76 work, and the spindle speed display still works.
I did notice some unstable Z axis speeds during the threading pass at low (150 - 300 rpm) spindle speeds. This was discussed by another poster in another thread. He fixed his problem by adding "net spindle-position encoder.0.position
-interpolated => motion.spindle-revs" but my Hal already had the "interpolated" feature and yet the Z speed was still "hunting" intermittently.
Increasing the RPMs to 500+ seems to make Z speed stabilize. Apparently it is a PID tuning problem in the software, and may be influenced by hardware as well?
Ironically, the reason I converted from TurboCNC to EMC was because TurboCNC also failed to maintain a consistent Z speed during low RPM threading. The only solution I found with TurboCNC was to crank up the RPM. Sigh. :S
I was told that TurboCNC only reads the RPM at the beginning of a threading pass, and then assumes a constant RPM for the duration of the pass, so I never understood why the Z speed needed to "hunt" in mid-thread. Why not just lock in a constant Z speed?
I dunno whether EMC reads the RPM only at the beginning of the thread, or whether it continues to read the RPM and continues to tune the Z speed in the middle of a threading pass? If it continues to tune the Z speed, that could explain the "hunting," especially with steppers that are not capable of changing speed quickly. Though once again, it seems to me it would be simpler for the software to lock in the Z speed for the duration of the pass? I mean, do you really expect the RPM to vary significantly over the course of a threading pass?
I pulled up my spindle index signal in the Hal scope and it looked clean and consistent, so the spindle index signal does not seem to be the problem. The indicated RPM bounces around maybe +/- 1 rpm, which is pretty good to my way of thinking and certainly no cause to adjust the Z speed in mid thread.