Prusa MINI Firmware overview
|
Go to the documentation of this file.
33 #include "../inc/MarlinConfigPre.h"
35 #if ENABLED(ADVANCED_PAUSE_FEATURE)
37 #include "../libs/nozzle.h"
39 enum PauseMode :
char {
41 PAUSE_MODE_PAUSE_PRINT,
42 PAUSE_MODE_CHANGE_FILAMENT,
43 PAUSE_MODE_LOAD_FILAMENT,
44 PAUSE_MODE_UNLOAD_FILAMENT
47 enum PauseMessage :
char {
48 PAUSE_MESSAGE_PAUSING,
49 PAUSE_MESSAGE_CHANGING,
50 PAUSE_MESSAGE_WAITING,
62 enum PauseMenuResponse :
char {
63 PAUSE_RESPONSE_WAIT_FOR,
64 PAUSE_RESPONSE_EXTRUDE_MORE,
65 PAUSE_RESPONSE_RESUME_PRINT
68 extern PauseMode pause_mode;
69 extern PauseMenuResponse pause_menu_response;
75 #if ENABLED(DUAL_X_CARRIAGE)
76 #define DXC_PARAMS , const int8_t DXC_ext=-1
77 #define DXC_ARGS , const int8_t DXC_ext
78 #define DXC_PASS , DXC_ext
87 bool pause_print(
const float &retract,
const xyz_pos_t &park_point,
const float &unload_length=0,
const bool show_lcd=
false DXC_PARAMS);
89 void wait_for_confirmation(
const bool is_reload=
false,
const int8_t max_beep_count=0 DXC_PARAMS);
91 void resume_print(
const float &slow_load_length=0,
const float &fast_load_length=0,
const float &extrude_length=ADVANCED_PAUSE_PURGE_LENGTH,
const int8_t max_beep_count=0 DXC_PARAMS);
93 bool load_filament(
const float &slow_load_length=0,
const float &fast_load_length=0,
const float &extrude_length=0,
const int8_t max_beep_count=0,
const bool show_lcd=
false,
94 const bool pause_for_user=
false,
const PauseMode
mode=PAUSE_MODE_PAUSE_PRINT DXC_PARAMS);
96 bool unload_filament(
const float &unload_length,
const bool show_lcd=
false,
const PauseMode
mode=PAUSE_MODE_PAUSE_PRINT
97 #
if BOTH(FILAMENT_UNLOAD_ALL_EXTRUDERS, MIXING_EXTRUDER)
98 ,
const float &mix_multiplier=1.0
102 #endif // ADVANCED_PAUSE_FEATURE
static void reset_heater_idle_timer(const uint8_t E_NAME)
Definition: temperature.h:728
#define SERIAL_CHAR(x)
Definition: serial.h:69
T z
Definition: types.h:383
static void synchronize()
Definition: planner.cpp:1556
void host_action_prompt_end()
Definition: marlin_server.cpp:1047
static FORCE_INLINE bool hotEnoughToExtrude(const uint8_t e)
Definition: temperature.h:318
void host_action_resumed()
Definition: marlin_server.cpp:1025
void host_prompt_do(const PromptReason type, const char *const pstr, const char *const pbtn)
Definition: marlin_server.cpp:1103
#define IS_SD_PRINTING()
Definition: cardreader.h:295
Stepper stepper
Definition: stepper.cpp:82
float retract_acceleration
Definition: planner.h:183
void do_blocking_move_to_z(const float &rz, const feedRate_t &fr_mm_s)
Definition: motion.cpp:450
Stopwatch print_job_timer
Definition: printcounter.cpp:63
void do_blocking_move_to_xy(const float &rx, const float &ry, const feedRate_t &fr_mm_s)
Definition: motion.cpp:454
start
Definition: g29_auto.py:150
static bool filament_ran_out
Definition: runout.h:53
T e
Definition: types.h:383
float unload_length
Definition: pause.h:30
xyze_pos_t destination
Definition: motion.cpp:110
uint32_t millis(void)
Definition: wiring_time.c:29
#define SERIAL_ECHO_START()
Definition: serial.h:179
float feedRate_t
Definition: types.h:80
#define KEEPALIVE_STATE(N)
Definition: gcode.h:365
bool extruder_duplication_enabled
Definition: motion.cpp:876
bool wait_for_user
Definition: Marlin.cpp:188
#define SERIAL_ECHO_MSG(S)
Definition: serial.h:183
#define PSTR(str)
Definition: pgmspace.h:31
xyze_pos_t current_position
Definition: motion.cpp:102
static FORCE_INLINE bool targetTooColdToExtrude(const uint8_t)
Definition: temperature.h:315
void line_to_current_position(const feedRate_t &fr_mm_s)
Definition: motion.cpp:285
static void set_directions()
Definition: stepper.cpp:354
static heater_idle_t hotend_idle[HOTENDS]
Definition: temperature.h:322
static void reset()
Definition: runout.h:76
#define HAS_FILAMENT_SENSOR
Definition: Conditionals_LCD.h:535
static bool pause()
Pause the stopwatch.
Definition: stopwatch.cpp:52
static bool start()
Start the stopwatch.
Definition: stopwatch.cpp:68
bool timed_out
Definition: temperature.h:200
if(size<=((png_alloc_size_t) -1) - ob)
Definition: pngwrite.c:2176
#define HOTEND_LOOP()
Definition: Conditionals_LCD.h:436
#define ELAPSED(NOW, SOON)
Definition: millis_t.h:29
const uint8_t[]
Definition: 404_html.c:3
static FORCE_INLINE bool isPaused()
Check if the timer is paused.
Definition: stopwatch.h:100
static void set_e_position_mm(const float &e)
Definition: planner.cpp:2764
#define EXTRUDERS
Definition: Configuration_A3ides_2209_MINI.h:148
#define DEBUGGING(F)
Definition: serial.h:47
void host_action_prompt_button(const char *const pstr)
Definition: marlin_server.cpp:1039
#define MSG_ERR_HOTEND_TOO_COLD
Definition: language.h:244
#define SERIAL_EOL()
Definition: serial.h:181
uint8_t axes_need_homing(uint8_t axis_bits)
Definition: motion.cpp:1041
void host_action_paused(const bool eol)
Definition: marlin_server.cpp:1021
void safe_delay(millis_t ms)
Definition: utility.cpp:28
void host_action_pause(const bool eol)
Definition: marlin_server.cpp:1009
#define BOTH(V1, V2)
Definition: macros.h:183
png_uint_32 length
Definition: png.c:2247
void serialprintPGM(PGM_P str)
Definition: serial.cpp:35
static planner_settings_t settings
Definition: planner.h:251
void onStatusChanged(const char *const msg)
Definition: marlin_server.cpp:904
void host_action_prompt_show()
Definition: marlin_server.cpp:1053
png_structrp int mode
Definition: png.h:1139
#define HAS_LCD_MENU
Definition: Conditionals_LCD.h:360
Nozzle nozzle
Definition: nozzle.cpp:29
void disable_e_stepper(const uint8_t e)
Definition: Marlin.cpp:297
void idle()
Definition: Marlin.cpp:629
Temperature thermalManager
Definition: temperature.cpp:89
#define UNUSED(X)
Definition: stm32f4xx_hal_def.h:74
void host_action_resume()
Definition: marlin_server.cpp:1013
uint32_t millis_t
Definition: millis_t.h:26
#define BUZZ(d, f)
Definition: buzzer.h:126
constexpr uint8_t active_extruder
Definition: motion.h:107
void host_action_prompt_begin(const char *const pstr, const bool eol)
Definition: marlin_server.cpp:1033
PromptReason host_prompt_reason
Definition: marlin_server.cpp:77
Planner planner
Definition: planner.cpp:111
#define const
Definition: zconf.h:230