Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add extruder load/unload in LCD Menu Prepare #6441

Closed
garaguido opened this issue Apr 24, 2017 · 14 comments
Closed

Add extruder load/unload in LCD Menu Prepare #6441

garaguido opened this issue Apr 24, 2017 · 14 comments
Labels
T: Design Concept Technical ideas about ways and methods.

Comments

@garaguido
Copy link

garaguido commented Apr 24, 2017

Is this possible to ad and updated the program lines ( original from Glenn West for RC1) in ultralcd.cpp for loading and unloading filament to bowden extruder ?

  1. Menu Prepare - Preheat ABS (Or PLA)
  2. Menu Prepare - Unload Filament
  3. Menu Prepare - Load Filament
  4. Menu Prepare - Feed Filament

With1 meter bowden tube, adjust your code for your bowden size.

Change this in ultralcd.cpp

static void lcd_prepare_menu()
{
    START_MENU();
    MENU_ITEM(back, MSG_MAIN, lcd_main_menu);
#ifdef SDSUPPORT
    //MENU_ITEM(function, MSG_AUTOSTART, lcd_autostart_sd);
#endif
    MENU_ITEM(gcode, MSG_DISABLE_STEPPERS, PSTR("M84"));
    MENU_ITEM(gcode, MSG_AUTO_HOME, PSTR("G28"));
    MENU_ITEM(gcode, MSG_LOAD_FILAMENT, PSTR("G21 G F200 E10"));
    MENU_ITEM(gcode, MSG_FEED_FILAMENT, PSTR("G F1000 E1000"));
    MENU_ITEM(gcode, MSG_UNLOAD_FILAMENT, PSTR("G F1000 E-1000"));
    //MENU_ITEM(gcode, MSG_SET_ORIGIN, PSTR("G92 X0 Y0 Z0"));
    MENU_ITEM(function, MSG_PREHEAT_PLA, lcd_preheat_pla);
    MENU_ITEM(function, MSG_PREHEAT_ABS, lcd_preheat_abs);
    MENU_ITEM(function, MSG_COOLDOWN, lcd_cooldown);
#if PS_ON_PIN > -1
    if (powersupply)
    {
        MENU_ITEM(gcode, MSG_SWITCH_PS_OFF, PSTR("M81"));
    }else{
        MENU_ITEM(gcode, MSG_SWITCH_PS_ON, PSTR("M80"));
    }
#endif
    MENU_ITEM(submenu, MSG_MOVE_AXIS, lcd_move_menu);
    END_MENU();
}
@Roxy-3D
Copy link
Member

Roxy-3D commented Apr 24, 2017

Yes.. it is possible... But the M600 Filament Change command is available from the LCD Panel. And the user does get full control over those types of things. Can you give it a try and see if it handles what you need?

/**
 * Filament Change
 * Experimental filament change support.
 * Adds the GCode M600 for initiating filament change.
 *
 * Requires an LCD display.
 * This feature is required for the default FILAMENT_RUNOUT_SCRIPT.
 */
#define FILAMENT_CHANGE_FEATURE
#if ENABLED(FILAMENT_CHANGE_FEATURE)
  #define FILAMENT_CHANGE_X_POS 3             // X position of hotend
  #define FILAMENT_CHANGE_Y_POS 3             // Y position of hotend
  #define FILAMENT_CHANGE_Z_ADD 10            // Z addition of hotend (lift)
  #define FILAMENT_CHANGE_XY_FEEDRATE 100     // X and Y axes feedrate in mm/s (also used for delta printers Z axis)
  #define FILAMENT_CHANGE_Z_FEEDRATE 5        // Z axis feedrate in mm/s (not used for delta printers)
  #define FILAMENT_CHANGE_RETRACT_FEEDRATE 60 // Initial retract feedrate in mm/s
  #define FILAMENT_CHANGE_RETRACT_LENGTH 2    // Initial retract in mm
                                              // It is a short retract used immediately after print interrupt before move to filament exchange position
  #define FILAMENT_CHANGE_UNLOAD_FEEDRATE 10  // Unload filament feedrate in mm/s - filament unloading can be fast
  #define FILAMENT_CHANGE_UNLOAD_LENGTH 100   // Unload filament length from hotend in mm
                                              // Longer length for bowden printers to unload filament from whole bowden tube,
                                              // shorter length for printers without bowden to unload filament from extruder only,
                                              // 0 to disable unloading for manual unloading
  #define FILAMENT_CHANGE_LOAD_FEEDRATE 6     // Load filament feedrate in mm/s - filament loading into the bowden tube can be fast
  #define FILAMENT_CHANGE_LOAD_LENGTH 0       // Load filament length over hotend in mm
                                              // Longer length for bowden printers to fast load filament into whole bowden tube over the hotend,
                                              // Short or zero length for printers without bowden where loading is not used
  #define FILAMENT_CHANGE_EXTRUDE_FEEDRATE 3  // Extrude filament feedrate in mm/s - must be slower than load feedrate
  #define FILAMENT_CHANGE_EXTRUDE_LENGTH 50   // Extrude filament length in mm after filament is loaded over the hotend,
                                              // 0 to disable for manual extrusion
                                              // Filament can be extruded repeatedly from the filament exchange menu to fill the hotend,
                                              // or until outcoming filament color is not clear for filament color change
  #define FILAMENT_CHANGE_NOZZLE_TIMEOUT 45   // Turn off nozzle if user doesn't change filament within this time limit in seconds
  #define FILAMENT_CHANGE_NUMBER_OF_ALERT_BEEPS 5 // Number of alert beeps before printer goes quiet
  #define FILAMENT_CHANGE_NO_STEPPER_TIMEOUT  // Enable to have stepper motors hold position during filament change
                                              // even if it takes longer than DEFAULT_STEPPER_DEACTIVE_TIME.
  #define PARK_HEAD_ON_PAUSE                  // Go to filament change position on pause, return to print position on resume
#endif

@garaguido
Copy link
Author

garaguido commented Apr 24, 2017

From which Marlin version is this aplyed RC8 , and enable it in configuration.h ?

@Jinxycob
Copy link

you found it yet?. have a look in the Configuration_adv.h folder

@garaguido
Copy link
Author

I found it , but is it only for the ULTIPANEL ?
I use the RepRapDiscount FULL GRAPHIC Smart Controller.

@Jinxycob
Copy link

Jinxycob commented Apr 25, 2017

still works I use it all the time cracking feature just do it! :P
only becomes visible under TUNE setting once you start printing
though its still not altogether what you wanted as a preloader

@garaguido
Copy link
Author

Nop dos not working by me, even by start printing .
What MarlinRC are you using ?

@garaguido
Copy link
Author

It is working now thanks fore your help , but that is not my idee of using it
It was verry simpler to integrate this in de LCD menu , my use of it is for loading / unloading the filament in the PTE tube at PREPARE , before printing , not for changing a other filament color .
The code I get (see higher up) dos not working , iI get errors in Arduino IDE
_

@Jinxycob
Copy link

Jinxycob commented Apr 26, 2017 via email

@thinkyhead
Copy link
Member

thinkyhead commented Apr 26, 2017

@garaguido
If you're going to post code in messages, please format it correctly. I have fixed it above.
Github's short and simple guide to Markdown is here:
https://guides.github.com/features/mastering-markdown/

@thinkyhead thinkyhead added the T: Design Concept Technical ideas about ways and methods. label Apr 26, 2017
@thinkyhead
Copy link
Member

thinkyhead commented Apr 26, 2017

a loader feature

Pre-loading filament has been implemented as part of the M600 feature. The only requirement is that you heat the nozzle above minimum extrusion temperature. Then the option becomes available in the LCD menu. This is only the first implementation. In the future it may be available up-front even while cold, but then pause on a "wait" screen while it heats up the nozzle.

@garaguido
Copy link
Author

Yes , that is what I am talking about .... for the future ... please ?

@schirrel
Copy link

this is similar to Manual Filament Change: A New Hope #3605 dont?

@thinkyhead
Copy link
Member

Now included as part of ADVANCED_PAUSE_FEATURE. The only thing currently missing is an option to skip unload and go straight to load, but that will be added soon.

@github-actions
Copy link

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@github-actions github-actions bot locked and limited conversation to collaborators Mar 23, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
T: Design Concept Technical ideas about ways and methods.
Projects
None yet
Development

No branches or pull requests

5 participants