Z Servo Madness



I have built a 300mm cubed Wilson II.

Everything checks out except the servo, which rotates clockwise (when viewed from left profile) periodically and collides with the housing. It doesn’t respond to commands except to repeat that action. It’s as if it is being rotated in the wrong direction and returning to a 0 deg position.

At power on it moves counter clockwise about 45 deg and then returns to 0.

See the video at https://youtu.be/05Yp76QSfqU

I have tried the following changes:

undefed MJRICE_BEDLEVELING_RACK, and surrounded all occurrences of x_right_stop_pos with #ifdef MJRICE_BEDLEVELING_RACK

reversed polarity - was correct already

upped voltage to 5.5v (running a dedicated transformer)

moved servo to position 1 >> SERVO_ENDSTOPS {-1, -1, 1}

changed angles >> SERVO_ENDSTOP_ANGLES {0,0, 0,0, 20,110}

changed servo.h MIN_PULSE_WIDTH to 520 from 544


While prob not relevant I had to change every fpos_t to fpos_t1 to compile

Any ideas?




Anyone? I am stuck…


Hoenstly speaking your best bet would be to get someone to print you a rack and pinion or inductive sensor mount… I think you will find both more reliable. Even when my servo was ‘working’ I’d get about 1 in 10 results completely outside the repeatability range.


Thanks for the reply - I actually posted that last message about 6 months ago! Something weird is going on with the forum/BB software.

I found that the problem was something rather embarrassing - I had oriented the servo incorrectly, so that its ‘zero-point’ was facing into the housing. I fixed that and all was well.

I have actually set the printer aside as I need to find a stiffer base. I might get one laser cut out of 3mm high-tensile steel, although I am in Australia so everything costs about 3 times more than it should.