🧑💻 Misc. updates for extra axes (#23521)
This commit is contained in:
		
				
					committed by
					
						
						Scott Lahteine
					
				
			
			
				
	
			
			
			
						parent
						
							39e4310c7b
						
					
				
				
					commit
					5617edbb96
				
			@@ -39,7 +39,9 @@
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * M907: Set digital trimpot motor current using axis codes X, Y, Z, E, B, S
 | 
			
		||||
 * M907: Set digital trimpot motor current using axis codes X [Y] [Z] [E]
 | 
			
		||||
 *   B<current> - Special case for 4th (E) axis
 | 
			
		||||
 *   S<current> - Special case to set first 3 axes
 | 
			
		||||
 */
 | 
			
		||||
void GcodeSuite::M907() {
 | 
			
		||||
  #if HAS_MOTOR_CURRENT_SPI
 | 
			
		||||
@@ -75,7 +77,7 @@ void GcodeSuite::M907() {
 | 
			
		||||
      if (parser.seenval('E')) stepper.set_digipot_current(2, parser.value_int());
 | 
			
		||||
    #endif
 | 
			
		||||
 | 
			
		||||
  #endif
 | 
			
		||||
  #endif // HAS_MOTOR_CURRENT_PWM
 | 
			
		||||
 | 
			
		||||
  #if HAS_MOTOR_CURRENT_I2C
 | 
			
		||||
    // this one uses actual amps in floating point
 | 
			
		||||
 
 | 
			
		||||
@@ -49,6 +49,9 @@
 | 
			
		||||
 *    L<linear> = Override retract Length
 | 
			
		||||
 *    X<pos>    = Override park position X
 | 
			
		||||
 *    Y<pos>    = Override park position Y
 | 
			
		||||
 *    A<pos>    = Override park position A (requires AXIS*_NAME 'A')
 | 
			
		||||
 *    B<pos>    = Override park position B (requires AXIS*_NAME 'B')
 | 
			
		||||
 *    C<pos>    = Override park position C (requires AXIS*_NAME 'C')
 | 
			
		||||
 *    Z<linear> = Override Z raise
 | 
			
		||||
 *
 | 
			
		||||
 *  With an LCD menu:
 | 
			
		||||
@@ -60,9 +63,15 @@ void GcodeSuite::M125() {
 | 
			
		||||
 | 
			
		||||
  xyz_pos_t park_point = NOZZLE_PARK_POINT;
 | 
			
		||||
 | 
			
		||||
  // Move XY axes to filament change position or given position
 | 
			
		||||
  if (parser.seenval('X')) park_point.x = RAW_X_POSITION(parser.linearval('X'));
 | 
			
		||||
  if (parser.seenval('Y')) park_point.y = RAW_X_POSITION(parser.linearval('Y'));
 | 
			
		||||
  // Move to filament change position or given position
 | 
			
		||||
  LINEAR_AXIS_CODE(
 | 
			
		||||
    if (parser.seenval('X')) park_point.x = RAW_X_POSITION(parser.linearval('X')),
 | 
			
		||||
    if (parser.seenval('Y')) park_point.y = RAW_Y_POSITION(parser.linearval('Y')),
 | 
			
		||||
    NOOP,
 | 
			
		||||
    if (parser.seenval(AXIS4_NAME)) park_point.i = RAW_I_POSITION(parser.linearval(AXIS4_NAME)),
 | 
			
		||||
    if (parser.seenval(AXIS5_NAME)) park_point.j = RAW_J_POSITION(parser.linearval(AXIS5_NAME)),
 | 
			
		||||
    if (parser.seenval(AXIS6_NAME)) park_point.k = RAW_K_POSITION(parser.linearval(AXIS6_NAME))
 | 
			
		||||
  );
 | 
			
		||||
 | 
			
		||||
  // Lift Z axis
 | 
			
		||||
  if (parser.seenval('Z')) park_point.z = parser.linearval('Z');
 | 
			
		||||
 
 | 
			
		||||
@@ -101,10 +101,8 @@ void GcodeSuite::M600() {
 | 
			
		||||
  if (standardM600)
 | 
			
		||||
    ui.pause_show_message(PAUSE_MESSAGE_CHANGING, PAUSE_MODE_PAUSE_PRINT, target_extruder);
 | 
			
		||||
 | 
			
		||||
  #if ENABLED(HOME_BEFORE_FILAMENT_CHANGE)
 | 
			
		||||
    // If needed, home before parking for filament change
 | 
			
		||||
    home_if_needed(true);
 | 
			
		||||
  #endif
 | 
			
		||||
  // If needed, home before parking for filament change
 | 
			
		||||
  TERN_(HOME_BEFORE_FILAMENT_CHANGE, home_if_needed(true));
 | 
			
		||||
 | 
			
		||||
  #if HAS_MULTI_EXTRUDER
 | 
			
		||||
    // Change toolhead if specified
 | 
			
		||||
@@ -118,12 +116,18 @@ void GcodeSuite::M600() {
 | 
			
		||||
 | 
			
		||||
  xyz_pos_t park_point NOZZLE_PARK_POINT;
 | 
			
		||||
 | 
			
		||||
  // Lift Z axis
 | 
			
		||||
  // Lift Z axis first
 | 
			
		||||
  if (parser.seenval('Z')) park_point.z = parser.linearval('Z');
 | 
			
		||||
 | 
			
		||||
  // Move XY axes to filament change position or given position
 | 
			
		||||
  if (parser.seenval('X')) park_point.x = parser.linearval('X');
 | 
			
		||||
  if (parser.seenval('Y')) park_point.y = parser.linearval('Y');
 | 
			
		||||
  LINEAR_AXIS_CODE(
 | 
			
		||||
    if (parser.seenval('X')) park_point.x = parser.linearval('X'),
 | 
			
		||||
    if (parser.seenval('Y')) park_point.y = parser.linearval('Y'),
 | 
			
		||||
    NOOP,
 | 
			
		||||
    if (parser.seenval(AXIS4_NAME)) park_point.i = parser.linearval(AXIS4_NAME);
 | 
			
		||||
    if (parser.seenval(AXIS5_NAME)) park_point.j = parser.linearval(AXIS5_NAME);
 | 
			
		||||
    if (parser.seenval(AXIS6_NAME)) park_point.k = parser.linearval(AXIS6_NAME);
 | 
			
		||||
  );
 | 
			
		||||
 | 
			
		||||
  #if HAS_HOTEND_OFFSET && NONE(DUAL_X_CARRIAGE, DELTA)
 | 
			
		||||
    park_point += hotend_offset[active_extruder];
 | 
			
		||||
 
 | 
			
		||||
@@ -41,6 +41,9 @@ static void tmc_print_current(TMC &st) {
 | 
			
		||||
 *   X[current]  - Set mA current for X driver(s)
 | 
			
		||||
 *   Y[current]  - Set mA current for Y driver(s)
 | 
			
		||||
 *   Z[current]  - Set mA current for Z driver(s)
 | 
			
		||||
 *   A[current]  - Set mA current for A driver(s) (Requires AXIS*_NAME 'A')
 | 
			
		||||
 *   B[current]  - Set mA current for B driver(s) (Requires AXIS*_NAME 'B')
 | 
			
		||||
 *   C[current]  - Set mA current for C driver(s) (Requires AXIS*_NAME 'C')
 | 
			
		||||
 *   E[current]  - Set mA current for E driver(s)
 | 
			
		||||
 *
 | 
			
		||||
 *   I[index]    - Axis sub-index (Omit or 0 for X, Y, Z; 1 for X2, Y2, Z2; 2 for Z3; 3 for Z4.)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user