diff --git a/clock.c b/clock.c index 5a475f2..b0a4de6 100644 --- a/clock.c +++ b/clock.c @@ -867,6 +867,7 @@ enum servo_state clock_synchronize(struct clock *c, case SERVO_UNLOCKED: break; case SERVO_JUMP: + clock_ppb(c->clkid, -adj); clock_step(c->clkid, -c->master_offset); c->t1 = tmv_zero(); c->t2 = tmv_zero(); diff --git a/pi.c b/pi.c index 5fbce38..934fff6 100644 --- a/pi.c +++ b/pi.c @@ -87,6 +87,7 @@ static double pi_sample(struct servo *servo, break; case 3: *state = SERVO_JUMP; + ppb = s->drift; s->count = 4; break; case 4: