I2C position encoders update (#9533)
Updating I2C position encoders to enable babystepping and Babystep XY when using the ecm microstep correction method. Also changed default method to ECM microstep.
This commit is contained in:
@ -202,8 +202,6 @@ millis_t max_inactive_time = 0,
|
||||
|
||||
#if ENABLED(I2C_POSITION_ENCODERS)
|
||||
I2CPositionEncodersMgr I2CPEM;
|
||||
uint8_t blockBufferIndexRef = 0;
|
||||
millis_t lastUpdateMillis;
|
||||
#endif
|
||||
|
||||
/**
|
||||
@ -549,12 +547,10 @@ void idle(
|
||||
#endif
|
||||
|
||||
#if ENABLED(I2C_POSITION_ENCODERS)
|
||||
if (planner.blocks_queued() &&
|
||||
( (blockBufferIndexRef != planner.block_buffer_head) ||
|
||||
((lastUpdateMillis + I2CPE_MIN_UPD_TIME_MS) < millis())) ) {
|
||||
blockBufferIndexRef = planner.block_buffer_head;
|
||||
static millis_t i2cpem_next_update_ms;
|
||||
if (planner.blocks_queued() && ELAPSED(millis(), i2cpem_next_update_ms)) {
|
||||
I2CPEM.update();
|
||||
lastUpdateMillis = millis();
|
||||
i2cpem_next_update_ms = millis() + I2CPE_MIN_UPD_TIME_MS;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
Reference in New Issue
Block a user