DerAndere1 / Marlin

Optimized firmware for RepRap 3D printers based on the Arduino platform. The branch Marlin2ForPipetBot is optimized firmware for cartesian robots (lab robots, also known as liquid handling robots or pipetting robots)
https://derandere.gitlab.io/pipetbot-a8
GNU General Public License v3.0
53 stars 20 forks source link

[FR] [6axis_dev] With ASYNC_SECONDARY_AXES defined, only axes XYZ should move syncronized and end moves simultaneously #26

Closed DerAndere1 closed 3 years ago

DerAndere1 commented 4 years ago

Description

With ASYNC_SECONDARY_AXES defined, axes I,J, and/or K moves should not be syncronized with the movement of other axes to end at the same timepoint. They should rather move according to the set feedrate for that axis. Only XYZ should move synchronized with each other.

Steps to Reproduce

  1. Flash 6axis_dev branch with ASYNC_SECONDARY_AXES and NON_E_AXES 4
  2. M502
  3. M500
  4. G28
  5. G1 X10 Z20 I64
  6. G1 X74 Z84 I32

Expected behavior: [What you expect to happen]

movement of X,Y,Z should be synchronized to end simultaneously. but there should be no synchronization with movement of secondary axes (AXIS_I). Step 4 should result in Fast and short sync movement of X,Y and end early but simultaneously while I should move with MAX_FEEDRATE[3] to the destinaton, reaching the destination later. Step 5: Axes XZ should move synchronized with each other and movement of these axes should end simultaneously. Short movement of I should again happen with MAX_FEEDRATE[3] and reach the destination earlier than the axes XZ.

Actual behavior: [What actually happens]

All movements are synchronized and end simultaneously

Additional Information

DerAndere1 commented 3 years ago

I removed ASYNC_SECONDARY_AXES support and related code. First we should get multi-axis support with default behaviour (syncronized movement of all axes) merged.