I2C position encoders update

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:
jaysonkelly 2018-02-05 22:25:24 -07:00 committed by Scott Lahteine
parent b509567567
commit f8a8711075
41 changed files with 134 additions and 128 deletions

View file

@ -713,8 +713,7 @@ static bool send_ok[BUFSIZE];
#if ENABLED(I2C_POSITION_ENCODERS)
I2CPositionEncodersMgr I2CPEM;
uint8_t blockBufferIndexRef = 0;
millis_t lastUpdateMillis;
millis_t i2cpem_next_update_ms;
#endif
#if ENABLED(CNC_WORKSPACE_PLANES)
@ -13564,12 +13563,9 @@ 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;
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
}