Public projects 1

Lathe - Electronic Lead Screw

Project showcase by Nick Romeo

  • 93 respects

Toolbox 2

Respected projects 1

Garden Clock Project

Project showcase by PuranSingh and PiaraSingh

  • 35 respects

  • Lathe - Electronic Lead Screw over 1 year ago

    For the most part yes, you are correct. When I am threading I leave the spindle on and I do not change direction. I leave it run and disengage/re-engage the carriage like you would normally do with the lever and the dial. The problem is, if you stop the lathe to check the threads you get everything out of sync. So if you go to cut threads you need to make sure you know the exact depth and do it right the first time. If I am cutting critical threads I will go back to the gear system since all you have to do is take off the pulleys and put the gears back on. I am thinking of adding a timing light indicator to use instead of the dial so you know when to engage the carriage based on the timing of the spindle .

  • Lathe - Electronic Lead Screw over 1 year ago


    You can contact me directly at

    I would be happy to help.


  • Lathe - Electronic Lead Screw over 1 year ago

    Change the debounce time to 0.5.

    you have to eliminate the if statement in the speed sensor loop. So you could change the speed sensor loop to something like this. I did not run this code but it should look something like this.

    void speedSensor()
    time = millis();
    int currentSensorState = digitalRead(SensorPin);
    if (currentSensorState != lastSensorState)
    sensorState = currentSensorState;
    if (sensorState == LOW)
    calculateRPM(); // Real RPM from sensor
    if (currentX == 0)
    else if (currentX == 1)
    lastSensorState = currentSensorState;
    lcdRPM = RPM;

    I'm not sure why your RPM readings vary so much does the lead screw respond to the change in RPM's on the spindle?

Add projectSign up / Login