Compare commits
28 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 03a0226ae3 | |||
| 9c94691688 | |||
| c52bac8bab | |||
| 98a79c9ab8 | |||
| 3f42b06bc2 | |||
| 1ab0d240b9 | |||
| 5a4a107711 | |||
| afa6a0c993 | |||
| 7429a39278 | |||
| 156ed96649 | |||
| b018fb59d7 | |||
| 4d9190598b | |||
| 5dfec58d7b | |||
| 6d84ca7671 | |||
| d66afdc244 | |||
| 242cda28f6 | |||
| 0dc4a5d928 | |||
| 612ca52676 | |||
| d1be569466 | |||
| 95e0ab52d6 | |||
| e9214cf1fb | |||
| d46ba9e969 | |||
| b2d32227aa | |||
| c1e14d6db7 | |||
| 7ef484be7e | |||
| 410b25d4e9 | |||
| 8c22e7710c | |||
| b4d2c19723 |
@@ -1,6 +1,6 @@
|
||||
<!--
|
||||
|
||||
Have you read Marlin's Code of Conduct? By filing an Issue, you are expected to comply with it, including treating everyone with respect: https://github.com/MarlinFirmware/Marlin/blob/1.1.x/.github/code_of_conduct.md
|
||||
Have you read Marlin's Code of Conduct? By filing an Issue, you are expected to comply with it, including treating everyone with respect: https://github.com/MarlinFirmware/Marlin/blob/master/.github/code_of_conduct.md
|
||||
|
||||
Do you want to ask a question? Are you looking for support? Please don't post here. Instead please use the Marlin Firmware forum at http://forums.reprap.org/list.php?415 or the Marlin Facebook Group https://www.facebook.com/groups/1049718498464482/.
|
||||
|
||||
@@ -28,4 +28,4 @@ Before filing an issue be sure to test the 1.1 and/or 2.0 "bugfix" branches to s
|
||||
|
||||
* Include a ZIP file containing your `Configuration.h` and `Configuration_adv.h` files.
|
||||
* Provide pictures or links to videos that clearly demonstrate the issue.
|
||||
* See [How Can I Contribute](https://github.com/MarlinFirmware/Marlin/blob/1.1.x/.github/contributing.md#how-can-i-contribute) for additional guidelines.
|
||||
* See [How Can I Contribute](#how-can-i-contribute) for additional guidelines.
|
||||
|
||||
+1
-2
@@ -125,7 +125,6 @@ lib/readme.txt
|
||||
#Visual Studio
|
||||
*.sln
|
||||
*.vcxproj
|
||||
*.vcxproj.user
|
||||
*.vcxproj.filters
|
||||
Release/
|
||||
Debug/
|
||||
@@ -133,7 +132,7 @@ __vm/
|
||||
.vs/
|
||||
vc-fileutils.settings
|
||||
|
||||
#Visual Studio Code
|
||||
#VScode
|
||||
.vscode
|
||||
.vscode/.browse.c_cpp.db*
|
||||
.vscode/c_cpp_properties.json
|
||||
|
||||
+62
-78
@@ -92,10 +92,10 @@ script:
|
||||
- opt_set TEMP_SENSOR_BED 1
|
||||
- opt_set POWER_SUPPLY 1
|
||||
- opt_enable PIDTEMPBED FIX_MOUNTED_PROBE Z_SAFE_HOMING
|
||||
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT EEPROM_SETTINGS PINS_DEBUGGING
|
||||
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT EEPROM_SETTINGS
|
||||
- opt_enable BLINKM PCA9632 RGB_LED NEOPIXEL_LED AUTO_POWER_CONTROL NOZZLE_PARK_FEATURE FILAMENT_RUNOUT_SENSOR
|
||||
- opt_enable AUTO_BED_LEVELING_LINEAR Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE SKEW_CORRECTION SKEW_CORRECTION_FOR_Z SKEW_CORRECTION_GCODE
|
||||
- opt_enable_adv ARC_P_CIRCLES ADVANCED_PAUSE_FEATURE CNC_WORKSPACE_PLANES CNC_COORDINATE_SYSTEMS POWER_LOSS_RECOVERY POWER_LOSS_PIN POWER_LOSS_STATE
|
||||
- opt_enable_adv ARC_P_CIRCLES ADVANCED_PAUSE_FEATURE CNC_WORKSPACE_PLANES CNC_COORDINATE_SYSTEMS POWER_LOSS_RECOVERY
|
||||
- opt_enable_adv FWRETRACT MAX7219_DEBUG LED_CONTROL_MENU CASE_LIGHT_ENABLE CASE_LIGHT_USE_NEOPIXEL CODEPENDENT_XY_HOMING
|
||||
- opt_set GRID_MAX_POINTS_X 16
|
||||
- opt_set_adv FANMUX0_PIN 53
|
||||
@@ -111,16 +111,14 @@ script:
|
||||
- opt_set TEMP_SENSOR_3 20
|
||||
- opt_set TEMP_SENSOR_4 999
|
||||
- opt_set TEMP_SENSOR_BED 1
|
||||
- opt_enable AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 DEBUG_LEVELING_FEATURE G26_MESH_EDITING ENABLE_LEVELING_FADE_HEIGHT SKEW_CORRECTION
|
||||
- opt_enable EEPROM_SETTINGS EEPROM_CHITCHAT REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
|
||||
- opt_enable_adv CUSTOM_USER_MENUS I2C_POSITION_ENCODERS BABYSTEPPING BABYSTEP_XY LIN_ADVANCE NANODLP_Z_SYNC QUICK_HOME JUNCTION_DEVIATION MAX7219_DEBUG
|
||||
- opt_set_adv MAX7219_ROTATE 270
|
||||
- opt_enable AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 DEBUG_LEVELING_FEATURE G26_MESH_EDITING ENABLE_LEVELING_FADE_HEIGHT EEPROM_SETTINGS EEPROM_CHITCHAT G3D_PANEL SKEW_CORRECTION
|
||||
- opt_enable_adv CUSTOM_USER_MENUS I2C_POSITION_ENCODERS BABYSTEPPING BABYSTEP_XY LIN_ADVANCE NANODLP_Z_SYNC QUICK_HOME
|
||||
- build_marlin
|
||||
#
|
||||
# Add a Sled Z Probe, use UBL Cartesian moves, use Japanese language
|
||||
#
|
||||
- opt_enable Z_PROBE_SLED SKEW_CORRECTION SKEW_CORRECTION_FOR_Z SKEW_CORRECTION_GCODE S_CURVE_ACCELERATION
|
||||
- opt_set LCD_LANGUAGE kana_utf8
|
||||
- opt_set LANGUAGE kana_utf8
|
||||
- opt_enable Z_PROBE_SLED SKEW_CORRECTION SKEW_CORRECTION_FOR_Z SKEW_CORRECTION_GCODE BEZIER_JERK_CONTROL
|
||||
- opt_disable SEGMENT_LEVELED_MOVES
|
||||
- opt_enable_adv BABYSTEP_ZPROBE_OFFSET DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||
- build_marlin
|
||||
@@ -162,13 +160,25 @@ script:
|
||||
- opt_set_adv I2C_SLAVE_ADDRESS 63
|
||||
- build_marlin
|
||||
#
|
||||
# Mixing Extruder with 5 steppers, Cyrillic
|
||||
# Test 5 extruders on AZTEEG_X3_PRO (can use any board with >=5 extruders defined)
|
||||
# Include a test for LIN_ADVANCE here also
|
||||
#
|
||||
- opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO
|
||||
- opt_set EXTRUDERS 5
|
||||
- opt_set TEMP_SENSOR_1 1
|
||||
- opt_set TEMP_SENSOR_2 5
|
||||
- opt_set TEMP_SENSOR_3 20
|
||||
- opt_set TEMP_SENSOR_4 999
|
||||
- opt_set TEMP_SENSOR_BED 1
|
||||
- opt_enable_adv LIN_ADVANCE
|
||||
- build_marlin
|
||||
#
|
||||
# Mixing Extruder with 5 steppers
|
||||
#
|
||||
- restore_configs
|
||||
- opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO
|
||||
- opt_enable MIXING_EXTRUDER CR10_STOCKDISPLAY
|
||||
- opt_enable MIXING_EXTRUDER
|
||||
- opt_set MIXING_STEPPERS 5
|
||||
- opt_set LCD_LANGUAGE ru
|
||||
- build_marlin
|
||||
#
|
||||
# Test DUAL_X_CARRIAGE
|
||||
@@ -183,11 +193,11 @@ script:
|
||||
#
|
||||
# Test SPEAKER with BOARD_BQ_ZUM_MEGA_3D and BQ_LCD_SMART_CONTROLLER
|
||||
#
|
||||
#- restore_configs
|
||||
#- opt_set MOTHERBOARD BOARD_BQ_ZUM_MEGA_3D
|
||||
#- opt_set LCD_FEEDBACK_FREQUENCY_DURATION_MS 10
|
||||
#- opt_set LCD_FEEDBACK_FREQUENCY_HZ 100
|
||||
#- opt_enable BQ_LCD_SMART_CONTROLLER SPEAKER
|
||||
- restore_configs
|
||||
- opt_set MOTHERBOARD BOARD_BQ_ZUM_MEGA_3D
|
||||
- opt_set LCD_FEEDBACK_FREQUENCY_DURATION_MS 10
|
||||
- opt_set LCD_FEEDBACK_FREQUENCY_HZ 100
|
||||
- opt_enable BQ_LCD_SMART_CONTROLLER SPEAKER
|
||||
#
|
||||
# Test SWITCHING_EXTRUDER
|
||||
#
|
||||
@@ -196,14 +206,15 @@ script:
|
||||
- opt_set EXTRUDERS 2
|
||||
- opt_enable NUM_SERVOS
|
||||
- opt_set NUM_SERVOS 1
|
||||
- opt_set TEMP_SENSOR_1 1
|
||||
- opt_enable SWITCHING_EXTRUDER ULTIMAKERCONTROLLER
|
||||
- build_marlin
|
||||
#
|
||||
# Enable COREXY
|
||||
#
|
||||
#- restore_configs
|
||||
#- opt_enable COREXY
|
||||
#- build_marlin
|
||||
- restore_configs
|
||||
- opt_enable COREXY
|
||||
- build_marlin
|
||||
#
|
||||
# Test many less common options
|
||||
#
|
||||
@@ -217,7 +228,7 @@ script:
|
||||
- opt_enable_adv VOLUMETRIC_DEFAULT_ON NO_WORKSPACE_OFFSETS ACTION_ON_KILL
|
||||
- opt_enable_adv EXTRA_FAN_SPEED FWERETRACT Z_DUAL_STEPPER_DRIVERS Z_DUAL_ENDSTOPS
|
||||
- opt_enable_adv MENU_ADDAUTOSTART SDCARD_SORT_ALPHA
|
||||
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER BABYSTEPPING DAC_MOTOR_CURRENT_DEFAULT
|
||||
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER
|
||||
- opt_enable FILAMENT_LCD_DISPLAY FILAMENT_WIDTH_SENSOR
|
||||
- opt_enable ENDSTOP_INTERRUPTS_FEATURE FAN_SOFT_PWM SDSUPPORT
|
||||
- opt_enable USE_XMAX_PLUG
|
||||
@@ -227,15 +238,15 @@ script:
|
||||
#
|
||||
# ULTRA_LCD
|
||||
#
|
||||
#- restore_configs
|
||||
#- opt_enable ULTRA_LCD
|
||||
#- build_marlin
|
||||
- restore_configs
|
||||
- opt_enable ULTRA_LCD
|
||||
- build_marlin
|
||||
#
|
||||
# DOGLCD
|
||||
#
|
||||
#- restore_configs
|
||||
#- opt_enable DOGLCD
|
||||
#- build_marlin
|
||||
- restore_configs
|
||||
- opt_enable DOGLCD
|
||||
- build_marlin
|
||||
#
|
||||
# MAKRPANEL
|
||||
# Needs to use Melzi and Sanguino hardware
|
||||
@@ -246,26 +257,15 @@ script:
|
||||
#
|
||||
# REPRAP_DISCOUNT_SMART_CONTROLLER, SDSUPPORT, BABYSTEPPING, RIGIDBOARD_V2, and DAC_MOTOR_CURRENT_DEFAULT
|
||||
#
|
||||
#- restore_configs
|
||||
#- opt_set MOTHERBOARD BOARD_RIGIDBOARD_V2
|
||||
#- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT BABYSTEPPING DAC_MOTOR_CURRENT_DEFAULT
|
||||
#- build_marlin
|
||||
# #
|
||||
- restore_configs
|
||||
- opt_set MOTHERBOARD BOARD_RIGIDBOARD_V2
|
||||
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT BABYSTEPPING DAC_MOTOR_CURRENT_DEFAULT
|
||||
- build_marlin
|
||||
#
|
||||
# G3D_PANEL with SDCARD_SORT_ALPHA and STATUS_MESSAGE_SCROLLING
|
||||
#
|
||||
#- restore_configs
|
||||
#- opt_enable G3D_PANEL SDSUPPORT
|
||||
#- opt_enable_adv SDCARD_SORT_ALPHA STATUS_MESSAGE_SCROLLING SCROLL_LONG_FILENAMES
|
||||
#- opt_set_adv SDSORT_GCODE true
|
||||
#- opt_set_adv SDSORT_USES_RAM true
|
||||
#- opt_set_adv SDSORT_USES_STACK true
|
||||
#- opt_set_adv SDSORT_CACHE_NAMES true
|
||||
#- build_marlin
|
||||
#
|
||||
# REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER with LIGHTWEIGHT_UI
|
||||
#
|
||||
- restore_configs
|
||||
- opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT
|
||||
- opt_enable G3D_PANEL SDSUPPORT
|
||||
- opt_enable_adv SDCARD_SORT_ALPHA STATUS_MESSAGE_SCROLLING SCROLL_LONG_FILENAMES LIGHTWEIGHT_UI
|
||||
- opt_set_adv SDSORT_GCODE true
|
||||
- opt_set_adv SDSORT_USES_RAM true
|
||||
@@ -273,6 +273,13 @@ script:
|
||||
- opt_set_adv SDSORT_CACHE_NAMES true
|
||||
- build_marlin
|
||||
#
|
||||
# REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER with SDCARD_SORT_ALPHA and STATUS_MESSAGE_SCROLLING
|
||||
#
|
||||
- restore_configs
|
||||
- opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT
|
||||
- opt_enable_adv SDCARD_SORT_ALPHA STATUS_MESSAGE_SCROLLING SCROLL_LONG_FILENAMES
|
||||
- build_marlin
|
||||
#
|
||||
# REPRAPWORLD_KEYPAD
|
||||
#
|
||||
# Cant find configuration details to get it to compile
|
||||
@@ -282,9 +289,9 @@ script:
|
||||
#
|
||||
# RA_CONTROL_PANEL
|
||||
#
|
||||
#- restore_configs
|
||||
#- opt_enable RA_CONTROL_PANEL PINS_DEBUGGING
|
||||
#- build_marlin
|
||||
- restore_configs
|
||||
- opt_enable RA_CONTROL_PANEL PINS_DEBUGGING
|
||||
- build_marlin
|
||||
#
|
||||
######## I2C LCD/PANELS ##############
|
||||
#
|
||||
@@ -312,19 +319,9 @@ script:
|
||||
#
|
||||
# LCM1602
|
||||
#
|
||||
#- restore_configs
|
||||
#- opt_enable LCM1602
|
||||
#- build_marlin
|
||||
#
|
||||
# Language files test with REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
|
||||
#
|
||||
#- restore_configs
|
||||
#- opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT
|
||||
#- for lang in an bg ca zh_CN zh_TW cz da de el el-gr en es eu fi fr gl hr it jp-kana nl pl pt pt-br ru sk tr uk test; do opt_set LCD_LANGUAGE $lang; echo "compile with language $lang ..."; build_marlin
|
||||
#
|
||||
#- restore_configs
|
||||
#- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT
|
||||
#- for lang in an bg ca zh_CN zh_TW cz da de el el-gr en es eu fi fr gl hr it jp-kana nl pl pt pt-br ru sk tr uk test; do opt_set LCD_LANGUAGE $lang; echo "compile with language $lang ..."; build_marlin
|
||||
- restore_configs
|
||||
- opt_enable LCM1602
|
||||
- build_marlin
|
||||
#
|
||||
#
|
||||
######## Example Configurations ##############
|
||||
@@ -342,8 +339,8 @@ script:
|
||||
# Delta Config (generic) + UBL + ALLEN_KEY + OLED_PANEL_TINYBOY2 + EEPROM_SETTINGS
|
||||
#
|
||||
- use_example_configs delta/generic
|
||||
- opt_enable AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 Z_PROBE_ALLEN_KEY EEPROM_SETTINGS EEPROM_CHITCHAT
|
||||
- opt_enable OLED_PANEL_TINYBOY2 MESH_EDIT_GFX_OVERLAY
|
||||
- opt_disable DISABLE_MIN_ENDSTOPS
|
||||
- opt_enable AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 Z_PROBE_ALLEN_KEY EEPROM_SETTINGS EEPROM_CHITCHAT OLED_PANEL_TINYBOY2 MESH_EDIT_GFX_OVERLAY
|
||||
- build_marlin
|
||||
#
|
||||
# Delta Config (FLSUN AC because it's complex)
|
||||
@@ -356,25 +353,12 @@ script:
|
||||
#- use_example_configs makibox
|
||||
#- build_marlin
|
||||
#
|
||||
# SCARA with TMC2130
|
||||
# SCARA with TMC2130 and TMC2208
|
||||
#
|
||||
- use_example_configs SCARA
|
||||
- opt_enable AUTO_BED_LEVELING_BILINEAR FIX_MOUNTED_PROBE USE_ZMIN_PLUG EEPROM_SETTINGS EEPROM_CHITCHAT ULTIMAKERCONTROLLER
|
||||
- opt_set X_DRIVER_TYPE TMC2130
|
||||
- opt_set Y_DRIVER_TYPE TMC2130
|
||||
- opt_set Z_DRIVER_TYPE TMC2130
|
||||
- opt_set E0_DRIVER_TYPE TMC2130
|
||||
- opt_enable_adv MONITOR_DRIVER_STATUS STEALTHCHOP HYBRID_THRESHOLD SENSORLESS_HOMING
|
||||
- build_marlin
|
||||
#
|
||||
# TMC2208 Config
|
||||
#
|
||||
- restore_configs
|
||||
- opt_set X_DRIVER_TYPE TMC2208
|
||||
- opt_set Y_DRIVER_TYPE TMC2208
|
||||
- opt_set Z_DRIVER_TYPE TMC2208
|
||||
- opt_set E0_DRIVER_TYPE TMC2208
|
||||
- opt_enable_adv MONITOR_DRIVER_STATUS STEALTHCHOP HYBRID_THRESHOLD TMC_DEBUG
|
||||
- opt_enable AUTO_BED_LEVELING_BILINEAR FIX_MOUNTED_PROBE USE_ZMIN_PLUG EEPROM_SETTINGS EEPROM_CHITCHAT ULTIMAKERCONTROLLER SCARA_FEEDRATE_SCALING
|
||||
- opt_enable_adv HAVE_TMC2130 HAVE_TMC2208 X_IS_TMC2130 Y_IS_TMC2130 Z_IS_TMC2208 E0_IS_TMC2208
|
||||
- opt_enable_adv MONITOR_DRIVER_STATUS STEALTHCHOP HYBRID_THRESHOLD TMC_DEBUG SENSORLESS_HOMING TMC_Z_CALIBRATION
|
||||
- build_marlin
|
||||
#
|
||||
# tvrrug Config need to check board type for sanguino atmega644p
|
||||
|
||||
@@ -479,7 +479,6 @@
|
||||
#define Z_SERVO_ANGLES { BLTOUCH_DEPLOY, BLTOUCH_STOW }
|
||||
|
||||
#define BLTOUCH_DEPLOY 10
|
||||
#define BLTOUCH_ALARM 60
|
||||
#define BLTOUCH_STOW 90
|
||||
#define BLTOUCH_SELFTEST 120
|
||||
#define BLTOUCH_RESET 160
|
||||
|
||||
@@ -190,17 +190,11 @@
|
||||
* Safe Homing Options
|
||||
*/
|
||||
#if ENABLED(Z_SAFE_HOMING)
|
||||
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
||||
// Home close to center so grid points have z heights very close to 0
|
||||
#define _SAFE_POINT(A) (((GRID_MAX_POINTS_##A) / 2) * (A##_BED_SIZE - 2 * (MESH_INSET)) / (GRID_MAX_POINTS_##A - 1) + MESH_INSET)
|
||||
#else
|
||||
#define _SAFE_POINT(A) A##_CENTER
|
||||
#endif
|
||||
#ifndef Z_SAFE_HOMING_X_POINT
|
||||
#define Z_SAFE_HOMING_X_POINT _SAFE_POINT(X)
|
||||
#define Z_SAFE_HOMING_X_POINT X_CENTER
|
||||
#endif
|
||||
#ifndef Z_SAFE_HOMING_Y_POINT
|
||||
#define Z_SAFE_HOMING_Y_POINT _SAFE_POINT(Y)
|
||||
#define Z_SAFE_HOMING_Y_POINT Y_CENTER
|
||||
#endif
|
||||
#define X_TILT_FULCRUM Z_SAFE_HOMING_X_POINT
|
||||
#define Y_TILT_FULCRUM Z_SAFE_HOMING_Y_POINT
|
||||
|
||||
+258
-103
@@ -1,3 +1,55 @@
|
||||
|
||||
// CUSTOMIZE FOR YOUR MACHINE BELOW
|
||||
// CUSTOMIZE FOR YOUR MACHINE BELOW
|
||||
// CUSTOMIZE FOR YOUR MACHINE BELOW
|
||||
// CUSTOMIZE FOR YOUR MACHINE BELOW
|
||||
// CUSTOMIZE FOR YOUR MACHINE BELOW
|
||||
|
||||
/**
|
||||
* Enable if you replace the stepper drivers with TMC 2208. Be sure to remove MS3 jumper
|
||||
* underneath the stepper driver! Plug and Play will result in Stealth Chop 2 Mode enabled
|
||||
* Stealthchop with 2208 on E will disabe inear Advance! Please enable stealthchop if
|
||||
* you require Linear Advance with a TMC2208 on the extruder!
|
||||
* If you have used a UART connection to program the driver to SpreadCycle mode, pease seect that as well
|
||||
*/
|
||||
//#define X_2208
|
||||
//#define X_SpreadCycle
|
||||
//#define Y_2208
|
||||
//#define Y_SpreadCycle // Highly recommended as large prints with high mass can cause layer shifts with stealthchop at high speed
|
||||
//#define Y_4988 // Some machines shipped with 4988 drivers across the board. Set this if you arent sure what you have and all the drivers look identical
|
||||
//#define Z_2208 // NOT Recommended! Dual stepper current draw is above the recommended limit for this driver
|
||||
//#define Z_SpreadCycle
|
||||
#define Z_4988 // Some machines shipped with 4988 drivers across the board. Set this if you arent sure what you have and all the drivers look identical
|
||||
//#define E_2208 // Not Recommended! Stealthchop mode faults with linear advance
|
||||
//#define E_SpreadCycle
|
||||
|
||||
|
||||
/**
|
||||
* Enable if you install a KEENOVO AC BED with Solid State Relay
|
||||
*/
|
||||
//#define BED_AC
|
||||
|
||||
//#define HotendAllMetal
|
||||
/**
|
||||
* Enable if you install a filament runout sensor from www.formbotusa.com
|
||||
*/
|
||||
//#define RunoutSensor
|
||||
//#define ledgeFilSensor //Modify filament sensor contact type for TM3D V2 sensors
|
||||
|
||||
/**
|
||||
* Enable if you wish to change the auto level strategy to Unified Bed Leveling. Under CUSTOM COMMANDS, run Step 1 and 2 before setting Z Offset
|
||||
*/
|
||||
//#define UBL
|
||||
|
||||
//ONLY MAKE CHANGES ABOVE FOR RELIABLE FUNCTION
|
||||
//ONLY MAKE CHANGES ABOVE FOR RELIABLE FUNCTION
|
||||
//ONLY MAKE CHANGES ABOVE FOR RELIABLE FUNCTION
|
||||
//ONLY MAKE CHANGES ABOVE FOR RELIABLE FUNCTION
|
||||
//ONLY MAKE CHANGES ABOVE FOR RELIABLE FUNCTION
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Marlin 3D Printer Firmware
|
||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
||||
@@ -81,7 +133,7 @@
|
||||
// User-specified version info of this build to display in [Pronterface, etc] terminal window during
|
||||
// startup. Implementation of an idea by Prof Braino to inform user that any changes made to this
|
||||
// build by the user have been successfully uploaded into firmware.
|
||||
#define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes.
|
||||
#define STRING_CONFIG_H_AUTHOR "Tinymachines3D" // Who made the changes.
|
||||
#define SHOW_BOOTSCREEN
|
||||
#define STRING_SPLASH_LINE1 SHORT_BUILD_VERSION // will be shown during bootup in line 1
|
||||
#define STRING_SPLASH_LINE2 WEBSITE_URL // will be shown during bootup in line 2
|
||||
@@ -98,10 +150,10 @@
|
||||
*/
|
||||
|
||||
// Enable to show the bitmap in Marlin/_Bootscreen.h on startup.
|
||||
//#define SHOW_CUSTOM_BOOTSCREEN
|
||||
#define SHOW_CUSTOM_BOOTSCREEN
|
||||
|
||||
// Enable to show the bitmap in Marlin/_Statusscreen.h on the status screen.
|
||||
//#define CUSTOM_STATUS_SCREEN_IMAGE
|
||||
#define CUSTOM_STATUS_SCREEN_IMAGE
|
||||
|
||||
// @section machine
|
||||
|
||||
@@ -123,7 +175,7 @@
|
||||
*
|
||||
* :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000]
|
||||
*/
|
||||
#define BAUDRATE 250000
|
||||
#define BAUDRATE 115200
|
||||
|
||||
// Enable the Bluetooth serial interface on AT90USB devices
|
||||
//#define BLUETOOTH
|
||||
@@ -131,12 +183,12 @@
|
||||
// The following define selects which electronics board you have.
|
||||
// Please choose the name from boards.h that matches your setup
|
||||
#ifndef MOTHERBOARD
|
||||
#define MOTHERBOARD BOARD_RAMPS_14_EFB
|
||||
#define MOTHERBOARD BOARD_RUMBA
|
||||
#endif
|
||||
|
||||
// Optional custom name for your RepStrap or other custom machine
|
||||
// Displayed in the LCD "Ready" message
|
||||
//#define CUSTOM_MACHINE_NAME "3D Printer"
|
||||
#define CUSTOM_MACHINE_NAME "TM3D RaPtOr"
|
||||
|
||||
// Define this to set a unique identifier for this printer, (Used by some programs to differentiate between machines)
|
||||
// You can use an online service to generate a random UUID. (eg http://www.uuidgenerator.net/version4)
|
||||
@@ -149,7 +201,7 @@
|
||||
#define EXTRUDERS 1
|
||||
|
||||
// Generally expected filament diameter (1.75, 2.85, 3.0, ...). Used for Volumetric, Filament Width Sensor, etc.
|
||||
#define DEFAULT_NOMINAL_FILAMENT_DIA 3.0
|
||||
#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75
|
||||
|
||||
// For Cyclops or any "multi-extruder" that shares a single nozzle.
|
||||
//#define SINGLENOZZLE
|
||||
@@ -315,7 +367,11 @@
|
||||
#define TEMP_SENSOR_2 0
|
||||
#define TEMP_SENSOR_3 0
|
||||
#define TEMP_SENSOR_4 0
|
||||
#define TEMP_SENSOR_BED 0
|
||||
#if(ENABLED(BED_AC))
|
||||
#define TEMP_SENSOR_BED 11
|
||||
#else
|
||||
#define TEMP_SENSOR_BED 1
|
||||
#endif
|
||||
#define TEMP_SENSOR_CHAMBER 0
|
||||
|
||||
// Dummy thermistor constant temperature readings, for use with 998 and 999
|
||||
@@ -350,12 +406,16 @@
|
||||
// When temperature exceeds max temp, your heater will be switched off.
|
||||
// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure!
|
||||
// You should use MINTEMP for thermistor short/failure protection.
|
||||
#define HEATER_0_MAXTEMP 275
|
||||
#define HEATER_0_MAXTEMP 290
|
||||
#define HEATER_1_MAXTEMP 275
|
||||
#define HEATER_2_MAXTEMP 275
|
||||
#define HEATER_3_MAXTEMP 275
|
||||
#define HEATER_4_MAXTEMP 275
|
||||
#define BED_MAXTEMP 150
|
||||
#if(ENABLED(BED_AC))
|
||||
#define BED_MAXTEMP 150
|
||||
#else
|
||||
#define BED_MAXTEMP 100
|
||||
#endif
|
||||
|
||||
//===========================================================================
|
||||
//============================= PID Settings ================================
|
||||
@@ -368,7 +428,7 @@
|
||||
#define PID_MAX BANG_MAX // Limits current to nozzle while PID is active (see PID_FUNCTIONAL_RANGE below); 255=full current
|
||||
#define PID_K1 0.95 // Smoothing factor within any PID loop
|
||||
#if ENABLED(PIDTEMP)
|
||||
//#define PID_AUTOTUNE_MENU // Add PID Autotune to the LCD "Temperature" menu to run M303 and apply the result.
|
||||
#define PID_AUTOTUNE_MENU // Add PID Autotune to the LCD "Temperature" menu to run M303 and apply the result.
|
||||
//#define PID_DEBUG // Sends debug data to the serial port.
|
||||
//#define PID_OPENLOOP 1 // Puts PID in open loop. M104/M140 sets the output power from 0 to PID_MAX
|
||||
//#define SLOW_PWM_HEATERS // PWM with very low frequency (roughly 0.125Hz=8s) and minimum state time of approximately 1s useful for heaters driven by a relay
|
||||
@@ -380,19 +440,24 @@
|
||||
// If you are using a pre-configured hotend then you can use one of the value sets by uncommenting it
|
||||
|
||||
// Ultimaker
|
||||
#define DEFAULT_Kp 22.2
|
||||
#define DEFAULT_Ki 1.08
|
||||
#define DEFAULT_Kd 114
|
||||
|
||||
#if(ENABLED(HotendAllMetal))
|
||||
#define DEFAULT_Kp 21.9
|
||||
#define DEFAULT_Ki 1.5
|
||||
#define DEFAULT_Kd 79.88
|
||||
#else
|
||||
#define DEFAULT_Kp 22.2
|
||||
#define DEFAULT_Ki 1.08
|
||||
#define DEFAULT_Kd 114
|
||||
#endif
|
||||
// MakerGear
|
||||
//#define DEFAULT_Kp 7.0
|
||||
//#define DEFAULT_Ki 0.1
|
||||
//#define DEFAULT_Kd 12
|
||||
//#define DEFAULT_Kp 7.0
|
||||
//#define DEFAULT_Ki 0.1
|
||||
//#define DEFAULT_Kd 12
|
||||
|
||||
// Mendel Parts V9 on 12V
|
||||
//#define DEFAULT_Kp 63.0
|
||||
//#define DEFAULT_Ki 2.25
|
||||
//#define DEFAULT_Kd 440
|
||||
//#define DEFAULT_Kp 63.0
|
||||
//#define DEFAULT_Ki 2.25
|
||||
//#define DEFAULT_Kd 440
|
||||
|
||||
#endif // PIDTEMP
|
||||
|
||||
@@ -413,7 +478,7 @@
|
||||
* heater. If your configuration is significantly different than this and you don't understand
|
||||
* the issues involved, don't use bed PID until someone else verifies that your hardware works.
|
||||
*/
|
||||
//#define PIDTEMPBED
|
||||
#define PIDTEMPBED
|
||||
|
||||
//#define BED_LIMIT_SWITCHING
|
||||
|
||||
@@ -431,9 +496,9 @@
|
||||
|
||||
//120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
|
||||
//from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10)
|
||||
#define DEFAULT_bedKp 10.00
|
||||
#define DEFAULT_bedKi .023
|
||||
#define DEFAULT_bedKd 305.4
|
||||
#define DEFAULT_bedKp 100.0
|
||||
#define DEFAULT_bedKi 15.0
|
||||
#define DEFAULT_bedKd 200.0
|
||||
|
||||
//120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
|
||||
//from pidautotune
|
||||
@@ -508,10 +573,10 @@
|
||||
// Almost all printers will be using one per axis. Probes will use one or more of the
|
||||
// extra connectors. Leave undefined any used for non-endstop and non-probe purposes.
|
||||
#define USE_XMIN_PLUG
|
||||
#define USE_YMIN_PLUG
|
||||
//#define USE_YMIN_PLUG
|
||||
#define USE_ZMIN_PLUG
|
||||
//#define USE_XMAX_PLUG
|
||||
//#define USE_YMAX_PLUG
|
||||
#define USE_YMAX_PLUG
|
||||
//#define USE_ZMAX_PLUG
|
||||
|
||||
// Enable pullup for all endstops to prevent a floating state
|
||||
@@ -528,12 +593,12 @@
|
||||
#endif
|
||||
|
||||
// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
|
||||
#define X_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Y_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define X_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Y_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define X_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Y_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Y_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
@@ -550,17 +615,41 @@
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
//#define X_DRIVER_TYPE A4988
|
||||
//#define Y_DRIVER_TYPE A4988
|
||||
//#define Z_DRIVER_TYPE A4988
|
||||
//#define X2_DRIVER_TYPE A4988
|
||||
#if ENABLED(X_2208)
|
||||
#define X_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#define X2_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#else
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#if ENABLED(Y_2208)
|
||||
#define Y_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#elif ENABLED(Y_4988)
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#else
|
||||
#define Y_DRIVER_TYPE DRV8825
|
||||
#endif
|
||||
#if ENABLED(Z_2208)
|
||||
#define Z_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#elif ENABLED(Z_4988)
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#else
|
||||
#define Z_DRIVER_TYPE DRV8825
|
||||
#endif
|
||||
//#define Y2_DRIVER_TYPE A4988
|
||||
//#define Z2_DRIVER_TYPE A4988
|
||||
//#define E0_DRIVER_TYPE A4988
|
||||
//#define E1_DRIVER_TYPE A4988
|
||||
//#define Z3_DRIVER_TYPE A4988
|
||||
#if ENABLED(E_2208)
|
||||
#define E0_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#define E1_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#else
|
||||
#define E0_DRIVER_TYPE DRV8825
|
||||
#define E1_DRIVER_TYPE DRV8825
|
||||
#endif
|
||||
//#define E2_DRIVER_TYPE A4988
|
||||
//#define E3_DRIVER_TYPE A4988
|
||||
//#define E4_DRIVER_TYPE A4988
|
||||
//#define E5_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
@@ -608,14 +697,26 @@
|
||||
* Override with M92
|
||||
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
|
||||
*/
|
||||
#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 4000, 500 }
|
||||
#if(ENABLED(Y_2208) || ENABLED(Y_4988))
|
||||
#define Y_STEPSMM 80
|
||||
#else
|
||||
#define Y_STEPSMM 160
|
||||
#endif
|
||||
|
||||
#if(ENABLED(Z_2208) || ENABLED(Z_4988))
|
||||
#define Z_STEPSMM 800
|
||||
#else
|
||||
#define Z_STEPSMM 1600
|
||||
#endif
|
||||
|
||||
#define DEFAULT_AXIS_STEPS_PER_UNIT { 80,Y_STEPSMM , Z_STEPSMM, 96 }
|
||||
|
||||
/**
|
||||
* Default Max Feed Rate (mm/s)
|
||||
* Override with M203
|
||||
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
|
||||
*/
|
||||
#define DEFAULT_MAX_FEEDRATE { 300, 300, 5, 25 }
|
||||
#define DEFAULT_MAX_FEEDRATE { 250, 150, 5, 25 }
|
||||
|
||||
/**
|
||||
* Default Max Acceleration (change/s) change = mm/s
|
||||
@@ -623,7 +724,26 @@
|
||||
* Override with M201
|
||||
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
|
||||
*/
|
||||
#define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100, 10000 }
|
||||
#if(ENABLED(X_2208))
|
||||
#if(ENABLED(X_SpreadCycle))
|
||||
#define x_accel 1750
|
||||
#else
|
||||
#define x_accel 1000
|
||||
#endif
|
||||
#else
|
||||
#define x_accel 1500
|
||||
#endif
|
||||
|
||||
#if(ENABLED(Y_2208))
|
||||
#if(ENABLED(Y_SpreadCycle))
|
||||
#define y_accel 500
|
||||
#else
|
||||
#define y_accel 300
|
||||
#endif
|
||||
#else
|
||||
#define y_accel 500
|
||||
#endif
|
||||
#define DEFAULT_MAX_ACCELERATION { x_accel, y_accel, 400, 4000 }
|
||||
|
||||
/**
|
||||
* Default Acceleration (change/s) change = mm/s
|
||||
@@ -645,9 +765,18 @@
|
||||
* When changing speed and direction, if the difference is less than the
|
||||
* value set here, it may happen instantaneously.
|
||||
*/
|
||||
#define DEFAULT_XJERK 10.0
|
||||
#define DEFAULT_YJERK 10.0
|
||||
#define DEFAULT_ZJERK 0.3
|
||||
#if(ENABLED(X_SpreadCycle) || !ENABLED(X_2208))
|
||||
#define DEFAULT_XJERK 20.0
|
||||
#else
|
||||
#define DEFAULT_XJERK 10.0
|
||||
#endif
|
||||
|
||||
#if(ENABLED(Y_SpreadCycle) || !ENABLED(Y_2208))
|
||||
#define DEFAULT_YJERK 10.0
|
||||
#else
|
||||
#define DEFAULT_YJERK 5.0
|
||||
#endif
|
||||
#define DEFAULT_ZJERK 0.4
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
/**
|
||||
@@ -727,10 +856,9 @@
|
||||
/**
|
||||
* The BLTouch probe uses a Hall effect sensor and emulates a servo.
|
||||
*/
|
||||
//#define BLTOUCH
|
||||
#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -777,11 +905,9 @@
|
||||
* O-- FRONT --+
|
||||
* (0,0)
|
||||
*/
|
||||
#define X_PROBE_OFFSET_FROM_EXTRUDER 10 // X offset: -left +right [of the nozzle]
|
||||
#define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle]
|
||||
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle]
|
||||
|
||||
// Certain types of probes need to stay away from edges
|
||||
#define X_PROBE_OFFSET_FROM_EXTRUDER -22 // X offset: -left +right [of the nozzle]
|
||||
#define Y_PROBE_OFFSET_FROM_EXTRUDER 0 // Y offset: -front +behind [the nozzle]
|
||||
#define Z_PROBE_OFFSET_FROM_EXTRUDER -1.5 // Z offset: -below +above [the nozzle]
|
||||
#define MIN_PROBE_EDGE 10
|
||||
|
||||
// X and Y axis travel speed (mm/m) between probes
|
||||
@@ -796,7 +922,7 @@
|
||||
// The number of probes to perform at each point.
|
||||
// Set to 2 for a fast/slow probe, using the second probe result.
|
||||
// Set to 3 or more for slow probes, averaging the results.
|
||||
//#define MULTIPLE_PROBING 2
|
||||
#define MULTIPLE_PROBING 2
|
||||
|
||||
/**
|
||||
* Z probes require clearance when deploying, stowing, and moving between
|
||||
@@ -812,7 +938,7 @@
|
||||
* Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle.
|
||||
* But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle.
|
||||
*/
|
||||
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
|
||||
#define Z_CLEARANCE_DEPLOY_PROBE 5 // Z Clearance for Deploy/Stow
|
||||
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
|
||||
#define Z_CLEARANCE_MULTI_PROBE 5 // Z Clearance between multiple probes
|
||||
//#define Z_AFTER_PROBING 5 // Z position after probing is done
|
||||
@@ -824,7 +950,7 @@
|
||||
#define Z_PROBE_OFFSET_RANGE_MAX 20
|
||||
|
||||
// Enable the M48 repeatability test to test probe accuracy
|
||||
//#define Z_MIN_PROBE_REPEATABILITY_TEST
|
||||
#define Z_MIN_PROBE_REPEATABILITY_TEST
|
||||
|
||||
// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
|
||||
// :{ 0:'Low', 1:'High' }
|
||||
@@ -849,15 +975,32 @@
|
||||
// @section machine
|
||||
|
||||
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
|
||||
#define INVERT_X_DIR false
|
||||
#define INVERT_Y_DIR true
|
||||
#define INVERT_Z_DIR false
|
||||
#if(ENABLED(X_2208))
|
||||
#define INVERT_X_DIR true
|
||||
#else
|
||||
#define INVERT_X_DIR false
|
||||
#endif
|
||||
#if(ENABLED(Y_2208))
|
||||
#define INVERT_Y_DIR true
|
||||
#else
|
||||
#define INVERT_Y_DIR false
|
||||
#endif
|
||||
#if(ENABLED(Z_2208))
|
||||
#define INVERT_Z_DIR false
|
||||
#else
|
||||
#define INVERT_Z_DIR true
|
||||
#endif
|
||||
|
||||
// @section extruder
|
||||
|
||||
// For direct drive extruder v9 set to true, for geared extruder set to false.
|
||||
#define INVERT_E0_DIR false
|
||||
#define INVERT_E1_DIR false
|
||||
#if(ENABLED(E_2208))
|
||||
#define INVERT_E0_DIR false
|
||||
#define INVERT_E1_DIR false
|
||||
#else
|
||||
#define INVERT_E0_DIR true
|
||||
#define INVERT_E1_DIR true
|
||||
#endif
|
||||
#define INVERT_E2_DIR false
|
||||
#define INVERT_E3_DIR false
|
||||
#define INVERT_E4_DIR false
|
||||
@@ -868,20 +1011,20 @@
|
||||
|
||||
//#define UNKNOWN_Z_NO_RAISE // Don't raise Z (lower the bed) if Z is "unknown." For beds that fall when Z is powered off.
|
||||
|
||||
//#define Z_HOMING_HEIGHT 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
|
||||
#define Z_HOMING_HEIGHT 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
|
||||
// Be sure you have this distance over your Z_MAX_POS in case.
|
||||
|
||||
// Direction of endstops when homing; 1=MAX, -1=MIN
|
||||
// :[-1,1]
|
||||
#define X_HOME_DIR -1
|
||||
#define Y_HOME_DIR -1
|
||||
#define Y_HOME_DIR 1
|
||||
#define Z_HOME_DIR -1
|
||||
|
||||
// @section machine
|
||||
|
||||
// The size of the print bed
|
||||
#define X_BED_SIZE 200
|
||||
#define Y_BED_SIZE 200
|
||||
#define X_BED_SIZE 400
|
||||
#define Y_BED_SIZE 400
|
||||
|
||||
// Travel limits (mm) after homing, corresponding to endstop positions.
|
||||
#define X_MIN_POS 0
|
||||
@@ -889,7 +1032,7 @@
|
||||
#define Z_MIN_POS 0
|
||||
#define X_MAX_POS X_BED_SIZE
|
||||
#define Y_MAX_POS Y_BED_SIZE
|
||||
#define Z_MAX_POS 200
|
||||
#define Z_MAX_POS 500
|
||||
|
||||
/**
|
||||
* Software Endstops
|
||||
@@ -917,7 +1060,7 @@
|
||||
#endif
|
||||
|
||||
#if ENABLED(MIN_SOFTWARE_ENDSTOPS) || ENABLED(MAX_SOFTWARE_ENDSTOPS)
|
||||
//#define SOFT_ENDSTOPS_MENU_ITEM // Enable/Disable software endstops from the LCD
|
||||
#define SOFT_ENDSTOPS_MENU_ITEM // Enable/Disable software endstops from the LCD
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -928,10 +1071,17 @@
|
||||
* For other boards you may need to define FIL_RUNOUT_PIN, FIL_RUNOUT2_PIN, etc.
|
||||
* By default the firmware assumes HIGH=FILAMENT PRESENT.
|
||||
*/
|
||||
//#define FILAMENT_RUNOUT_SENSOR
|
||||
#if(ENABLED(RunoutSensor))
|
||||
#define FILAMENT_RUNOUT_SENSOR
|
||||
#endif
|
||||
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
|
||||
#define NUM_RUNOUT_SENSORS 1 // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
|
||||
#define FIL_RUNOUT_INVERTING false // set to true to invert the logic of the sensor.
|
||||
#define FIL_RUNOUT_PIN 57
|
||||
#if ENABLED(ledgeFilSensor)
|
||||
#define FIL_RUNOUT_INVERTING false // set to true to invert the logic of the sensor.
|
||||
#else
|
||||
#define FIL_RUNOUT_INVERTING true // set to true to invert the logic of the sensor.
|
||||
#endif
|
||||
#define FIL_RUNOUT_PULLUP // Use internal pullup for filament runout pins.
|
||||
#define FILAMENT_RUNOUT_SCRIPT "M600"
|
||||
#endif
|
||||
@@ -976,15 +1126,19 @@
|
||||
*/
|
||||
//#define AUTO_BED_LEVELING_3POINT
|
||||
//#define AUTO_BED_LEVELING_LINEAR
|
||||
//#define AUTO_BED_LEVELING_BILINEAR
|
||||
//#define AUTO_BED_LEVELING_UBL
|
||||
#if(ENABLED(UBL))
|
||||
#define AUTO_BED_LEVELING_UBL
|
||||
#else
|
||||
#define AUTO_BED_LEVELING_BILINEAR
|
||||
#endif
|
||||
|
||||
//#define MESH_BED_LEVELING
|
||||
|
||||
/**
|
||||
* Normally G28 leaves leveling disabled on completion. Enable
|
||||
* this option to have G28 restore the prior leveling state.
|
||||
*/
|
||||
//#define RESTORE_LEVELING_AFTER_G28
|
||||
#define RESTORE_LEVELING_AFTER_G28
|
||||
|
||||
/**
|
||||
* Enable detailed logging of G28, G29, M48, etc.
|
||||
@@ -1008,7 +1162,7 @@
|
||||
/**
|
||||
* Enable the G26 Mesh Validation Pattern tool.
|
||||
*/
|
||||
//#define G26_MESH_VALIDATION
|
||||
#define G26_MESH_VALIDATION
|
||||
#if ENABLED(G26_MESH_VALIDATION)
|
||||
#define MESH_TEST_NOZZLE_SIZE 0.4 // (mm) Diameter of primary nozzle.
|
||||
#define MESH_TEST_LAYER_HEIGHT 0.2 // (mm) Default layer height for the G26 Mesh Validation Tool.
|
||||
@@ -1021,14 +1175,17 @@
|
||||
#if ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR)
|
||||
|
||||
// Set the number of grid points per dimension.
|
||||
#define GRID_MAX_POINTS_X 3
|
||||
#define GRID_MAX_POINTS_X 6
|
||||
#define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
|
||||
|
||||
// Set the boundaries for probing (where the probe can reach).
|
||||
//#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE
|
||||
//#define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - MIN_PROBE_EDGE)
|
||||
//#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
|
||||
//#define BACK_PROBE_BED_POSITION (Y_BED_SIZE - MIN_PROBE_EDGE)
|
||||
#define LEFT_PROBE_BED_POSITION 30
|
||||
#define RIGHT_PROBE_BED_POSITION 365
|
||||
#define FRONT_PROBE_BED_POSITION 30
|
||||
#define BACK_PROBE_BED_POSITION 365
|
||||
|
||||
// The Z probe minimum outer margin (to validate G29 parameters).
|
||||
#define MIN_PROBE_EDGE 10
|
||||
|
||||
// Probe along the Y axis, advancing X after each column
|
||||
//#define PROBE_Y_FIRST
|
||||
@@ -1037,7 +1194,7 @@
|
||||
|
||||
// Beyond the probed grid, continue the implied tilt?
|
||||
// Default is to maintain the height of the nearest edge.
|
||||
//#define EXTRAPOLATE_BEYOND_GRID
|
||||
#define EXTRAPOLATE_BEYOND_GRID
|
||||
|
||||
//
|
||||
// Experimental Subdivision of the grid by Catmull-Rom method.
|
||||
@@ -1059,14 +1216,14 @@
|
||||
|
||||
//#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh
|
||||
|
||||
#define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed
|
||||
#define MESH_INSET 35 // Set Mesh bounds as an inset region of the bed
|
||||
#define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited.
|
||||
#define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
|
||||
|
||||
#define UBL_MESH_EDIT_MOVES_Z // Sophisticated users prefer no movement of nozzle
|
||||
#define UBL_SAVE_ACTIVE_ON_M500 // Save the currently active mesh in the current slot on M500
|
||||
|
||||
//#define UBL_Z_RAISE_WHEN_OFF_MESH 2.5 // When the nozzle is off the mesh, this value is used
|
||||
#define UBL_Z_RAISE_WHEN_OFF_MESH 0.0 // When the nozzle is off the mesh, this value is used
|
||||
// as the Z-Height correction value.
|
||||
|
||||
#elif ENABLED(MESH_BED_LEVELING)
|
||||
@@ -1088,12 +1245,12 @@
|
||||
* Override if the automatically selected points are inadequate.
|
||||
*/
|
||||
#if ENABLED(AUTO_BED_LEVELING_3POINT) || ENABLED(AUTO_BED_LEVELING_UBL)
|
||||
//#define PROBE_PT_1_X 15
|
||||
//#define PROBE_PT_1_Y 180
|
||||
//#define PROBE_PT_2_X 15
|
||||
//#define PROBE_PT_2_Y 20
|
||||
//#define PROBE_PT_3_X 170
|
||||
//#define PROBE_PT_3_Y 20
|
||||
#define PROBE_PT_1_X 50
|
||||
#define PROBE_PT_1_Y 350
|
||||
#define PROBE_PT_2_X 50
|
||||
#define PROBE_PT_2_Y 50
|
||||
#define PROBE_PT_3_X 350
|
||||
#define PROBE_PT_3_Y 50
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1111,8 +1268,7 @@
|
||||
//#define LEVEL_BED_CORNERS
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
#define LEVEL_CORNERS_INSET 20 // (mm) An inset for corner leveling
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
@@ -1120,7 +1276,7 @@
|
||||
* Commands to execute at the end of G29 probing.
|
||||
* Useful to retract or move the Z probe out of the way.
|
||||
*/
|
||||
//#define Z_PROBE_END_SCRIPT "G1 Z10 F12000\nG1 X15 Y330\nG1 Z0.5\nG1 Z10"
|
||||
//#define Z_PROBE_END_SCRIPT "M280 P0 S90"
|
||||
|
||||
|
||||
// @section homing
|
||||
@@ -1142,12 +1298,11 @@
|
||||
// - If stepper drivers time out, it will need X and Y homing again before Z homing.
|
||||
// - Move the Z probe (or nozzle) to a defined XY point before Z Homing when homing all axes (G28).
|
||||
// - Prevent Z homing when the Z probe is outside bed area.
|
||||
//
|
||||
//#define Z_SAFE_HOMING
|
||||
#define Z_SAFE_HOMING
|
||||
|
||||
#if ENABLED(Z_SAFE_HOMING)
|
||||
#define Z_SAFE_HOMING_X_POINT ((X_BED_SIZE) / 2) // X point for Z homing when homing all axes (G28).
|
||||
#define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE) / 2) // Y point for Z homing when homing all axes (G28).
|
||||
#define Z_SAFE_HOMING_X_POINT 50 // X point for Z homing when homing all axis (G28).
|
||||
#define Z_SAFE_HOMING_Y_POINT 50 // Y point for Z homing when homing all axis (G28).
|
||||
#endif
|
||||
|
||||
// Homing speeds (mm/m)
|
||||
@@ -1225,7 +1380,7 @@
|
||||
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
|
||||
// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
|
||||
//
|
||||
//#define EEPROM_SETTINGS // Enable for M500 and M501 commands
|
||||
#define EEPROM_SETTINGS // Enable for M500 and M501 commands
|
||||
//#define DISABLE_M503 // Saves ~2700 bytes of PROGMEM. Disable for release!
|
||||
#define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM.
|
||||
|
||||
@@ -1257,12 +1412,12 @@
|
||||
// @section temperature
|
||||
|
||||
// Preheat Constants
|
||||
#define PREHEAT_1_TEMP_HOTEND 180
|
||||
#define PREHEAT_1_TEMP_BED 70
|
||||
#define PREHEAT_1_TEMP_HOTEND 200
|
||||
#define PREHEAT_1_TEMP_BED 60
|
||||
#define PREHEAT_1_FAN_SPEED 0 // Value from 0 to 255
|
||||
|
||||
#define PREHEAT_2_TEMP_HOTEND 240
|
||||
#define PREHEAT_2_TEMP_BED 110
|
||||
#define PREHEAT_2_TEMP_HOTEND 220
|
||||
#define PREHEAT_2_TEMP_BED 100
|
||||
#define PREHEAT_2_FAN_SPEED 0 // Value from 0 to 255
|
||||
|
||||
/**
|
||||
@@ -1276,12 +1431,12 @@
|
||||
* P1 Raise the nozzle always to Z-park height.
|
||||
* P2 Raise the nozzle by Z-park amount, limited to Z_MAX_POS.
|
||||
*/
|
||||
//#define NOZZLE_PARK_FEATURE
|
||||
#define NOZZLE_PARK_FEATURE
|
||||
|
||||
#if ENABLED(NOZZLE_PARK_FEATURE)
|
||||
// Specify a park position as { X, Y, Z }
|
||||
#define NOZZLE_PARK_POINT { (X_MIN_POS + 10), (Y_MAX_POS - 10), 20 }
|
||||
#define NOZZLE_PARK_XY_FEEDRATE 100 // X and Y axes feedrate in mm/s (also used for delta printers Z axis)
|
||||
#define NOZZLE_PARK_POINT { 10, 10, 20}
|
||||
#define NOZZLE_PARK_XY_FEEDRATE 70 // X and Y axes feedrate in mm/s (also used for delta printers Z axis)
|
||||
#define NOZZLE_PARK_Z_FEEDRATE 5 // Z axis feedrate in mm/s (not used for delta printers)
|
||||
#endif
|
||||
|
||||
@@ -1428,7 +1583,7 @@
|
||||
* you must uncomment the following option or it won't work.
|
||||
*
|
||||
*/
|
||||
//#define SDSUPPORT
|
||||
#define SDSUPPORT
|
||||
|
||||
/**
|
||||
* SD CARD: SPI SPEED
|
||||
@@ -1500,7 +1655,7 @@
|
||||
//
|
||||
// Add individual axis homing items (Home X, Home Y, and Home Z) to the LCD menu.
|
||||
//
|
||||
//#define INDIVIDUAL_AXIS_HOMING_MENU
|
||||
#define INDIVIDUAL_AXIS_HOMING_MENU
|
||||
|
||||
//
|
||||
// SPEAKER/BUZZER
|
||||
@@ -1658,7 +1813,7 @@
|
||||
// RepRapDiscount FULL GRAPHIC Smart Controller
|
||||
// http://reprap.org/wiki/RepRapDiscount_Full_Graphic_Smart_Controller
|
||||
//
|
||||
//#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
|
||||
#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
|
||||
|
||||
//
|
||||
// ReprapWorld Graphical LCD
|
||||
|
||||
+56
-52
@@ -75,8 +75,8 @@
|
||||
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
|
||||
*/
|
||||
#if ENABLED(THERMAL_PROTECTION_HOTENDS)
|
||||
#define THERMAL_PROTECTION_PERIOD 40 // Seconds
|
||||
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
|
||||
#define THERMAL_PROTECTION_PERIOD 180 // Seconds
|
||||
#define THERMAL_PROTECTION_HYSTERESIS 2 // Degrees Celsius
|
||||
|
||||
/**
|
||||
* Whenever an M104, M109, or M303 increases the target temperature, the
|
||||
@@ -90,7 +90,7 @@
|
||||
* and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
|
||||
* below 2.
|
||||
*/
|
||||
#define WATCH_TEMP_PERIOD 20 // Seconds
|
||||
#define WATCH_TEMP_PERIOD 180 // Seconds
|
||||
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius
|
||||
#endif
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
* Thermal Protection parameters for the bed are just as above for hotends.
|
||||
*/
|
||||
#if ENABLED(THERMAL_PROTECTION_BED)
|
||||
#define THERMAL_PROTECTION_BED_PERIOD 20 // Seconds
|
||||
#define THERMAL_PROTECTION_BED_PERIOD 300 // Seconds
|
||||
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
|
||||
|
||||
/**
|
||||
@@ -134,7 +134,7 @@
|
||||
#endif
|
||||
|
||||
// Show extra position information in M114
|
||||
//#define M114_DETAIL
|
||||
#define M114_DETAIL
|
||||
|
||||
// Show Temperature ADC value
|
||||
// Enable for M105 to include ADC values read from temperature sensors.
|
||||
@@ -206,7 +206,7 @@
|
||||
// When first starting the main fan, run it at full speed for the
|
||||
// given number of milliseconds. This gets the fan spinning reliably
|
||||
// before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu)
|
||||
//#define FAN_KICKSTART_TIME 100
|
||||
#define FAN_KICKSTART_TIME 100
|
||||
|
||||
/**
|
||||
* PWM Fan Scaling
|
||||
@@ -260,13 +260,13 @@
|
||||
/**
|
||||
* M355 Case Light on-off / brightness
|
||||
*/
|
||||
//#define CASE_LIGHT_ENABLE
|
||||
#define CASE_LIGHT_ENABLE
|
||||
#if ENABLED(CASE_LIGHT_ENABLE)
|
||||
//#define CASE_LIGHT_PIN 4 // Override the default pin if needed
|
||||
#define CASE_LIGHT_PIN 5 // Override the default pin if needed
|
||||
#define INVERT_CASE_LIGHT false // Set true if Case Light is ON when pin is LOW
|
||||
#define CASE_LIGHT_DEFAULT_ON true // Set default power-up state on
|
||||
#define CASE_LIGHT_DEFAULT_BRIGHTNESS 105 // Set default power-up brightness (0-255, requires PWM pin)
|
||||
//#define MENU_ITEM_CASE_LIGHT // Add a Case Light option to the LCD main menu
|
||||
#define CASE_LIGHT_DEFAULT_BRIGHTNESS 255 // Set default power-up brightness (0-255, requires PWM pin)
|
||||
#define MENU_ITEM_CASE_LIGHT // Add a Case Light option to the LCD main menu
|
||||
//#define CASE_LIGHT_USE_NEOPIXEL // Use Neopixel LED as case light, requires NEOPIXEL_LED.
|
||||
#if ENABLED(CASE_LIGHT_USE_NEOPIXEL)
|
||||
#define CASE_LIGHT_NEOPIXEL_COLOR { 255, 255, 255, 255 } // { Red, Green, Blue, White }
|
||||
@@ -386,7 +386,7 @@
|
||||
#define Y_HOME_BUMP_MM 5
|
||||
#define Z_HOME_BUMP_MM 2
|
||||
#define HOMING_BUMP_DIVISOR { 2, 2, 4 } // Re-Bump Speed Divisor (Divides the Homing Feedrate)
|
||||
//#define QUICK_HOME // If homing includes X and Y, do a diagonal move initially
|
||||
#define QUICK_HOME // If homing includes X and Y, do a diagonal move initially
|
||||
|
||||
// When G28 is called, this option will make Y home before X
|
||||
//#define HOME_Y_BEFORE_X
|
||||
@@ -524,19 +524,19 @@
|
||||
// @section lcd
|
||||
|
||||
// Include a page of printer information in the LCD Main Menu
|
||||
//#define LCD_INFO_MENU
|
||||
#define LCD_INFO_MENU
|
||||
|
||||
// Scroll a longer status message into view
|
||||
//#define STATUS_MESSAGE_SCROLLING
|
||||
#define STATUS_MESSAGE_SCROLLING
|
||||
|
||||
// On the Info Screen, display XY with one decimal place when possible
|
||||
//#define LCD_DECIMAL_SMALL_XY
|
||||
#define LCD_DECIMAL_SMALL_XY
|
||||
|
||||
// The timeout (in ms) to return to the status screen from sub-menus
|
||||
//#define LCD_TIMEOUT_TO_STATUS 15000
|
||||
#define LCD_TIMEOUT_TO_STATUS 15000
|
||||
|
||||
// Add an 'M73' G-code to set the current percentage
|
||||
//#define LCD_SET_PROGRESS_MANUALLY
|
||||
#define LCD_SET_PROGRESS_MANUALLY
|
||||
|
||||
#if ENABLED(SDSUPPORT) || ENABLED(LCD_SET_PROGRESS_MANUALLY)
|
||||
//#define LCD_PROGRESS_BAR // Show a progress bar on HD44780 LCDs for SD printing
|
||||
@@ -638,10 +638,10 @@
|
||||
#endif
|
||||
|
||||
// This allows hosts to request long names for files and folders with M33
|
||||
//#define LONG_FILENAME_HOST_SUPPORT
|
||||
#define LONG_FILENAME_HOST_SUPPORT
|
||||
|
||||
// Enable this option to scroll long filenames in the SD card menu
|
||||
//#define SCROLL_LONG_FILENAMES
|
||||
#define SCROLL_LONG_FILENAMES
|
||||
|
||||
/**
|
||||
* This option allows you to abort SD printing when any endstop is triggered.
|
||||
@@ -660,7 +660,7 @@
|
||||
/**
|
||||
* Auto-report SdCard status with M27 S<seconds>
|
||||
*/
|
||||
//#define AUTO_REPORT_SD_STATUS
|
||||
#define AUTO_REPORT_SD_STATUS
|
||||
|
||||
#endif // SDSUPPORT
|
||||
|
||||
@@ -678,7 +678,7 @@
|
||||
*/
|
||||
#if ENABLED(DOGLCD)
|
||||
// Show SD percentage next to the progress bar
|
||||
//#define DOGM_SD_PERCENT
|
||||
#define DOGM_SD_PERCENT
|
||||
|
||||
// Enable to save many cycles by drawing a hollow frame on the Info Screen
|
||||
#define XYZ_HOLLOW_FRAME
|
||||
@@ -688,7 +688,7 @@
|
||||
|
||||
// A bigger font is available for edit items. Costs 3120 bytes of PROGMEM.
|
||||
// Western only. Not available for Cyrillic, Kana, Turkish, Greek, or Chinese.
|
||||
//#define USE_BIG_EDIT_FONT
|
||||
#define USE_BIG_EDIT_FONT
|
||||
|
||||
// A smaller font may be used on the Info Screen. Costs 2300 bytes of PROGMEM.
|
||||
// Western only. Not available for Cyrillic, Kana, Turkish, Greek, or Chinese.
|
||||
@@ -744,16 +744,16 @@
|
||||
*
|
||||
* Warning: Does not respect endstops!
|
||||
*/
|
||||
//#define BABYSTEPPING
|
||||
#define BABYSTEPPING
|
||||
#if ENABLED(BABYSTEPPING)
|
||||
//#define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA!
|
||||
#define BABYSTEP_INVERT_Z false // Change if Z babysteps should go the other way
|
||||
#define BABYSTEP_MULTIPLICATOR 1 // Babysteps are very small. Increase for faster motion.
|
||||
//#define BABYSTEP_ZPROBE_OFFSET // Enable to combine M851 and Babystepping
|
||||
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING // Double-click on the Status Screen for Z Babystepping.
|
||||
#define BABYSTEP_MULTIPLICATOR 25 // Babysteps are very small. Increase for faster motion.
|
||||
#define BABYSTEP_ZPROBE_OFFSET // Enable to combine M851 and Babystepping
|
||||
#define DOUBLECLICK_FOR_Z_BABYSTEPPING // Double-click on the Status Screen for Z Babystepping.
|
||||
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||
// Note: Extra time may be added to mitigate controller latency.
|
||||
//#define BABYSTEP_ZPROBE_GFX_OVERLAY // Enable graphical overlay on Z-offset editor
|
||||
#define BABYSTEP_ZPROBE_GFX_OVERLAY // Enable graphical overlay on Z-offset editor
|
||||
#endif
|
||||
|
||||
// @section extruder
|
||||
@@ -774,7 +774,9 @@
|
||||
* See http://marlinfw.org/docs/features/lin_advance.html for full instructions.
|
||||
* Mention @Sebastianv650 on GitHub to alert the author of any issues.
|
||||
*/
|
||||
//#define LIN_ADVANCE
|
||||
#if(ENABLED(E_2208) && !ENABLED(E_SpreadCycle))
|
||||
#define LIN_ADVANCE
|
||||
#endif
|
||||
#if ENABLED(LIN_ADVANCE)
|
||||
#define LIN_ADVANCE_K 0.22 // Unit: mm compression per 1mm/s extruder speed
|
||||
//#define LA_DEBUG // If enabled, this will generate debug information output over USB.
|
||||
@@ -804,7 +806,7 @@
|
||||
#endif
|
||||
|
||||
// Support for G5 with XYZE destination and IJPQ offsets. Requires ~2666 bytes.
|
||||
//#define BEZIER_CURVE_SUPPORT
|
||||
#define BEZIER_CURVE_SUPPORT
|
||||
|
||||
// G38.2 and G38.3 Probe Target
|
||||
// Set MULTIPLE_PROBING if you want G38 to double touch
|
||||
@@ -917,7 +919,7 @@
|
||||
// enter the serial receive buffer, so they cannot be blocked.
|
||||
// Currently handles M108, M112, M410
|
||||
// Does not work on boards using AT90USB (USBCON) processors!
|
||||
//#define EMERGENCY_PARSER
|
||||
#define EMERGENCY_PARSER
|
||||
|
||||
// Bad Serial-connections can miss a received command by sending an 'ok'
|
||||
// Therefore some clients abort after 30 seconds in a timeout.
|
||||
@@ -926,7 +928,7 @@
|
||||
//#define NO_TIMEOUTS 1000 // Milliseconds
|
||||
|
||||
// Some clients will have this feature soon. This could make the NO_TIMEOUTS unnecessary.
|
||||
//#define ADVANCED_OK
|
||||
#define ADVANCED_OK
|
||||
|
||||
// @section extras
|
||||
|
||||
@@ -945,7 +947,7 @@
|
||||
* Note that M207 / M208 / M209 settings are saved to EEPROM.
|
||||
*
|
||||
*/
|
||||
//#define FWRETRACT // ONLY PARTIALLY TESTED
|
||||
#define FWRETRACT // ONLY PARTIALLY TESTED
|
||||
#if ENABLED(FWRETRACT)
|
||||
#define MIN_AUTORETRACT 0.1 // When auto-retract is on, convert E moves of this length and over
|
||||
#define MAX_AUTORETRACT 10.0 // Upper limit for auto-retract conversion
|
||||
@@ -978,7 +980,7 @@
|
||||
* Requires NOZZLE_PARK_FEATURE.
|
||||
* This feature is required for the default FILAMENT_RUNOUT_SCRIPT.
|
||||
*/
|
||||
//#define ADVANCED_PAUSE_FEATURE
|
||||
#define ADVANCED_PAUSE_FEATURE
|
||||
#if ENABLED(ADVANCED_PAUSE_FEATURE)
|
||||
#define PAUSE_PARK_RETRACT_FEEDRATE 60 // (mm/s) Initial retract feedrate.
|
||||
#define PAUSE_PARK_RETRACT_LENGTH 2 // (mm) Initial retract.
|
||||
@@ -1010,11 +1012,11 @@
|
||||
#define FILAMENT_UNLOAD_PURGE_LENGTH 8 // (mm) An unretract is done, then this length is purged.
|
||||
|
||||
#define PAUSE_PARK_NOZZLE_TIMEOUT 45 // (seconds) Time limit before the nozzle is turned off for safety.
|
||||
#define FILAMENT_CHANGE_ALERT_BEEPS 10 // Number of alert beeps to play when a response is needed.
|
||||
#define FILAMENT_CHANGE_ALERT_BEEPS 2 // Number of alert beeps to play when a response is needed.
|
||||
#define PAUSE_PARK_NO_STEPPER_TIMEOUT // Enable for XYZ steppers to stay powered on during filament change.
|
||||
|
||||
//#define PARK_HEAD_ON_PAUSE // Park the nozzle during pause and filament change.
|
||||
//#define HOME_BEFORE_FILAMENT_CHANGE // Ensure homing has been completed prior to parking for filament change
|
||||
#define PARK_HEAD_ON_PAUSE // Park the nozzle during pause and filament change.
|
||||
#define HOME_BEFORE_FILAMENT_CHANGE // Ensure homing has been completed prior to parking for filament change
|
||||
|
||||
//#define FILAMENT_LOAD_UNLOAD_GCODES // Add M701/M702 Load/Unload G-codes, plus Load/Unload in the LCD Prepare menu.
|
||||
//#define FILAMENT_UNLOAD_ALL_EXTRUDERS // Allow M702 to unload all extruders above a minimum target temp (as set by M302)
|
||||
@@ -1430,7 +1432,7 @@
|
||||
/**
|
||||
* M43 - display pin status, watch pins for changes, watch endstops & toggle LED, Z servo probe test, toggle pins
|
||||
*/
|
||||
//#define PINS_DEBUGGING
|
||||
#define PINS_DEBUGGING
|
||||
|
||||
/**
|
||||
* Auto-report temperatures with M155 S<seconds>
|
||||
@@ -1484,26 +1486,28 @@
|
||||
/**
|
||||
* User-defined menu items that execute custom GCode
|
||||
*/
|
||||
//#define CUSTOM_USER_MENUS
|
||||
#if(ENABLED(UBL))
|
||||
#define CUSTOM_USER_MENUS
|
||||
#endif
|
||||
#if ENABLED(CUSTOM_USER_MENUS)
|
||||
#define USER_SCRIPT_DONE "M117 User Script Done"
|
||||
//#define USER_SCRIPT_DONE "M117 User Script Done"
|
||||
#define USER_SCRIPT_AUDIBLE_FEEDBACK
|
||||
//#define USER_SCRIPT_RETURN // Return to status screen after a script
|
||||
#define USER_SCRIPT_RETURN // Return to status screen after a script
|
||||
|
||||
#define USER_DESC_1 "Home & UBL Info"
|
||||
#define USER_GCODE_1 "G28\nG29 W"
|
||||
#define USER_DESC_1 "UBL Commission Step 1"
|
||||
#define USER_GCODE_1 "M502 \n M500 \n M501 \n M190 S75 \n G28 \n G29 P1 \n G29 S1 \n M117 Run Step 2 \n"
|
||||
|
||||
#define USER_DESC_2 "UBL Commission Step 2"
|
||||
#define USER_GCODE_2 "G29 S1 \n G29 S0 \n G29 F 10.0 \n G29 A \n M500 \n G28 \n G29 L1 \n M109 S225 \n G1 X150 Y 150 \n G1 Z0 \n M117 Set Z Offset \n"
|
||||
|
||||
#define USER_DESC_2 "Preheat for PLA"
|
||||
#define USER_GCODE_2 "M140 S" STRINGIFY(PREHEAT_1_TEMP_BED) "\nM104 S" STRINGIFY(PREHEAT_1_TEMP_HOTEND)
|
||||
#define USER_DESC_3 "Prep for Z Adjust"
|
||||
#define USER_GCODE_3 "M190 75 \n M104 235 \n G28 \n G29 L1 \n G1 X150 Y 150 \n G1 Z0 \n"
|
||||
|
||||
#define USER_DESC_3 "Preheat for ABS"
|
||||
#define USER_GCODE_3 "M140 S" STRINGIFY(PREHEAT_2_TEMP_BED) "\nM104 S" STRINGIFY(PREHEAT_2_TEMP_HOTEND)
|
||||
#define USER_DESC_4 "Fill Mesh Points"
|
||||
#define USER_GCODE_4 "G29 P3 \n G29 P3 \n G29 P3 \n G29 T \n"
|
||||
|
||||
#define USER_DESC_4 "Heat Bed/Home/Level"
|
||||
#define USER_GCODE_4 "M140 S" STRINGIFY(PREHEAT_2_TEMP_BED) "\nG28\nG29"
|
||||
|
||||
#define USER_DESC_5 "Home & Info"
|
||||
#define USER_GCODE_5 "G28\nM503"
|
||||
#define USER_DESC_5 "Run Mesh Validation"
|
||||
#define USER_GCODE_5 "G26 \n"
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1518,8 +1522,8 @@
|
||||
* Will be sent in the form '//action:ACTION_ON_PAUSE', e.g. '//action:pause'.
|
||||
* The host must be configured to handle the action command.
|
||||
*/
|
||||
//#define ACTION_ON_PAUSE "pause"
|
||||
//#define ACTION_ON_RESUME "resume"
|
||||
#define ACTION_ON_PAUSE "pause"
|
||||
#define ACTION_ON_RESUME "resume"
|
||||
|
||||
//===========================================================================
|
||||
//====================== I2C Position Encoder Settings ======================
|
||||
|
||||
+84
-49
@@ -601,7 +601,13 @@ uint8_t target_extruder;
|
||||
#endif
|
||||
|
||||
#if HAS_POWER_SWITCH
|
||||
bool powersupply_on;
|
||||
bool powersupply_on = (
|
||||
#if ENABLED(PS_DEFAULT_OFF)
|
||||
false
|
||||
#else
|
||||
true
|
||||
#endif
|
||||
);
|
||||
#if ENABLED(AUTO_POWER_CONTROL)
|
||||
#define PSU_ON() powerManager.power_on()
|
||||
#define PSU_OFF() powerManager.power_off()
|
||||
@@ -937,9 +943,9 @@ void setup_powerhold() {
|
||||
#endif
|
||||
#if HAS_POWER_SWITCH
|
||||
#if ENABLED(PS_DEFAULT_OFF)
|
||||
powersupply_on = true; PSU_OFF();
|
||||
PSU_OFF();
|
||||
#else
|
||||
powersupply_on = false; PSU_ON();
|
||||
PSU_ON();
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
@@ -1377,11 +1383,7 @@ bool get_target_extruder_from_command(const uint16_t code) {
|
||||
}
|
||||
#elif ENABLED(DELTA)
|
||||
soft_endstop_min[axis] = base_min_pos(axis);
|
||||
soft_endstop_max[axis] = axis == Z_AXIS ? delta_height
|
||||
#if HAS_BED_PROBE
|
||||
- zprobe_zoffset
|
||||
#endif
|
||||
: base_max_pos(axis);
|
||||
soft_endstop_max[axis] = axis == Z_AXIS ? delta_height : base_max_pos(axis);
|
||||
#else
|
||||
soft_endstop_min[axis] = base_min_pos(axis);
|
||||
soft_endstop_max[axis] = base_max_pos(axis);
|
||||
@@ -1510,14 +1512,13 @@ static void set_axis_is_at_home(const AxisEnum axis) {
|
||||
}
|
||||
else
|
||||
#elif ENABLED(DELTA)
|
||||
current_position[axis] = (axis == Z_AXIS ? delta_height
|
||||
#if HAS_BED_PROBE
|
||||
- zprobe_zoffset
|
||||
#endif
|
||||
: base_home_pos(axis));
|
||||
#else
|
||||
current_position[axis] = base_home_pos(axis);
|
||||
if (axis == Z_AXIS)
|
||||
current_position[axis] = delta_height;
|
||||
else
|
||||
#endif
|
||||
{
|
||||
current_position[axis] = base_home_pos(axis);
|
||||
}
|
||||
|
||||
/**
|
||||
* Z Probe Z Homing? Account for the probe's Z offset.
|
||||
@@ -2093,11 +2094,6 @@ void clean_up_after_endstop_or_probe_move() {
|
||||
}
|
||||
|
||||
bltouch_command(deploy ? BLTOUCH_DEPLOY : BLTOUCH_STOW);
|
||||
#if ENABLED(BLTOUCH_V3)
|
||||
// The version 3 of BlTouch needs to switch to Alarm & Test mode after deploy
|
||||
// or it keeps on pushing the probes out and ends up in error mode (collision).
|
||||
if (deploy) bltouch_command(BLTOUCH_ALARM);
|
||||
#endif
|
||||
|
||||
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
||||
if (DEBUGGING(LEVELING)) {
|
||||
@@ -4066,11 +4062,7 @@ inline void gcode_G4() {
|
||||
#endif
|
||||
|
||||
// Move all carriages together linearly until an endstop is hit.
|
||||
current_position[X_AXIS] = current_position[Y_AXIS] = current_position[Z_AXIS] = (delta_height + 10
|
||||
#if HAS_BED_PROBE
|
||||
- zprobe_zoffset
|
||||
#endif
|
||||
);
|
||||
current_position[X_AXIS] = current_position[Y_AXIS] = current_position[Z_AXIS] = (delta_height + 10);
|
||||
feedrate_mm_s = homing_feedrate(X_AXIS);
|
||||
buffer_line_to_current_position();
|
||||
planner.synchronize();
|
||||
@@ -4599,7 +4591,7 @@ void home_all_axes() { gcode_G28(true); }
|
||||
if (parser.seenval('X')) {
|
||||
px = parser.value_int() - 1;
|
||||
if (!WITHIN(px, 0, GRID_MAX_POINTS_X - 1)) {
|
||||
SERIAL_PROTOCOLPAIR("X out of range (1-", int(GRID_MAX_POINTS_X));
|
||||
SERIAL_PROTOCOLPAIR("X out of range (0-", int(GRID_MAX_POINTS_X));
|
||||
SERIAL_PROTOCOLLNPGM(")");
|
||||
return;
|
||||
}
|
||||
@@ -4612,7 +4604,7 @@ void home_all_axes() { gcode_G28(true); }
|
||||
if (parser.seenval('Y')) {
|
||||
py = parser.value_int() - 1;
|
||||
if (!WITHIN(py, 0, GRID_MAX_POINTS_Y - 1)) {
|
||||
SERIAL_PROTOCOLPAIR("Y out of range (1-", int(GRID_MAX_POINTS_Y));
|
||||
SERIAL_PROTOCOLPAIR("Y out of range (0-", int(GRID_MAX_POINTS_Y));
|
||||
SERIAL_PROTOCOLLNPGM(")");
|
||||
return;
|
||||
}
|
||||
@@ -5758,6 +5750,12 @@ void home_all_axes() { gcode_G28(true); }
|
||||
if ((!end_stops && tower_angles) || (end_stops && !tower_angles)) { // XOR
|
||||
SERIAL_PROTOCOLPAIR(" Radius:", delta_radius);
|
||||
}
|
||||
#if HAS_BED_PROBE
|
||||
if (!end_stops && !tower_angles) {
|
||||
SERIAL_PROTOCOL_SP(30);
|
||||
print_signed_float(PSTR("Offset"), zprobe_zoffset);
|
||||
}
|
||||
#endif
|
||||
SERIAL_EOL();
|
||||
}
|
||||
|
||||
@@ -5806,19 +5804,30 @@ void home_all_axes() { gcode_G28(true); }
|
||||
/**
|
||||
* - Probe a point
|
||||
*/
|
||||
static float calibration_probe(const float &nx, const float &ny, const bool stow) {
|
||||
static float calibration_probe(const float &nx, const float &ny, const bool stow, const bool set_up) {
|
||||
#if HAS_BED_PROBE
|
||||
return probe_pt(nx, ny, stow ? PROBE_PT_STOW : PROBE_PT_RAISE, 0, false);
|
||||
return probe_pt(nx, ny, set_up ? PROBE_PT_BIG_RAISE : stow ? PROBE_PT_STOW : PROBE_PT_RAISE, 0, false);
|
||||
#else
|
||||
UNUSED(stow);
|
||||
UNUSED(set_up);
|
||||
return lcd_probe_pt(nx, ny);
|
||||
#endif
|
||||
}
|
||||
|
||||
#if HAS_BED_PROBE && ENABLED(ULTIPANEL)
|
||||
static float probe_z_shift(const float center) {
|
||||
STOW_PROBE();
|
||||
endstops.enable_z_probe(false);
|
||||
float z_shift = lcd_probe_pt(0, 0) - center;
|
||||
endstops.enable_z_probe(true);
|
||||
return z_shift;
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* - Probe a grid
|
||||
*/
|
||||
static bool probe_calibration_points(float z_pt[NPP + 1], const int8_t probe_points, const bool towers_set, const bool stow_after_each) {
|
||||
static bool probe_calibration_points(float z_pt[NPP + 1], const int8_t probe_points, const bool towers_set, const bool stow_after_each, const bool set_up) {
|
||||
const bool _0p_calibration = probe_points == 0,
|
||||
_1p_calibration = probe_points == 1 || probe_points == -1,
|
||||
_4p_calibration = probe_points == 2,
|
||||
@@ -5841,7 +5850,7 @@ void home_all_axes() { gcode_G28(true); }
|
||||
if (!_0p_calibration) {
|
||||
|
||||
if (!_7p_no_intermediates && !_7p_4_intermediates && !_7p_11_intermediates) { // probe the center
|
||||
z_pt[CEN] += calibration_probe(0, 0, stow_after_each);
|
||||
z_pt[CEN] += calibration_probe(0, 0, stow_after_each, set_up);
|
||||
if (isnan(z_pt[CEN])) return false;
|
||||
}
|
||||
|
||||
@@ -5851,7 +5860,7 @@ void home_all_axes() { gcode_G28(true); }
|
||||
I_LOOP_CAL_PT(rad, start, steps) {
|
||||
const float a = RADIANS(210 + (360 / NPP) * (rad - 1)),
|
||||
r = delta_calibration_radius * 0.1;
|
||||
z_pt[CEN] += calibration_probe(cos(a) * r, sin(a) * r, stow_after_each);
|
||||
z_pt[CEN] += calibration_probe(cos(a) * r, sin(a) * r, stow_after_each, set_up);
|
||||
if (isnan(z_pt[CEN])) return false;
|
||||
}
|
||||
z_pt[CEN] /= float(_7p_2_intermediates ? 7 : probe_points);
|
||||
@@ -5875,7 +5884,7 @@ void home_all_axes() { gcode_G28(true); }
|
||||
const float a = RADIANS(210 + (360 / NPP) * (rad - 1)),
|
||||
r = delta_calibration_radius * (1 - 0.1 * (zig_zag ? offset - circle : circle)),
|
||||
interpol = fmod(rad, 1);
|
||||
const float z_temp = calibration_probe(cos(a) * r, sin(a) * r, stow_after_each);
|
||||
const float z_temp = calibration_probe(cos(a) * r, sin(a) * r, stow_after_each, set_up);
|
||||
if (isnan(z_temp)) return false;
|
||||
// split probe point to neighbouring calibration points
|
||||
z_pt[uint8_t(LROUND(rad - interpol + NPP - 1)) % NPP + 1] += z_temp * sq(cos(RADIANS(interpol * 90)));
|
||||
@@ -6004,7 +6013,10 @@ void home_all_axes() { gcode_G28(true); }
|
||||
*
|
||||
* Parameters:
|
||||
*
|
||||
* S Setup mode; disables probe protection
|
||||
*
|
||||
* Pn Number of probe points:
|
||||
* P-1 Checks the z_offset with a center probe and paper test.
|
||||
* P0 Normalizes calibration.
|
||||
* P1 Calibrates height only with center probe.
|
||||
* P2 Probe center and towers. Calibrate height, endstops and delta radius.
|
||||
@@ -6027,15 +6039,22 @@ void home_all_axes() { gcode_G28(true); }
|
||||
*/
|
||||
inline void gcode_G33() {
|
||||
|
||||
const int8_t probe_points = parser.intval('P', DELTA_CALIBRATION_DEFAULT_POINTS);
|
||||
if (!WITHIN(probe_points, 0, 10)) {
|
||||
SERIAL_PROTOCOLLNPGM("?(P)oints is implausible (0-10).");
|
||||
const bool set_up =
|
||||
#if HAS_BED_PROBE
|
||||
parser.seen('S');
|
||||
#else
|
||||
false;
|
||||
#endif
|
||||
|
||||
const int8_t probe_points = set_up ? 2 : parser.intval('P', DELTA_CALIBRATION_DEFAULT_POINTS);
|
||||
if (!WITHIN(probe_points, -1, 10)) {
|
||||
SERIAL_PROTOCOLLNPGM("?(P)oints is implausible (-1 - 10).");
|
||||
return;
|
||||
}
|
||||
|
||||
const bool towers_set = !parser.seen('T');
|
||||
|
||||
const float calibration_precision = parser.floatval('C', 0.0);
|
||||
const float calibration_precision = set_up ? Z_CLEARANCE_BETWEEN_PROBES / 5.0 : parser.floatval('C', 0.0);
|
||||
if (calibration_precision < 0) {
|
||||
SERIAL_PROTOCOLLNPGM("?(C)alibration precision is implausible (>=0).");
|
||||
return;
|
||||
@@ -6043,18 +6062,26 @@ void home_all_axes() { gcode_G28(true); }
|
||||
|
||||
const int8_t force_iterations = parser.intval('F', 0);
|
||||
if (!WITHIN(force_iterations, 0, 30)) {
|
||||
SERIAL_PROTOCOLLNPGM("?(F)orce iteration is implausible (0-30).");
|
||||
SERIAL_PROTOCOLLNPGM("?(F)orce iteration is implausible (0 - 30).");
|
||||
return;
|
||||
}
|
||||
|
||||
const int8_t verbose_level = parser.byteval('V', 1);
|
||||
if (!WITHIN(verbose_level, 0, 3)) {
|
||||
SERIAL_PROTOCOLLNPGM("?(V)erbose level is implausible (0-3).");
|
||||
SERIAL_PROTOCOLLNPGM("?(V)erbose level is implausible (0 - 3).");
|
||||
return;
|
||||
}
|
||||
|
||||
const bool stow_after_each = parser.seen('E');
|
||||
|
||||
if (set_up) {
|
||||
delta_height = 999.99;
|
||||
delta_radius = DELTA_PRINTABLE_RADIUS;
|
||||
ZERO(delta_endstop_adj);
|
||||
ZERO(delta_tower_angle_trim);
|
||||
recalc_delta_settings();
|
||||
}
|
||||
|
||||
const bool _0p_calibration = probe_points == 0,
|
||||
_1p_calibration = probe_points == 1 || probe_points == -1,
|
||||
_4p_calibration = probe_points == 2,
|
||||
@@ -6103,6 +6130,7 @@ void home_all_axes() { gcode_G28(true); }
|
||||
const char *checkingac = PSTR("Checking... AC");
|
||||
serialprintPGM(checkingac);
|
||||
if (verbose_level == 0) SERIAL_PROTOCOLPGM(" (DRY-RUN)");
|
||||
if (set_up) SERIAL_PROTOCOLPGM(" (SET-UP)");
|
||||
SERIAL_EOL();
|
||||
lcd_setstatusPGM(checkingac);
|
||||
|
||||
@@ -6121,7 +6149,7 @@ void home_all_axes() { gcode_G28(true); }
|
||||
|
||||
// Probe the points
|
||||
zero_std_dev_old = zero_std_dev;
|
||||
if (!probe_calibration_points(z_at_pt, probe_points, towers_set, stow_after_each)) {
|
||||
if (!probe_calibration_points(z_at_pt, probe_points, towers_set, stow_after_each, set_up)) {
|
||||
SERIAL_PROTOCOLLNPGM("Correct delta settings with M665 and M666");
|
||||
return AC_CLEANUP();
|
||||
}
|
||||
@@ -6169,6 +6197,11 @@ void home_all_axes() { gcode_G28(true); }
|
||||
delta_calibration_radius = cr_old;
|
||||
|
||||
switch (probe_points) {
|
||||
case -1:
|
||||
#if HAS_BED_PROBE && ENABLED(ULTIPANEL)
|
||||
zprobe_zoffset += probe_z_shift(z_at_pt[CEN]);
|
||||
#endif
|
||||
|
||||
case 0:
|
||||
test_precision = 0.00; // forced end
|
||||
break;
|
||||
@@ -10072,7 +10105,7 @@ inline void gcode_M226() {
|
||||
NOLESS(thermalManager.lpq_len, 0);
|
||||
#endif
|
||||
|
||||
thermalManager.update_pid();
|
||||
thermalManager.updatePID();
|
||||
SERIAL_ECHO_START();
|
||||
#if ENABLED(PID_PARAMS_PER_HOTEND)
|
||||
SERIAL_ECHOPAIR(" e:", e); // specify extruder in serial output
|
||||
@@ -10218,7 +10251,7 @@ inline void gcode_M303() {
|
||||
KEEPALIVE_STATE(NOT_BUSY);
|
||||
#endif
|
||||
|
||||
thermalManager.pid_autotune(temp, e, c, u);
|
||||
thermalManager.PID_autotune(temp, e, c, u);
|
||||
|
||||
#if DISABLED(BUSY_WHILE_HEATING)
|
||||
KEEPALIVE_STATE(IN_HANDLER);
|
||||
@@ -14605,7 +14638,7 @@ void prepare_move_to_destination() {
|
||||
|
||||
#if ENABLED(TEMP_STAT_LEDS)
|
||||
|
||||
static uint8_t red_led = -1; // Invalid value to force leds initializzation on startup
|
||||
static bool red_led = false;
|
||||
static millis_t next_status_led_update_ms = 0;
|
||||
|
||||
void handle_status_leds(void) {
|
||||
@@ -14613,18 +14646,20 @@ void prepare_move_to_destination() {
|
||||
next_status_led_update_ms += 500; // Update every 0.5s
|
||||
float max_temp = 0.0;
|
||||
#if HAS_HEATED_BED
|
||||
max_temp = MAX(thermalManager.degTargetBed(), thermalManager.degBed());
|
||||
max_temp = MAX3(max_temp, thermalManager.degTargetBed(), thermalManager.degBed());
|
||||
#endif
|
||||
HOTEND_LOOP()
|
||||
max_temp = MAX3(max_temp, thermalManager.degHotend(e), thermalManager.degTargetHotend(e));
|
||||
const uint8_t new_led = (max_temp > 55.0) ? HIGH : (max_temp < 54.0 || red_led == -1) ? LOW : red_led;
|
||||
const bool new_led = (max_temp > 55.0) ? true : (max_temp < 54.0) ? false : red_led;
|
||||
if (new_led != red_led) {
|
||||
red_led = new_led;
|
||||
#if PIN_EXISTS(STAT_LED_RED)
|
||||
WRITE(STAT_LED_RED_PIN, new_led);
|
||||
#endif
|
||||
#if PIN_EXISTS(STAT_LED_BLUE)
|
||||
WRITE(STAT_LED_BLUE_PIN, !new_led);
|
||||
WRITE(STAT_LED_RED_PIN, new_led ? HIGH : LOW);
|
||||
#if PIN_EXISTS(STAT_LED_BLUE)
|
||||
WRITE(STAT_LED_BLUE_PIN, new_led ? LOW : HIGH);
|
||||
#endif
|
||||
#else
|
||||
WRITE(STAT_LED_BLUE_PIN, new_led ? HIGH : LOW);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -35,7 +35,7 @@
|
||||
/**
|
||||
* Marlin release version identifier
|
||||
*/
|
||||
#define SHORT_BUILD_VERSION "bugfix-1.1.x"
|
||||
#define SHORT_BUILD_VERSION "1.1.9-R4"
|
||||
|
||||
/**
|
||||
* Verbose version identifier which should contain a reference to the location
|
||||
@@ -48,7 +48,7 @@
|
||||
* here we define this default string as the date where the latest release
|
||||
* version was tagged.
|
||||
*/
|
||||
#define STRING_DISTRIBUTION_DATE "2018-07-31"
|
||||
#define STRING_DISTRIBUTION_DATE "2019-01-10"
|
||||
|
||||
/**
|
||||
* Required minimum Configuration.h and Configuration_adv.h file versions.
|
||||
@@ -70,7 +70,7 @@
|
||||
/**
|
||||
* Defines a generic printer name to be output to the LCD after booting Marlin.
|
||||
*/
|
||||
#define MACHINE_NAME "3D Printer"
|
||||
#define MACHINE_NAME "TM3D Raptor"
|
||||
|
||||
/**
|
||||
* The SOURCE_CODE_URL is the location where users will find the Marlin Source
|
||||
@@ -89,6 +89,6 @@
|
||||
* The WEBSITE_URL is the location where users can get more information such as
|
||||
* documentation about a specific Marlin release.
|
||||
*/
|
||||
#define WEBSITE_URL "http://marlinfw.org"
|
||||
#define WEBSITE_URL "tinymachines3d.com"
|
||||
|
||||
#endif // USE_AUTOMATIC_VERSIONING
|
||||
|
||||
@@ -0,0 +1,106 @@
|
||||
/**
|
||||
* Marlin 3D Printer Firmware
|
||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
||||
*
|
||||
* Based on Sprinter and grbl.
|
||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* Custom Bitmap for splashscreen
|
||||
*
|
||||
* You may use one of the following tools to generate the C++ bitmap array from
|
||||
* a black and white image:
|
||||
*
|
||||
* - http://www.marlinfw.org/tools/u8glib/converter.html
|
||||
* - http://www.digole.com/tools/PicturetoC_Hex_converter.php
|
||||
*/
|
||||
#include <avr/pgmspace.h>
|
||||
|
||||
#define CUSTOM_BOOTSCREEN_TIMEOUT 2500
|
||||
#define CUSTOM_BOOTSCREEN_BMPWIDTH 128
|
||||
#define CUSTOM_BOOTSCREEN_BMPHEIGHT 64
|
||||
|
||||
const unsigned char custom_start_bmp[] PROGMEM = {
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFD, 0x55, 0x55, 0x55, 0x55, 0x55, 0x5F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFD, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFE, 0x07, 0xC0, 0x05, 0x55, 0x55, 0x55, 0x55, 0x55, 0x5F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFC, 0x0A, 0x20, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFE, 0x14, 0x10, 0x05, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFC, 0x28, 0x08, 0x06, 0x07, 0xC0, 0x05, 0x55, 0x55, 0x55, 0x55, 0x55, 0x5F, 0xFF, 0xFF, 0xFF,
|
||||
0xFE, 0x54, 0x04, 0x04, 0x0A, 0x20, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF,
|
||||
0xFC, 0x60, 0x04, 0x06, 0x14, 0x10, 0x05, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFE, 0x50, 0x04, 0x04, 0x28, 0x08, 0x06, 0x07, 0xC0, 0x05, 0x55, 0x55, 0x55, 0x55, 0x55, 0x5F,
|
||||
0xFC, 0x60, 0x04, 0x06, 0x54, 0x04, 0x04, 0x0A, 0x20, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F,
|
||||
0xFE, 0x54, 0x04, 0x1C, 0x60, 0x04, 0x06, 0x14, 0x10, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F,
|
||||
0xFC, 0x28, 0x08, 0x2E, 0x50, 0x04, 0x04, 0x28, 0x08, 0x06, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x3F,
|
||||
0xFE, 0x14, 0x10, 0x54, 0x60, 0x04, 0x06, 0x54, 0x04, 0x04, 0x0A, 0x20, 0x00, 0x02, 0x08, 0x1F,
|
||||
0xFC, 0x0A, 0x20, 0x66, 0x54, 0x04, 0x1C, 0x60, 0x04, 0x06, 0x14, 0x10, 0x00, 0x05, 0x04, 0x3F,
|
||||
0xFE, 0x07, 0xC0, 0x54, 0x28, 0x08, 0x2E, 0x50, 0x04, 0x04, 0x28, 0x08, 0x00, 0x0A, 0x02, 0x1F,
|
||||
0xFC, 0x00, 0x00, 0x2E, 0x14, 0x10, 0x54, 0x60, 0x04, 0x06, 0x54, 0x04, 0x00, 0x15, 0x01, 0x3F,
|
||||
0xFE, 0x00, 0x00, 0x1C, 0x0A, 0x20, 0x66, 0x54, 0x04, 0x1C, 0x60, 0x04, 0x00, 0x18, 0x01, 0x1F,
|
||||
0xFC, 0x00, 0x00, 0x06, 0x07, 0xC0, 0x54, 0x28, 0x08, 0x2E, 0x50, 0x04, 0x00, 0x14, 0x01, 0x3F,
|
||||
0xFE, 0x00, 0x00, 0x04, 0x00, 0x00, 0x2E, 0x14, 0x10, 0x54, 0x60, 0x04, 0x00, 0x18, 0x01, 0x1F,
|
||||
0xFC, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x1C, 0x0A, 0x20, 0x66, 0x54, 0x04, 0x1C, 0x15, 0x01, 0x3F,
|
||||
0xFE, 0xD5, 0x55, 0x54, 0x00, 0x00, 0x06, 0x07, 0xC0, 0x54, 0x28, 0x08, 0x2A, 0x0A, 0x02, 0x1F,
|
||||
0xFC, 0x84, 0x10, 0x46, 0x00, 0x00, 0x04, 0x00, 0x00, 0x2E, 0x14, 0x10, 0x51, 0x05, 0x04, 0x3F,
|
||||
0xFE, 0xC4, 0x10, 0x44, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x1C, 0x0A, 0x20, 0x61, 0x02, 0x88, 0x1F,
|
||||
0xFC, 0x84, 0x10, 0x46, 0xD5, 0x55, 0x54, 0x00, 0x00, 0x06, 0x07, 0xC0, 0x51, 0x01, 0xF0, 0x3F,
|
||||
0xFE, 0x84, 0x10, 0x44, 0x84, 0x10, 0x46, 0x00, 0x00, 0x04, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x1F,
|
||||
0xFC, 0xC4, 0x10, 0x46, 0xC4, 0x10, 0x44, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3F,
|
||||
0xFE, 0x84, 0x10, 0x44, 0x84, 0x10, 0x46, 0xD5, 0x55, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F,
|
||||
0xFC, 0xD5, 0x55, 0x56, 0x84, 0x10, 0x44, 0x84, 0x10, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F,
|
||||
0xFC, 0xFF, 0xFF, 0xFC, 0xC4, 0x10, 0x46, 0xC4, 0x10, 0x44, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x9F,
|
||||
0xFE, 0x00, 0x00, 0x06, 0x84, 0x10, 0x44, 0x84, 0x10, 0x46, 0xD5, 0x55, 0x55, 0x55, 0x55, 0xBF,
|
||||
0xFD, 0x55, 0x55, 0x54, 0xD5, 0x55, 0x56, 0x84, 0x10, 0x44, 0x84, 0x10, 0x41, 0x04, 0x10, 0x9F,
|
||||
0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xC4, 0x10, 0x46, 0xC4, 0x10, 0x41, 0x04, 0x11, 0xBF,
|
||||
0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x06, 0x84, 0x10, 0x44, 0x84, 0x10, 0x41, 0x04, 0x10, 0x9F,
|
||||
0xFF, 0xFF, 0xFF, 0xFD, 0x55, 0x55, 0x54, 0xD5, 0x55, 0x56, 0x84, 0x10, 0x41, 0x04, 0x10, 0x9F,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xC4, 0x10, 0x41, 0x04, 0x11, 0xBF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x06, 0x84, 0x10, 0x41, 0x04, 0x10, 0x9F,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0x55, 0x55, 0x54, 0xD5, 0x55, 0x55, 0x55, 0x55, 0xBF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x9F,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0x55, 0x55, 0x55, 0x55, 0x55, 0x5F,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xE0, 0x2E, 0xFB, 0x7D, 0xFB, 0xFB, 0xCF, 0xC1, 0xDF, 0xBB, 0x3E, 0xC0, 0xE1, 0xFE, 0x3C, 0x1F,
|
||||
0xFD, 0xEE, 0x7B, 0x39, 0xF9, 0xF3, 0xCF, 0x9E, 0xDF, 0xBB, 0x3E, 0xDF, 0xDE, 0xFC, 0xDD, 0xE7,
|
||||
0xFD, 0xEE, 0x3B, 0xBB, 0xF9, 0xEB, 0xD7, 0xBF, 0x5F, 0xBB, 0x5E, 0xDF, 0xDE, 0xFD, 0xED, 0xF7,
|
||||
0xFD, 0xEE, 0xBB, 0xD3, 0xFA, 0xEB, 0xB7, 0x3F, 0xDF, 0xBB, 0x4E, 0xDF, 0xDF, 0xFF, 0xCD, 0xF3,
|
||||
0xFD, 0xEE, 0xDB, 0xC7, 0xFA, 0xEB, 0xBB, 0x7F, 0xC0, 0x3B, 0x6E, 0xC0, 0xE3, 0xFF, 0x1D, 0xF3,
|
||||
0xFD, 0xEE, 0xCB, 0xEF, 0xFA, 0xDB, 0xBB, 0x7F, 0xDF, 0xBB, 0x66, 0xDF, 0xF8, 0xFF, 0xCD, 0xF3,
|
||||
0xFD, 0xEE, 0xEB, 0xEF, 0xFB, 0x5B, 0x03, 0x3F, 0x5F, 0xBB, 0x76, 0xDF, 0xFE, 0x7F, 0xED, 0xF3,
|
||||
0xFD, 0xEE, 0xF3, 0xEF, 0xFB, 0x5B, 0x79, 0xBE, 0xDF, 0xBB, 0x7A, 0xDF, 0xDE, 0x7D, 0xED, 0xF7,
|
||||
0xFD, 0xEE, 0xF3, 0xEF, 0xFB, 0xBA, 0xFD, 0x9E, 0xDF, 0xBB, 0x7C, 0xDF, 0xDE, 0xFD, 0xCD, 0xE7,
|
||||
0xFD, 0xEE, 0xFB, 0xEF, 0xFB, 0xBA, 0xFD, 0xC1, 0xDF, 0xBB, 0x7E, 0xC0, 0xE0, 0xFE, 0x1C, 0x1F,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,460 @@
|
||||
/**
|
||||
* Marlin 3D Printer Firmware
|
||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
||||
*
|
||||
* Based on Sprinter and grbl.
|
||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* Custom Status Screen bitmap
|
||||
*
|
||||
* Place this file in the root with your configuration files
|
||||
* and enable CUSTOM_STATUS_SCREEN_IMAGE in Configuration.h.
|
||||
*
|
||||
* Use the Marlin Bitmap Converter to make your own:
|
||||
* http://marlinfw.org/tools/u8glib/converter.html
|
||||
*/
|
||||
#include "MarlinConfig.h"
|
||||
|
||||
//============================================
|
||||
|
||||
#define STATUS_SCREENWIDTH 128
|
||||
|
||||
#define STATUS_SCREEN_HOTEND_TEXT_X(E) (41 + (E) * 20)
|
||||
|
||||
#define STATUS_SCREEN_BED_TEXT_X (HOTENDS > 1 ? 81 : 73)
|
||||
|
||||
#define FAN_ANIM_FRAMES 3
|
||||
#define STATUS_SCREEN_FAN_TEXT_X (FAN_ANIM_FRAMES == 3 ? 103 : 105)
|
||||
#define STATUS_SCREEN_FAN_TEXT_Y (FAN_ANIM_FRAMES > 2 ? 28 : 27)
|
||||
|
||||
//============================================
|
||||
|
||||
#if HOTENDS < 2
|
||||
|
||||
#if FAN_ANIM_FRAMES <= 2
|
||||
|
||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B10001110,B00000000,B11100001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00111111,B00111000,
|
||||
B10011111,B00000000,B11110001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111110,B00011000,
|
||||
B10010011,B10000001,B00111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111100,B00011000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101000,B01111100,B00001000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00111000,B00001000,
|
||||
B10011111,B10111001,B11110001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B00111001,B11001000,
|
||||
B10001111,B00101000,B11110001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11111111,B11101000,
|
||||
B10000000,B00111000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11000111,B11101000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B11111111,B11101000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100111,B00111001,B11101000,
|
||||
B10010001,B01110100,B10011001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B00111000,B01101000,
|
||||
B10011011,B00000110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B01111100,B00101000,
|
||||
B10011011,B01010100,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110000,B01111100,B00011000,
|
||||
B10011011,B01010110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B11111100,B00011000,
|
||||
B10011011,B01010100,B10011001,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11111000,B00111000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B10000000,B11111000,
|
||||
B10001110,B00000000,B11100001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B10000000,B00111000,
|
||||
B10011111,B00000000,B11110001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B10000001,B11011000,
|
||||
B10010011,B10000001,B00111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B11000011,B11011000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B11000111,B11101000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100011,B11000111,B11111000,
|
||||
B10011111,B10111001,B11110001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100001,B11111111,B10001000,
|
||||
B10001111,B00101000,B11110001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01101100,B00001000,
|
||||
B10000000,B00111000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01101100,B00001000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B01101100,B00001000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100011,B11111111,B00001000,
|
||||
B10010001,B01110100,B10011001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00111111,B11000111,B10001000,
|
||||
B10011011,B00000110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B11000111,B11001000,
|
||||
B10011011,B01010100,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110111,B10000111,B11011000,
|
||||
B10011011,B01010110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110111,B00000011,B11011000,
|
||||
B10011011,B01010100,B10011001,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000011,B00111000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000010,B11111000,
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
|
||||
#elif FAN_ANIM_FRAMES == 3
|
||||
|
||||
|
||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B10001110,B00000000,B11100001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00111111,B00111000,
|
||||
B10011111,B00000000,B11110001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111110,B00011000,
|
||||
B10010011,B10000001,B00111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111100,B00011000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101000,B01111100,B00001000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00111000,B00001000,
|
||||
B10011111,B10111001,B11110001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B00111001,B11001000,
|
||||
B10001111,B00101000,B11110001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11111111,B11101000,
|
||||
B10000000,B00111000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11000111,B11101000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B11111111,B11101000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100111,B00111001,B11101000,
|
||||
B10010001,B01110100,B10011001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B00111000,B01101000,
|
||||
B10011011,B00000110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B01111100,B00101000,
|
||||
B10011011,B01010100,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110000,B01111100,B00011000,
|
||||
B10011011,B01010110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B11111100,B00011000,
|
||||
B10011011,B01010100,B10011001,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11111000,B00111000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
|
||||
|
||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B10001110,B00000000,B11100001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00001111,B00111000,
|
||||
B10011111,B00000000,B11110001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110100,B00011111,B11011000,
|
||||
B10010011,B10000001,B00111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110110,B00011111,B10011000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00011111,B00001000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10011110,B00001000,
|
||||
B10011111,B10111001,B11110001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B11111100,B00001000,
|
||||
B10001111,B00101000,B11110001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11011100,B00001000,
|
||||
B10000000,B00111000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100111,B11101111,B11001000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B01110111,B11101000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100000,B01111111,B11101000,
|
||||
B10010001,B01110100,B10011001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B11110011,B11101000,
|
||||
B10011011,B00000110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100001,B11110001,B11101000,
|
||||
B10011011,B01010100,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110011,B11110000,B11011000,
|
||||
B10011011,B01010110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110111,B11110000,B01011000,
|
||||
B10011011,B01010100,B10011001,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11100000,B00111000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
const unsigned char status_screen2_bmp[] PROGMEM = {
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B10000000,B11111000,
|
||||
B10001110,B00000000,B11100001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B10000000,B00111000,
|
||||
B10011111,B00000000,B11110001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B10000001,B11011000,
|
||||
B10010011,B10000001,B00111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B11000011,B11011000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B11000111,B11101000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100011,B11000111,B11111000,
|
||||
B10011111,B10111001,B11110001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100001,B11111111,B10001000,
|
||||
B10001111,B00101000,B11110001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01101100,B00001000,
|
||||
B10000000,B00111000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01101100,B00001000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B01101100,B00001000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100011,B11111111,B00001000,
|
||||
B10010001,B01110100,B10011001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00111111,B11000111,B10001000,
|
||||
B10011011,B00000110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B11000111,B11001000,
|
||||
B10011011,B01010100,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110111,B10000111,B11011000,
|
||||
B10011011,B01010110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110111,B00000011,B11011000,
|
||||
B10011011,B01010100,B10011001,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000011,B00111000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000010,B11111000,
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
|
||||
#elif FAN_ANIM_FRAMES == 4
|
||||
|
||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B10001110,B00000000,B11100001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00111111,B00111000,
|
||||
B10011111,B00000000,B11110001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111110,B00011000,
|
||||
B10010011,B10000001,B00111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111100,B00011000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101000,B01111100,B00001000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00111000,B00001000,
|
||||
B10011111,B10111001,B11110001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B00111001,B11001000,
|
||||
B10001111,B00101000,B11110001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11111111,B11101000,
|
||||
B10000000,B00111000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11000111,B11101000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B11111111,B11101000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100111,B00111001,B11101000,
|
||||
B10010001,B01110100,B10011001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B00111000,B01101000,
|
||||
B10011011,B00000110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B01111100,B00101000,
|
||||
B10011011,B01010100,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110000,B01111100,B00011000,
|
||||
B10011011,B01010110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B11111100,B00011000,
|
||||
B10011011,B01010100,B10011001,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11111000,B00111000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
|
||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B10001110,B00000000,B11100001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00001111,B00111000,
|
||||
B10011111,B00000000,B11110001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110100,B00011111,B11011000,
|
||||
B10010011,B10000001,B00111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110110,B00011111,B10011000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00011111,B00001000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10011110,B00001000,
|
||||
B10011111,B10111001,B11110001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B11111100,B00001000,
|
||||
B10001111,B00101000,B11110001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11011100,B00001000,
|
||||
B10000000,B00111000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100111,B11101111,B11001000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B01110111,B11101000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100000,B01111111,B11101000,
|
||||
B10010001,B01110100,B10011001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B11110011,B11101000,
|
||||
B10011011,B00000110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100001,B11110001,B11101000,
|
||||
B10011011,B01010100,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110011,B11110000,B11011000,
|
||||
B10011011,B01010110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110111,B11110000,B01011000,
|
||||
B10011011,B01010100,B10011001,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11100000,B00111000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
|
||||
const unsigned char status_screen2_bmp[] PROGMEM = {
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B10000000,B11111000,
|
||||
B10001110,B00000000,B11100001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B10000000,B00111000,
|
||||
B10011111,B00000000,B11110001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B10000001,B11011000,
|
||||
B10010011,B10000001,B00111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B11000011,B11011000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B11000111,B11101000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100011,B11000111,B11111000,
|
||||
B10011111,B10111001,B11110001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100001,B11111111,B10001000,
|
||||
B10001111,B00101000,B11110001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01101100,B00001000,
|
||||
B10000000,B00111000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01101100,B00001000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B01101100,B00001000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100011,B11111111,B00001000,
|
||||
B10010001,B01110100,B10011001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00111111,B11000111,B10001000,
|
||||
B10011011,B00000110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B11000111,B11001000,
|
||||
B10011011,B01010100,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110111,B10000111,B11011000,
|
||||
B10011011,B01010110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110111,B00000011,B11011000,
|
||||
B10011011,B01010100,B10011001,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000011,B00111000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000010,B11111000,
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
|
||||
|
||||
const unsigned char status_screen3_bmp[] PROGMEM = {
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B10001110,B00000000,B11100001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11110000,B00111000,
|
||||
B10011111,B00000000,B11110001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110001,B11100000,B00011000,
|
||||
B10010011,B10000001,B00111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110001,B11100000,B00011000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100001,B11100001,B11101000,
|
||||
B10011111,B10000001,B11111001,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11110011,B11101000,
|
||||
B10011111,B10111001,B11110001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B01111111,B11101000,
|
||||
B10001111,B00101000,B11110001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01110111,B11101000,
|
||||
B10000000,B00111000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101000,B11101110,B00101000,
|
||||
B10000000,B00000000,B00000001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B11011100,B00001000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101111,B11111100,B00001000,
|
||||
B10010001,B01110100,B10011001,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10011110,B00001000,
|
||||
B10011011,B00000110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B00001111,B00001000,
|
||||
B10011011,B01010100,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110000,B00001111,B00011000,
|
||||
B10011011,B01010110,B10101001,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B00001111,B00011000,
|
||||
B10011011,B01010100,B10011001,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00011111,B00111000,
|
||||
B10011111,B11111111,B11111001,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B11111111,B11111111,B11111111,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
#else // HOTENDS >= 2
|
||||
|
||||
#if FAN_ANIM_FRAMES <= 2
|
||||
|
||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B11111100,B00110000,
|
||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11111100,B00010000,
|
||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B01111000,B00010000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B00110000,B00010000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00000000,B11010000,
|
||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00101110,B00110001,B11010000,
|
||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00101111,B01111011,B11010000,
|
||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00101111,B01111011,B11010000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00101110,B00110001,B11010000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00101100,B00000000,B11010000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00100000,B00110000,B00010000,
|
||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00100000,B01111000,B00010000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00100000,B11111100,B00010000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110000,B11111100,B00110000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11110000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000
|
||||
};
|
||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110011,B10000111,B00110000,
|
||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B10000111,B10010000,
|
||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00000011,B11010000,
|
||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00100000,B00110000,B00010000,
|
||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00100000,B01111000,B00010000,
|
||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00100000,B01111000,B00010000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00100000,B00110000,B00010000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00101111,B00000011,B11010000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00101111,B10000111,B11010000,
|
||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00101111,B10000111,B11010000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00100111,B10000111,B10010000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110011,B10000111,B00110000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11110000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000
|
||||
};
|
||||
|
||||
#elif FAN_ANIM_FRAMES == 3
|
||||
|
||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111111,B11111111,
|
||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000000,B00011111,
|
||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00100000,B00100111,
|
||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B11110000,B01111011,
|
||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B11110000,B01111011,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000101,B11111000,B11111101,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000100,B11111000,B11111001,
|
||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00000100,B00111111,B11100001,
|
||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00000100,B00001111,B10000001,
|
||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00000100,B00001111,B10000001,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00000100,B00001111,B10000001,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00000100,B00111111,B11100001,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00000100,B11111000,B11111001,
|
||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00000101,B11111000,B11111101,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00000110,B11110000,B01111011,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00000110,B11110000,B01111011,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00000111,B00100000,B00100111,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00000111,B11000000,B00011111,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000111,B11111111,B11111111
|
||||
};
|
||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111111,B11111111,
|
||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000110,B00011111,
|
||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00111110,B00000111,
|
||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B00111110,B00000011,
|
||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B00011110,B00000011,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000100,B00011110,B00001101,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000100,B00000110,B00111101,
|
||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00000100,B00000111,B00111101,
|
||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00000100,B00001111,B11111111,
|
||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00000111,B11111111,B11111111,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00000111,B11111111,B10000001,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00000101,B11100111,B00000001,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00000101,B11000011,B00000001,
|
||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00000101,B10000011,B11000001,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00000110,B00000011,B11000011,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00000110,B00000011,B11100011,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00000111,B00000011,B11100111,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00000111,B11000011,B00011111,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000111,B11111111,B11111111
|
||||
};
|
||||
const unsigned char status_screen2_bmp[] PROGMEM = {
|
||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111111,B11111111,
|
||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000011,B00011111,
|
||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00000011,B11100111,
|
||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B00000011,B11110011,
|
||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B10000011,B11100011,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000101,B11000011,B11000001,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000101,B11100011,B10000001,
|
||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00000101,B11110111,B00000001,
|
||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00000111,B11111111,B10000001,
|
||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00000111,B11111111,B11111111,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00000100,B00001111,B11111111,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00000100,B00000111,B01111101,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00000100,B00001110,B00111101,
|
||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00000100,B00011110,B00011101,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00000110,B00111110,B00001011,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00000110,B01111110,B00000011,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00000111,B00111110,B00000111,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00000111,B11000110,B00011111,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000111,B11111111,B11111111
|
||||
};
|
||||
|
||||
#elif FAN_ANIM_FRAMES == 4
|
||||
|
||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00111111,B00111000,
|
||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111110,B00011000,
|
||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111100,B00011000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101000,B01111100,B00001000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00111000,B00001000,
|
||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00101111,B00111001,B11001000,
|
||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00101111,B11111111,B11101000,
|
||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00101111,B11000111,B11101000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00101111,B11111111,B11101000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00100111,B00111001,B11101000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00100000,B00111000,B01101000,
|
||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00100000,B01111100,B00101000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00110000,B01111100,B00011000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110000,B11111100,B00011000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111001,B11111000,B00111000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111110,B00000000,B11111000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00001111,B00111000,
|
||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110100,B00011111,B11011000,
|
||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110110,B00011111,B10011000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00011111,B00001000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10011110,B00001000,
|
||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00101111,B11111100,B00001000,
|
||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00101111,B11011100,B00001000,
|
||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00100111,B11101111,B11001000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00100000,B01110111,B11101000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00100000,B01111111,B11101000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00100000,B11110011,B11101000,
|
||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00100001,B11110001,B11101000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00110011,B11110000,B11011000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110111,B11110000,B01011000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111001,B11100000,B00111000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111110,B00000000,B11111000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
const unsigned char status_screen2_bmp[] PROGMEM = {
|
||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B10000000,B11111000,
|
||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B10000000,B00111000,
|
||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B10000001,B11011000,
|
||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B11000011,B11011000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B11000111,B11101000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100011,B11000111,B11111000,
|
||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00100001,B11111111,B10001000,
|
||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00100000,B01101100,B00001000,
|
||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00100000,B01101100,B00001000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00100000,B01101100,B00001000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00100011,B11111111,B00001000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00111111,B11000111,B10001000,
|
||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00101111,B11000111,B11001000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00110111,B10000111,B11011000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110111,B00000011,B11011000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00000011,B00111000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111110,B00000010,B11111000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
const unsigned char status_screen3_bmp[] PROGMEM = {
|
||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11110000,B00111000,
|
||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110001,B11100000,B00011000,
|
||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110001,B11100000,B00011000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100001,B11100001,B11101000,
|
||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11110011,B11101000,
|
||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00100000,B01111111,B11101000,
|
||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00100000,B01110111,B11101000,
|
||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00101000,B11101110,B00101000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00101111,B11011100,B00001000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00101111,B11111100,B00001000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00101111,B10011110,B00001000,
|
||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00101111,B00001111,B00001000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00110000,B00001111,B00011000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110000,B00001111,B00011000,
|
||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00011111,B00111000,
|
||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111110,B00000000,B11111000,
|
||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11111000
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
#endif // HOTENDS >= 2
|
||||
@@ -308,7 +308,7 @@ void MarlinSettings::postprocess() {
|
||||
#endif
|
||||
|
||||
#if ENABLED(PIDTEMP)
|
||||
thermalManager.update_pid();
|
||||
thermalManager.updatePID();
|
||||
#endif
|
||||
|
||||
#if DISABLED(NO_VOLUMETRICS)
|
||||
|
||||
@@ -743,7 +743,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1125,7 +1124,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -762,7 +762,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1180,7 +1179,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -141,8 +141,8 @@
|
||||
// :[1, 2, 3, 4, 5]
|
||||
#define EXTRUDERS 1
|
||||
|
||||
// The Anet A6 original extruder is designed for 1.75mm
|
||||
#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75
|
||||
// Generally expected filament diameter (1.75, 2.85, 3.0, ...). Used for Volumetric, Filament Width Sensor, etc.
|
||||
#define DEFAULT_NOMINAL_FILAMENT_DIA 3.0
|
||||
|
||||
// For Cyclops or any "multi-extruder" that shares a single nozzle.
|
||||
//#define SINGLENOZZLE
|
||||
@@ -771,7 +771,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1244,7 +1243,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -413,9 +413,9 @@
|
||||
* heater. If your configuration is significantly different than this and you don't understand
|
||||
* the issues involved, don't use bed PID until someone else verifies that your hardware works.
|
||||
*/
|
||||
#define PIDTEMPBED
|
||||
//#define PIDTEMPBED
|
||||
|
||||
//#define BED_LIMIT_SWITCHING
|
||||
#define BED_LIMIT_SWITCHING
|
||||
|
||||
/**
|
||||
* Max Bed Power
|
||||
@@ -431,9 +431,9 @@
|
||||
|
||||
//120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
|
||||
//from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10)
|
||||
//#define DEFAULT_bedKp 10.00
|
||||
//#define DEFAULT_bedKi .023
|
||||
//#define DEFAULT_bedKd 305.4
|
||||
#define DEFAULT_bedKp 10.00
|
||||
#define DEFAULT_bedKi .023
|
||||
#define DEFAULT_bedKd 305.4
|
||||
|
||||
//120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
|
||||
//from pidautotune
|
||||
@@ -441,12 +441,6 @@
|
||||
//#define DEFAULT_bedKi 1.41
|
||||
//#define DEFAULT_bedKd 1675.16
|
||||
|
||||
// ANET A8
|
||||
// original Bed + 0.3mm Heat conducting into 4mm borosilicate (PID-Autotune: M303 E-1 S60 C5):
|
||||
#define DEFAULT_bedKp 295.00
|
||||
#define DEFAULT_bedKi 35.65
|
||||
#define DEFAULT_bedKd 610.21
|
||||
|
||||
// FIND YOUR OWN: "M303 E-1 C8 S90" to run autotune on the bed at 90 degreesC for 8 cycles.
|
||||
#endif // PIDTEMPBED
|
||||
|
||||
@@ -736,7 +730,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1118,7 +1111,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -711,7 +711,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1093,7 +1092,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -724,7 +724,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1103,7 +1102,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -711,7 +711,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1093,7 +1092,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -722,7 +722,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1104,7 +1103,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -733,7 +733,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1115,7 +1114,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
@@ -1154,7 +1152,7 @@
|
||||
#endif
|
||||
|
||||
// Homing speeds (mm/m)
|
||||
#define HOMING_FEEDRATE_XY (20*60)
|
||||
#define HOMING_FEEDRATE_XY (50*60)
|
||||
#define HOMING_FEEDRATE_Z (4*60)
|
||||
|
||||
// @section calibrate
|
||||
|
||||
Regular → Executable
Regular → Executable
@@ -727,7 +727,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1110,7 +1109,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
@@ -1149,7 +1147,7 @@
|
||||
#endif
|
||||
|
||||
// Homing speeds (mm/m)
|
||||
#define HOMING_FEEDRATE_XY (20*60)
|
||||
#define HOMING_FEEDRATE_XY (50*60)
|
||||
#define HOMING_FEEDRATE_Z (4*60)
|
||||
|
||||
// @section calibrate
|
||||
|
||||
@@ -620,7 +620,7 @@
|
||||
* Override with M92
|
||||
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
|
||||
*/
|
||||
#define DEFAULT_AXIS_STEPS_PER_UNIT { 79.60, 80, 400, 95 }
|
||||
#define DEFAULT_AXIS_STEPS_PER_UNIT { 79.60, 80, 400, 229.4 }
|
||||
|
||||
/**
|
||||
* Default Max Feed Rate (mm/s)
|
||||
@@ -742,7 +742,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1124,7 +1123,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
@@ -1163,7 +1161,7 @@
|
||||
#endif
|
||||
|
||||
// Homing speeds (mm/m)
|
||||
#define HOMING_FEEDRATE_XY (20*60)
|
||||
#define HOMING_FEEDRATE_XY (50*60)
|
||||
#define HOMING_FEEDRATE_Z (4*60)
|
||||
|
||||
// @section calibrate
|
||||
|
||||
@@ -733,7 +733,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1115,7 +1114,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
@@ -1154,7 +1152,7 @@
|
||||
#endif
|
||||
|
||||
// Homing speeds (mm/m)
|
||||
#define HOMING_FEEDRATE_XY (20*60)
|
||||
#define HOMING_FEEDRATE_XY (50*60)
|
||||
#define HOMING_FEEDRATE_Z (4*60)
|
||||
|
||||
// @section calibrate
|
||||
|
||||
@@ -727,7 +727,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1109,7 +1108,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
@@ -1148,7 +1146,7 @@
|
||||
#endif
|
||||
|
||||
// Homing speeds (mm/m)
|
||||
#define HOMING_FEEDRATE_XY (20*60)
|
||||
#define HOMING_FEEDRATE_XY (50*60)
|
||||
#define HOMING_FEEDRATE_Z (4*60)
|
||||
|
||||
// @section calibrate
|
||||
|
||||
@@ -727,7 +727,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -877,8 +876,8 @@
|
||||
// @section machine
|
||||
|
||||
// The size of the print bed
|
||||
#define X_BED_SIZE 235
|
||||
#define Y_BED_SIZE 235
|
||||
#define X_BED_SIZE 220
|
||||
#define Y_BED_SIZE 220
|
||||
|
||||
// Travel limits (mm) after homing, corresponding to endstop positions.
|
||||
#define X_MIN_POS 0
|
||||
@@ -1109,7 +1108,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -733,7 +733,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1115,7 +1114,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
@@ -1154,7 +1152,7 @@
|
||||
#endif
|
||||
|
||||
// Homing speeds (mm/m)
|
||||
#define HOMING_FEEDRATE_XY (20*60)
|
||||
#define HOMING_FEEDRATE_XY (50*60)
|
||||
#define HOMING_FEEDRATE_Z (4*60)
|
||||
|
||||
// @section calibrate
|
||||
|
||||
@@ -705,7 +705,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1087,7 +1086,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -705,7 +705,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1087,7 +1086,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -729,7 +729,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1111,7 +1110,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -738,7 +738,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1120,7 +1119,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -739,7 +739,6 @@
|
||||
#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1121,7 +1120,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -738,7 +738,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1120,7 +1119,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -727,7 +727,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1109,7 +1108,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -735,7 +735,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1116,7 +1115,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -743,7 +743,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1133,7 +1132,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -727,7 +727,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1109,7 +1108,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -727,7 +727,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1109,7 +1108,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -763,7 +763,6 @@ Black rubber belt(MXL), 18 - tooth aluminium pulley : 87.489 step per mm (Huxley
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1154,7 +1153,6 @@ Black rubber belt(MXL), 18 - tooth aluminium pulley : 87.489 step per mm (Huxley
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -721,7 +721,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1103,7 +1102,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -736,7 +736,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1118,7 +1117,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -754,7 +754,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1136,7 +1135,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -774,7 +774,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1164,7 +1163,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1109,7 +1108,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -734,7 +734,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1116,7 +1115,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -752,7 +752,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1135,7 +1134,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -733,7 +733,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1115,7 +1114,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -723,7 +723,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1105,7 +1104,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -862,7 +862,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1303,7 +1302,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -26,10 +26,10 @@ The Kossel comes in 3 versions:
|
||||
* Pulley
|
||||
* Linear
|
||||
* Linear Plus
|
||||
|
||||
|
||||
Pulley and Linear use the same configuration, the Linear Plus is bigger and uses slightly different configurations.
|
||||
|
||||
Typically the probes for the Anycubic Delta Kossel printers come in two different versions.
|
||||
|
||||
Typically the probes for the Anycubic Delta Kossel printers come in two different versions.
|
||||
|
||||
* Version 1: Z Probe Offset of -19.0mm
|
||||
|
||||
|
||||
@@ -808,7 +808,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1241,7 +1240,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -808,7 +808,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1240,7 +1239,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -808,7 +808,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1240,7 +1239,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -813,7 +813,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1243,7 +1242,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -798,7 +798,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1228,7 +1227,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -798,7 +798,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1230,7 +1229,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -791,7 +791,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1231,7 +1230,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -801,7 +801,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1231,7 +1230,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -736,7 +736,6 @@
|
||||
#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
#define BLTOUCH_DELAY 500 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1119,7 +1118,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -861,7 +861,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1276,7 +1275,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -726,7 +726,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1108,7 +1107,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -718,7 +718,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1100,7 +1099,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
@@ -728,7 +728,6 @@
|
||||
//#define BLTOUCH
|
||||
#if ENABLED(BLTOUCH)
|
||||
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
|
||||
//#define BLTOUCH_V3
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1110,7 +1109,6 @@
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 30 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0 // (mm) Move nozzle up before moving between corners
|
||||
//#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
|
||||
+37
-58
@@ -41,16 +41,11 @@
|
||||
#define MSG_SD_INSERTED _UxGT("Karta vlozena")
|
||||
#define MSG_SD_REMOVED _UxGT("Karta vyjmuta")
|
||||
#define MSG_LCD_ENDSTOPS _UxGT("Endstopy") // max 8 znaku
|
||||
#define MSG_LCD_SOFT_ENDSTOPS _UxGT("Soft Endstopy")
|
||||
#define MSG_MAIN _UxGT("Hlavni nabidka")
|
||||
#define MSG_AUTOSTART _UxGT("Autostart")
|
||||
#define MSG_DISABLE_STEPPERS _UxGT("Uvolnit motory")
|
||||
#define MSG_DEBUG_MENU _UxGT("Nabidka ladeni")
|
||||
#if LCD_WIDTH >= 20
|
||||
#define MSG_PROGRESS_BAR_TEST _UxGT("Test ukaz. prubehu")
|
||||
#else
|
||||
#define MSG_PROGRESS_BAR_TEST _UxGT("Test uk. prubehu")
|
||||
#endif
|
||||
#define MSG_PROGRESS_BAR_TEST _UxGT("Test uk.prubehu")
|
||||
#define MSG_AUTO_HOME _UxGT("Domovska pozice")
|
||||
#define MSG_AUTO_HOME_X _UxGT("Domu osa X")
|
||||
#define MSG_AUTO_HOME_Y _UxGT("Domu osa Y")
|
||||
@@ -96,7 +91,7 @@
|
||||
#define MSG_UBL_BC_INSERT _UxGT("Vlozte kartu, zmerte")
|
||||
#define MSG_UBL_BC_INSERT2 _UxGT("Zmerte")
|
||||
#define MSG_UBL_BC_REMOVE _UxGT("Odstrante a zmerte")
|
||||
#define MSG_UBL_MOVING_TO_NEXT _UxGT("Presun na dalsi")
|
||||
#define MSG_UBL_MOVING_TO_NEXT _UxGT("Presoun na dalsi")
|
||||
#define MSG_UBL_ACTIVATE_MESH _UxGT("Aktivovat UBL")
|
||||
#define MSG_UBL_DEACTIVATE_MESH _UxGT("Deaktivovat UBL")
|
||||
#define MSG_UBL_SET_BED_TEMP _UxGT("Teplota podlozky")
|
||||
@@ -130,7 +125,7 @@
|
||||
#define MSG_UBL_OUTPUT_MAP_CSV _UxGT("Exportovat do CSV")
|
||||
#define MSG_UBL_OUTPUT_MAP_BACKUP _UxGT("Zaloha do PC")
|
||||
#define MSG_UBL_INFO_UBL _UxGT("Info o UBL do PC")
|
||||
#define MSG_UBL_EDIT_MESH_MENU _UxGT("Upravit sit bodu")
|
||||
#define MSG_UBL_EDIT_MESH_MENU _UxGT("Upravit sit dobu")
|
||||
#define MSG_UBL_FILLIN_AMOUNT _UxGT("Hustota mrizky")
|
||||
#define MSG_UBL_MANUAL_FILLIN _UxGT("Rucni hustota")
|
||||
#define MSG_UBL_SMART_FILLIN _UxGT("Chytra hustota")
|
||||
@@ -144,14 +139,14 @@
|
||||
#define MSG_UBL_LOAD_MESH _UxGT("Nacist sit bodu")
|
||||
#define MSG_UBL_SAVE_MESH _UxGT("Ulozit sit bodu")
|
||||
#define MSG_MESH_LOADED _UxGT("Sit %i nactena")
|
||||
#define MSG_MESH_SAVED _UxGT("Sit %i ulozena")
|
||||
#define MSG_NO_STORAGE _UxGT("Nedostatek mista")
|
||||
#define MSG_UBL_SAVE_ERROR _UxGT("Ch.: Ulozit UBL")
|
||||
#define MSG_UBL_RESTORE_ERROR _UxGT("Ch.: Obnovit UBL")
|
||||
#define MSG_MESH_SAVED _UxGT("Sit %i ulozena")
|
||||
#define MSG_UBL_SAVE_ERROR _UxGT("Err: Ulozit UBL")
|
||||
#define MSG_UBL_RESTORE_ERROR _UxGT("Err: Obnovit UBL")
|
||||
#define MSG_UBL_Z_OFFSET_STOPPED _UxGT("Konec Z-Offsetu")
|
||||
#define MSG_UBL_STEP_BY_STEP_MENU _UxGT("UBL Postupne")
|
||||
|
||||
#define MSG_LED_CONTROL _UxGT("Nastaveni LED")
|
||||
#define MSG_LED_CONTROL _UxGT("LED Nastaveni")
|
||||
#define MSG_LEDS _UxGT("Svetla")
|
||||
#define MSG_LED_PRESETS _UxGT("Svetla Predvolby")
|
||||
#define MSG_SET_LEDS_RED _UxGT("Cervena")
|
||||
@@ -211,7 +206,6 @@
|
||||
#define MSG_VC_JERK _UxGT("Vz-jerk")
|
||||
#endif
|
||||
#define MSG_VE_JERK _UxGT("Ve-jerk")
|
||||
#define MSG_JUNCTION_DEVIATION _UxGT("Odchylka spoje")
|
||||
#define MSG_VELOCITY _UxGT("Rychlost")
|
||||
#define MSG_VMAX _UxGT("Vmax ")
|
||||
#define MSG_VMIN _UxGT("Vmin")
|
||||
@@ -256,13 +250,11 @@
|
||||
#define MSG_PAUSE_PRINT _UxGT("Pozastavit tisk")
|
||||
#define MSG_RESUME_PRINT _UxGT("Obnovit tisk")
|
||||
#define MSG_STOP_PRINT _UxGT("Zastavit tisk")
|
||||
#define MSG_POWER_LOSS_RECOVERY _UxGT("Obnova vypadku")
|
||||
#define MSG_CARD_MENU _UxGT("Tisknout z SD")
|
||||
#define MSG_NO_CARD _UxGT("Zadna SD karta")
|
||||
#define MSG_DWELL _UxGT("Uspano...")
|
||||
#define MSG_USERWAIT _UxGT("Cekani na uziv...")
|
||||
#define MSG_PRINT_PAUSED _UxGT("Tisk pozastaven")
|
||||
#define MSG_PRINTING _UxGT("Tisknu...")
|
||||
#define MSG_PRINT_ABORTED _UxGT("Tisk zrusen")
|
||||
#define MSG_NO_MOVE _UxGT("Zadny pohyb.")
|
||||
#define MSG_KILLED _UxGT("PRERUSENO. ")
|
||||
@@ -298,10 +290,8 @@
|
||||
#define MSG_BABYSTEP_Z _UxGT("Babystep Z")
|
||||
#define MSG_ENDSTOP_ABORT _UxGT("Endstop abort")
|
||||
#define MSG_HEATING_FAILED_LCD _UxGT("Chyba zahrivani")
|
||||
#define MSG_HEATING_FAILED_LCD_BED _UxGT("Chyba zahr.podl.")
|
||||
#define MSG_ERR_REDUNDANT_TEMP _UxGT("REDUND. TEPLOTA")
|
||||
#define MSG_THERMAL_RUNAWAY _UxGT("TEPLOTNI UNIK")
|
||||
#define MSG_THERMAL_RUNAWAY_BED _UxGT("TEPL. UNIK PODL.")
|
||||
#define MSG_THERMAL_RUNAWAY _UxGT("TEPLOTNI SKOK")
|
||||
#define MSG_ERR_MAXTEMP _UxGT("VYSOKA TEPLOTA")
|
||||
#define MSG_ERR_MINTEMP _UxGT("NIZKA TEPLOTA")
|
||||
#define MSG_ERR_MAXTEMP_BED _UxGT("VYS. TEPL. PODL.")
|
||||
@@ -313,17 +303,7 @@
|
||||
#define MSG_SHORT_HOUR _UxGT("h")
|
||||
#define MSG_SHORT_MINUTE _UxGT("m")
|
||||
#define MSG_HEATING _UxGT("Zahrivani...")
|
||||
#define MSG_COOLING _UxGT("Chlazeni...")
|
||||
#if LCD_WIDTH >= 20
|
||||
#define MSG_BED_HEATING _UxGT("Zahrivani podlozky")
|
||||
#else
|
||||
#define MSG_BED_HEATING _UxGT("Zahrivani podl.")
|
||||
#endif
|
||||
#if LCD_WIDTH >= 20
|
||||
#define MSG_BED_COOLING _UxGT("Chlazeni podlozky")
|
||||
#else
|
||||
#define MSG_BED_COOLING _UxGT("Chlazeni podl.")
|
||||
#endif
|
||||
#define MSG_BED_HEATING _UxGT("Zahrivani podl...")
|
||||
#define MSG_DELTA_CALIBRATE _UxGT("Delta Kalibrace")
|
||||
#define MSG_DELTA_CALIBRATE_X _UxGT("Kalibrovat X")
|
||||
#define MSG_DELTA_CALIBRATE_Y _UxGT("Kalibrovat Y")
|
||||
@@ -332,7 +312,6 @@
|
||||
#define MSG_DELTA_SETTINGS _UxGT("Delta nastaveni")
|
||||
#define MSG_DELTA_AUTO_CALIBRATE _UxGT("Autokalibrace")
|
||||
#define MSG_DELTA_HEIGHT_CALIBRATE _UxGT("Nast.vysku delty")
|
||||
#define MSG_DELTA_Z_OFFSET_CALIBRATE _UxGT("Nast. Z-ofset")
|
||||
#define MSG_DELTA_DIAG_ROD _UxGT("Diag rameno")
|
||||
#define MSG_DELTA_HEIGHT _UxGT("Vyska")
|
||||
#define MSG_DELTA_RADIUS _UxGT("Polomer")
|
||||
@@ -385,36 +364,36 @@
|
||||
|
||||
#if LCD_HEIGHT >= 4
|
||||
// Up to 3 lines allowed
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Cekejte prosim")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_2 _UxGT("na zahajeni")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_3 _UxGT("vymeny filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Cekejte prosim")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_2 _UxGT("na vysunuti")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_3 _UxGT("filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Vlozte filament")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_2 _UxGT("a stisknete")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_3 _UxGT("tlacitko...")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_1 _UxGT("Kliknete pro")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_2 _UxGT("nahrati trysky")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Cekejte prosim")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_2 _UxGT("na nahrati tr.")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Cekejte prosim")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_2 _UxGT("na zavedeni")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_3 _UxGT("filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Vyckejte na")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_2 _UxGT("vytlaceni")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Cekejte prosim")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_2 _UxGT("na pokracovani")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_3 _UxGT("tisku")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Cekejte prosim")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_2 _UxGT("na zahajeni")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_3 _UxGT("vymeny filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Cekejte prosim")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_2 _UxGT("na vysunuti")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_3 _UxGT("filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Vlozte filament")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_2 _UxGT("a stisknete")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_3 _UxGT("tlacitko...")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_1 _UxGT("Kliknete pro")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_2 _UxGT("nahrati trysky")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Cekejte prosim")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_2 _UxGT("na nahrati tr.")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Cekejte prosim")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_2 _UxGT("na zavedeni")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_3 _UxGT("filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Vyckejte na")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_2 _UxGT("vytlaceni")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Cekejte prosim")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_2 _UxGT("na pokracovani")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_3 _UxGT("tisku")
|
||||
#else // LCD_HEIGHT < 4
|
||||
// Up to 2 lines allowed
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Cekejte...")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Vysouvani...")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Vlozte, kliknete")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Nahrivani...")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Zavadeni...")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Vytlacovani...")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Pokracovani...")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Cekejte...")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Vysouvani...")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Vlozte, kliknete")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Nahrivani...")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Zavadeni...")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Vytlacovani...")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Pokracovani...")
|
||||
#endif // LCD_HEIGHT < 4
|
||||
|
||||
#endif // LANGUAGE_CZ_H
|
||||
|
||||
+44
-57
@@ -49,11 +49,7 @@
|
||||
#define MSG_AUTOSTART _UxGT("Autostart")
|
||||
#define MSG_DISABLE_STEPPERS _UxGT("Uvolnit motory")
|
||||
#define MSG_DEBUG_MENU _UxGT("Nabídka ladění")
|
||||
#if LCD_WIDTH >= 20
|
||||
#define MSG_PROGRESS_BAR_TEST _UxGT("Test ukaz. průběhu")
|
||||
#else
|
||||
#define MSG_PROGRESS_BAR_TEST _UxGT("Test uk. průběhu")
|
||||
#endif
|
||||
#define MSG_PROGRESS_BAR_TEST _UxGT("Test uk. průběhu")
|
||||
#define MSG_AUTO_HOME _UxGT("Domovská pozice")
|
||||
#define MSG_AUTO_HOME_X _UxGT("Domů osa X")
|
||||
#define MSG_AUTO_HOME_Y _UxGT("Domů osa Y")
|
||||
@@ -112,8 +108,8 @@
|
||||
#define MSG_UBL_DONE_EDITING_MESH _UxGT("Konec úprav sítě")
|
||||
#define MSG_UBL_BUILD_CUSTOM_MESH _UxGT("Vlastní síť")
|
||||
#define MSG_UBL_BUILD_MESH_MENU _UxGT("Vytvořit síť")
|
||||
#define MSG_UBL_BUILD_PLA_MESH _UxGT("Síť bodů PLA")
|
||||
#define MSG_UBL_BUILD_ABS_MESH _UxGT("Síť bodů ABS")
|
||||
#define MSG_UBL_BUILD_PLA_MESH _UxGT("Síť bodu PLA")
|
||||
#define MSG_UBL_BUILD_ABS_MESH _UxGT("Síť bodu ABS")
|
||||
#define MSG_UBL_BUILD_COLD_MESH _UxGT("Studená síť bodů")
|
||||
#define MSG_UBL_MESH_HEIGHT_ADJUST _UxGT("Upravit výšku sítě")
|
||||
#define MSG_UBL_MESH_HEIGHT_AMOUNT _UxGT("Výška")
|
||||
@@ -123,8 +119,8 @@
|
||||
#define MSG_UBL_VALIDATE_CUSTOM_MESH _UxGT("Kontrola vlast. sítě")
|
||||
#define MSG_UBL_CONTINUE_MESH _UxGT("Pokračovat v síťi")
|
||||
#define MSG_UBL_MESH_LEVELING _UxGT("Síťové rovnání")
|
||||
#define MSG_UBL_3POINT_MESH_LEVELING _UxGT("3-bodové rovnání")
|
||||
#define MSG_UBL_GRID_MESH_LEVELING _UxGT("Mřížkové rovnání")
|
||||
#define MSG_UBL_3POINT_MESH_LEVELING _UxGT("3-bodove rovnání")
|
||||
#define MSG_UBL_GRID_MESH_LEVELING _UxGT("Mrizkove rovnání")
|
||||
#define MSG_UBL_MESH_LEVEL _UxGT("Srovnat podložku")
|
||||
#define MSG_UBL_SIDE_POINTS _UxGT("Postranní body")
|
||||
#define MSG_UBL_MAP_TYPE _UxGT("Typ sítě bodu")
|
||||
@@ -149,12 +145,12 @@
|
||||
#define MSG_MESH_LOADED _UxGT("Síť %i načtena")
|
||||
#define MSG_MESH_SAVED _UxGT("Síť %i uložena")
|
||||
#define MSG_NO_STORAGE _UxGT("Nedostatek místa")
|
||||
#define MSG_UBL_SAVE_ERROR _UxGT("Ch.: Uložit UBL")
|
||||
#define MSG_UBL_RESTORE_ERROR _UxGT("Ch.: Obnovit UBL")
|
||||
#define MSG_UBL_SAVE_ERROR _UxGT("Err: Uložit UBL")
|
||||
#define MSG_UBL_RESTORE_ERROR _UxGT("Err: Obnovit UBL")
|
||||
#define MSG_UBL_Z_OFFSET_STOPPED _UxGT("Konec Z-Offsetu")
|
||||
#define MSG_UBL_STEP_BY_STEP_MENU _UxGT("UBL Postupně")
|
||||
|
||||
#define MSG_LED_CONTROL _UxGT("Nastavení LED")
|
||||
#define MSG_LED_CONTROL _UxGT("LED Nastavení")
|
||||
#define MSG_LEDS _UxGT("Světla")
|
||||
#define MSG_LED_PRESETS _UxGT("Světla Předvolby")
|
||||
#define MSG_SET_LEDS_RED _UxGT("Červená")
|
||||
@@ -174,7 +170,7 @@
|
||||
#define MSG_LED_BRIGHTNESS _UxGT("Jas")
|
||||
|
||||
#define MSG_USER_MENU _UxGT("Vlastní příkazy")
|
||||
#define MSG_MOVING _UxGT("Posouvání...")
|
||||
#define MSG_MOVING _UxGT("Posouvani...")
|
||||
#define MSG_FREE_XY _UxGT("Uvolnit XY")
|
||||
#define MSG_MOVE_X _UxGT("Posunout X")
|
||||
#define MSG_MOVE_Y _UxGT("Posunout Y")
|
||||
@@ -214,7 +210,6 @@
|
||||
#define MSG_VC_JERK _UxGT("Vz-jerk")
|
||||
#endif
|
||||
#define MSG_VE_JERK _UxGT("Ve-jerk")
|
||||
#define MSG_JUNCTION_DEVIATION _UxGT("Odchylka spoje")
|
||||
#define MSG_VELOCITY _UxGT("Rychlost")
|
||||
#define MSG_VMAX _UxGT("Vmax ")
|
||||
#define MSG_VMIN _UxGT("Vmin")
|
||||
@@ -259,7 +254,7 @@
|
||||
#define MSG_PAUSE_PRINT _UxGT("Pozastavit tisk")
|
||||
#define MSG_RESUME_PRINT _UxGT("Obnovit tisk")
|
||||
#define MSG_STOP_PRINT _UxGT("Zastavit tisk")
|
||||
#define MSG_POWER_LOSS_RECOVERY _UxGT("Obnova výpadku")
|
||||
#define MSG_POWER_LOSS_RECOVERY _UxGT("Obnova vypadku")
|
||||
#define MSG_CARD_MENU _UxGT("Tisknout z SD")
|
||||
#define MSG_NO_CARD _UxGT("Žádná SD karta")
|
||||
#define MSG_DWELL _UxGT("Uspáno...")
|
||||
@@ -301,10 +296,10 @@
|
||||
#define MSG_BABYSTEP_Z _UxGT("Babystep Z")
|
||||
#define MSG_ENDSTOP_ABORT _UxGT("Endstop abort")
|
||||
#define MSG_HEATING_FAILED_LCD _UxGT("Chyba zahřívání")
|
||||
#define MSG_HEATING_FAILED_LCD_BED _UxGT("Chyba zahř.podl.")
|
||||
#define MSG_HEATING_FAILED_LCD_BED _UxGT("Chyba zahř. podl.")
|
||||
#define MSG_ERR_REDUNDANT_TEMP _UxGT("REDUND. TEPLOTA")
|
||||
#define MSG_THERMAL_RUNAWAY _UxGT("TEPLOTNÍ ÚNIK")
|
||||
#define MSG_THERMAL_RUNAWAY_BED _UxGT("TEPL. ÚNIK PODL.")
|
||||
#define MSG_THERMAL_RUNAWAY _UxGT("TEPLOTNÍ SKOK")
|
||||
#define MSG_THERMAL_RUNAWAY_BED _UxGT("PODL. TEPL. SKOK")
|
||||
#define MSG_ERR_MAXTEMP _UxGT("VYSOKÁ TEPLOTA")
|
||||
#define MSG_ERR_MINTEMP _UxGT("NÍZKA TEPLOTA")
|
||||
#define MSG_ERR_MAXTEMP_BED _UxGT("VYS. TEPL. PODL.")
|
||||
@@ -316,17 +311,9 @@
|
||||
#define MSG_SHORT_HOUR _UxGT("h")
|
||||
#define MSG_SHORT_MINUTE _UxGT("m")
|
||||
#define MSG_HEATING _UxGT("Zahřívání...")
|
||||
#define MSG_COOLING _UxGT("Chlazení...")
|
||||
#if LCD_WIDTH >= 20
|
||||
#define MSG_BED_HEATING _UxGT("Zahřívání podložky")
|
||||
#else
|
||||
#define MSG_BED_HEATING _UxGT("Zahřívání podl.")
|
||||
#endif
|
||||
#if LCD_WIDTH >= 20
|
||||
#define MSG_BED_COOLING _UxGT("Chlazení podložky")
|
||||
#else
|
||||
#define MSG_BED_COOLING _UxGT("Chlazení podl.")
|
||||
#endif
|
||||
#define MSG_COOLING _UxGT("Chlazení")
|
||||
#define MSG_BED_HEATING _UxGT("Zahřívání podl...")
|
||||
#define MSG_BED_COOLING _UxGT("Chlazení podl...")
|
||||
#define MSG_DELTA_CALIBRATE _UxGT("Delta Kalibrace")
|
||||
#define MSG_DELTA_CALIBRATE_X _UxGT("Kalibrovat X")
|
||||
#define MSG_DELTA_CALIBRATE_Y _UxGT("Kalibrovat Y")
|
||||
@@ -388,36 +375,36 @@
|
||||
|
||||
#if LCD_HEIGHT >= 4
|
||||
// Up to 3 lines allowed
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Čekejte prosím")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_2 _UxGT("na zahájení")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_3 _UxGT("výměny filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Čekejte prosím")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_2 _UxGT("na vysunuti")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_3 _UxGT("filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Vložte filament")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_2 _UxGT("a stiskněte")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_3 _UxGT("tlačítko...")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_1 _UxGT("Klikněte pro")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_2 _UxGT("nahřátí trysky")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Čekejte prosím")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_2 _UxGT("na nahřátí tr.")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Čekejte prosím")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_2 _UxGT("na zavedení")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_3 _UxGT("filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Vyčkejte na")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_2 _UxGT("vytlačení")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Čekejte prosím")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_2 _UxGT("na pokračování")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_3 _UxGT("tisku")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Čekejte prosím")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_2 _UxGT("na zahájení")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_3 _UxGT("výměny filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Čekejte prosím")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_2 _UxGT("na vysunuti")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_3 _UxGT("filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Vložte filament")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_2 _UxGT("a stiskněte")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_3 _UxGT("tlačítko...")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_1 _UxGT("Klikněte pro")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_2 _UxGT("nahřátí trysky")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Čekejte prosím")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_2 _UxGT("na nahřátí tr.")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Čekejte prosím")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_2 _UxGT("na zavedení")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_3 _UxGT("filamentu")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Vyčkejte na")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_2 _UxGT("vytlačení")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Čekejte prosím")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_2 _UxGT("na pokračování")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_3 _UxGT("tisku")
|
||||
#else // LCD_HEIGHT < 4
|
||||
// Up to 2 lines allowed
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Čekejte...")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Vysouvání...")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Vložte, klikněte")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Nahřívání...")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Zavádění...")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Vytlačování...")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Pokračování...")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Čekejte...")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Vysouvání...")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Vložte, klikněte")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Nahřívání...")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Zavádění...")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Vytlačování...")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Pokračování...")
|
||||
#endif // LCD_HEIGHT < 4
|
||||
|
||||
#endif // LANGUAGE_CZ_UTF_H
|
||||
|
||||
+176
-188
@@ -41,34 +41,33 @@
|
||||
#define MSG_SD_INSERTED _UxGT("SD-Karte erkannt")
|
||||
#define MSG_SD_REMOVED _UxGT("SD-Karte entfernt")
|
||||
#define MSG_LCD_ENDSTOPS _UxGT("Endstopp") // Max length 8 characters
|
||||
#define MSG_LCD_SOFT_ENDSTOPS _UxGT("Soft-Endstopp")
|
||||
#define MSG_MAIN _UxGT("Hauptmenü")
|
||||
#define MSG_AUTOSTART _UxGT("Autostart")
|
||||
#define MSG_DISABLE_STEPPERS _UxGT("Motoren deaktivieren") // M84
|
||||
#define MSG_DEBUG_MENU _UxGT("Debug-Menü")
|
||||
#define MSG_PROGRESS_BAR_TEST _UxGT("Statusbalken-Test")
|
||||
#define MSG_AUTO_HOME _UxGT("Home XYZ") // G28
|
||||
#define MSG_DEBUG_MENU _UxGT("Debug Menü")
|
||||
#define MSG_PROGRESS_BAR_TEST _UxGT("Fortschrittsb. Test")
|
||||
#define MSG_AUTO_HOME _UxGT("Home") // G28
|
||||
#define MSG_AUTO_HOME_X _UxGT("Home X")
|
||||
#define MSG_AUTO_HOME_Y _UxGT("Home Y")
|
||||
#define MSG_AUTO_HOME_Z _UxGT("Home Z")
|
||||
#define MSG_TMC_Z_CALIBRATION _UxGT("Kalibriere Z")
|
||||
#define MSG_LEVEL_BED_HOMING _UxGT("Home XYZ")
|
||||
#define MSG_LEVEL_BED_WAITING _UxGT("Klick zum Starten")
|
||||
#define MSG_LEVEL_BED_WAITING _UxGT("Klick für Start")
|
||||
#define MSG_LEVEL_BED_NEXT_POINT _UxGT("Nächste Koordinate")
|
||||
#define MSG_LEVEL_BED_DONE _UxGT("Nivellieren fertig!")
|
||||
#define MSG_LEVEL_BED_DONE _UxGT("Fertig")
|
||||
#define MSG_Z_FADE_HEIGHT _UxGT("Ausblendhöhe")
|
||||
#define MSG_SET_HOME_OFFSETS _UxGT("Setze Homeversatz")
|
||||
#define MSG_HOME_OFFSETS_APPLIED _UxGT("Homeversatz aktiv")
|
||||
#define MSG_SET_ORIGIN _UxGT("Setze Nullpunkte") //"G92 X0 Y0 Z0" commented out in ultralcd.cpp
|
||||
#define MSG_SET_ORIGIN _UxGT("Setze Nullpunkt") //"G92 X0 Y0 Z0" commented out in ultralcd.cpp
|
||||
#define MSG_PREHEAT_1 _UxGT("Vorwärmen PLA")
|
||||
#define MSG_PREHEAT_1_N _UxGT("Vorwärmen PLA ")
|
||||
#define MSG_PREHEAT_1_ALL _UxGT("Vorw. PLA Alles")
|
||||
#define MSG_PREHEAT_1_ALL _UxGT("Vorw. PLA Alle")
|
||||
#define MSG_PREHEAT_1_END _UxGT("Vorw. PLA Extr.")
|
||||
#define MSG_PREHEAT_1_BEDONLY _UxGT("Vorw. PLA Bett")
|
||||
#define MSG_PREHEAT_1_SETTINGS _UxGT("Vorw. PLA Einst.")
|
||||
#define MSG_PREHEAT_2 _UxGT("Vorwärmen ABS")
|
||||
#define MSG_PREHEAT_2_N _UxGT("Vorwärmen ABS ")
|
||||
#define MSG_PREHEAT_2_ALL _UxGT("Vorw. ABS Alles")
|
||||
#define MSG_PREHEAT_2_ALL _UxGT("Vorw. ABS Alle")
|
||||
#define MSG_PREHEAT_2_END _UxGT("Vorw. ABS Extr.")
|
||||
#define MSG_PREHEAT_2_BEDONLY _UxGT("Vorw. ABS Bett")
|
||||
#define MSG_PREHEAT_2_SETTINGS _UxGT("Vorw. ABS Einst.")
|
||||
@@ -76,102 +75,20 @@
|
||||
#define MSG_SWITCH_PS_ON _UxGT("Netzteil ein")
|
||||
#define MSG_SWITCH_PS_OFF _UxGT("Netzteil aus")
|
||||
#define MSG_EXTRUDE _UxGT("Extrudieren")
|
||||
#define MSG_RETRACT _UxGT("Rückzug")
|
||||
#define MSG_MOVE_AXIS _UxGT("Achse Bewegen")
|
||||
#define MSG_BED_LEVELING _UxGT("Bett-Nivellierung")
|
||||
#define MSG_RETRACT _UxGT("Retract")
|
||||
#define MSG_MOVE_AXIS _UxGT("Bewegen")
|
||||
#define MSG_BED_LEVELING _UxGT("Bett Nivellierung")
|
||||
#define MSG_LEVEL_BED _UxGT("Bett nivellieren")
|
||||
#define MSG_LEVEL_CORNERS _UxGT("Ecken nivellieren")
|
||||
#define MSG_NEXT_CORNER _UxGT("Nächste Ecke")
|
||||
#define MSG_EDITING_STOPPED _UxGT("Netzbearb. angeh.")
|
||||
#define MSG_USER_MENU _UxGT("Benutzer-Menü")
|
||||
#define MSG_UBL_DOING_G29 _UxGT("G29 ausführen")
|
||||
#define MSG_UBL_UNHOMED _UxGT("Home XYZ zuerst")
|
||||
#define MSG_UBL_TOOLS _UxGT("UBL-Werkzeuge")
|
||||
#define MSG_UBL_LEVEL_BED _UxGT("Unified Bed Leveling")
|
||||
#define MSG_UBL_MANUAL_MESH _UxGT("Netz manuell erst.")
|
||||
#define MSG_UBL_BC_INSERT _UxGT("Unterlegen & messen")
|
||||
#define MSG_UBL_BC_INSERT2 _UxGT("Messen")
|
||||
#define MSG_UBL_BC_REMOVE _UxGT("Entfernen & messen")
|
||||
#define MSG_UBL_MOVING_TO_NEXT _UxGT("Nächster Punkt...")
|
||||
#define MSG_UBL_ACTIVATE_MESH _UxGT("UBL aktivieren")
|
||||
#define MSG_UBL_DEACTIVATE_MESH _UxGT("UBL deaktivieren")
|
||||
#define MSG_UBL_SET_BED_TEMP _UxGT("Betttemperatur")
|
||||
#define MSG_UBL_CUSTOM_BED_TEMP MSG_UBL_SET_BED_TEMP
|
||||
#define MSG_UBL_SET_HOTEND_TEMP _UxGT("Hotend-Temp.")
|
||||
#define MSG_UBL_CUSTOM_HOTEND_TEMP MSG_UBL_SET_HOTEND_TEMP
|
||||
#define MSG_UBL_MESH_EDIT _UxGT("Netz bearbeiten")
|
||||
#define MSG_UBL_EDIT_CUSTOM_MESH _UxGT("Eigenes Netz bearb.")
|
||||
#define MSG_UBL_FINE_TUNE_MESH _UxGT("Feineinstellung...")
|
||||
#define MSG_UBL_DONE_EDITING_MESH _UxGT("Bearbeitung beendet")
|
||||
#define MSG_UBL_BUILD_CUSTOM_MESH _UxGT("Eigenes Netz erst.")
|
||||
#define MSG_UBL_BUILD_MESH_MENU _UxGT("Netz erstellen")
|
||||
#define MSG_UBL_BUILD_PLA_MESH _UxGT("Netz erstellen PLA")
|
||||
#define MSG_UBL_BUILD_ABS_MESH _UxGT("Netz erstellen ABS")
|
||||
#define MSG_UBL_BUILD_COLD_MESH _UxGT("Netz erstellen kalt")
|
||||
#define MSG_UBL_MESH_HEIGHT_ADJUST _UxGT("Netzhöhe einst.")
|
||||
#define MSG_UBL_MESH_HEIGHT_AMOUNT _UxGT("Höhe")
|
||||
#define MSG_UBL_VALIDATE_MESH_MENU _UxGT("Netz validieren")
|
||||
#define MSG_UBL_VALIDATE_PLA_MESH _UxGT("Netz validieren PLA")
|
||||
#define MSG_UBL_VALIDATE_ABS_MESH _UxGT("Netz validieren ABS")
|
||||
#define MSG_UBL_VALIDATE_CUSTOM_MESH _UxGT("Eig. Netz validieren")
|
||||
#define MSG_UBL_CONTINUE_MESH _UxGT("Netzerst. forts.")
|
||||
#define MSG_UBL_MESH_LEVELING _UxGT("Netz-Nivellierung")
|
||||
#define MSG_UBL_3POINT_MESH_LEVELING _UxGT("3-Punkt-Nivell.")
|
||||
#define MSG_UBL_GRID_MESH_LEVELING _UxGT("Gitternetz-Nivell.")
|
||||
#define MSG_UBL_MESH_LEVEL _UxGT("Netz nivellieren")
|
||||
#define MSG_UBL_SIDE_POINTS _UxGT("Eckpunkte")
|
||||
#define MSG_UBL_MAP_TYPE _UxGT("Kartentyp")
|
||||
#define MSG_UBL_OUTPUT_MAP _UxGT("Karte ausgeben")
|
||||
#define MSG_UBL_OUTPUT_MAP_HOST _UxGT("Ausgabe für Host")
|
||||
#define MSG_UBL_OUTPUT_MAP_CSV _UxGT("Ausgabe für CSV")
|
||||
#define MSG_UBL_OUTPUT_MAP_BACKUP _UxGT("Externe Sicherung")
|
||||
#define MSG_UBL_INFO_UBL _UxGT("UBL-Info ausgeben")
|
||||
#define MSG_UBL_EDIT_MESH_MENU _UxGT("Netz bearbeiten")
|
||||
#define MSG_UBL_FILLIN_AMOUNT _UxGT("Menge an Füllung")
|
||||
#define MSG_UBL_MANUAL_FILLIN _UxGT("Manuelles Füllung")
|
||||
#define MSG_UBL_SMART_FILLIN _UxGT("Cleveres Füllen")
|
||||
#define MSG_UBL_FILLIN_MESH _UxGT("Netz Füllen")
|
||||
#define MSG_UBL_INVALIDATE_ALL _UxGT("Alles annullieren")
|
||||
#define MSG_UBL_INVALIDATE_CLOSEST _UxGT("Nächstlieg. ann.")
|
||||
#define MSG_UBL_FINE_TUNE_ALL _UxGT("Feineinst. Alles")
|
||||
#define MSG_UBL_FINE_TUNE_CLOSEST _UxGT("Feineinst. Nächstl.")
|
||||
#define MSG_UBL_STORAGE_MESH_MENU _UxGT("Netz-Speicherplatz")
|
||||
#define MSG_UBL_STORAGE_SLOT _UxGT("Speicherort")
|
||||
#define MSG_UBL_LOAD_MESH _UxGT("Bettnetz laden")
|
||||
#define MSG_UBL_SAVE_MESH _UxGT("Bettnetz speichern")
|
||||
#define MSG_MESH_LOADED _UxGT("Netz %i geladen")
|
||||
#define MSG_MESH_SAVED _UxGT("Netz %i gespeichert")
|
||||
#define MSG_NO_STORAGE _UxGT("Kein Speicher")
|
||||
#define MSG_UBL_SAVE_ERROR _UxGT("ERR:UBL speichern")
|
||||
#define MSG_UBL_RESTORE_ERROR _UxGT("ERR:UBL wiederherst.")
|
||||
#define MSG_UBL_Z_OFFSET_STOPPED _UxGT("Z-Versatz angehalten")
|
||||
#define MSG_UBL_STEP_BY_STEP_MENU _UxGT("Schrittweises UBL")
|
||||
|
||||
#define MSG_LED_CONTROL _UxGT("LED-Steuerung")
|
||||
#define MSG_LEDS _UxGT("Licht")
|
||||
#define MSG_LED_PRESETS _UxGT("Licht-Einstellungen")
|
||||
#define MSG_SET_LEDS_RED _UxGT("Rot")
|
||||
#define MSG_SET_LEDS_ORANGE _UxGT("Orange")
|
||||
#define MSG_SET_LEDS_YELLOW _UxGT("Gelb")
|
||||
#define MSG_SET_LEDS_GREEN _UxGT("Grün")
|
||||
#define MSG_SET_LEDS_BLUE _UxGT("Blau")
|
||||
#define MSG_SET_LEDS_INDIGO _UxGT("Indigo")
|
||||
#define MSG_SET_LEDS_VIOLET _UxGT("Violett")
|
||||
#define MSG_SET_LEDS_WHITE _UxGT("Weiß")
|
||||
#define MSG_SET_LEDS_DEFAULT _UxGT("Standard")
|
||||
#define MSG_CUSTOM_LEDS _UxGT("Benutzerdef.")
|
||||
#define MSG_INTENSITY_R _UxGT("Intensität Rot")
|
||||
#define MSG_INTENSITY_G _UxGT("Intensität Grün")
|
||||
#define MSG_INTENSITY_B _UxGT("Intensität Blau")
|
||||
#define MSG_INTENSITY_W _UxGT("Intensität Weiß")
|
||||
#define MSG_LED_BRIGHTNESS _UxGT("Helligkeit")
|
||||
|
||||
#define MSG_USER_MENU _UxGT("Benutzer Menü")
|
||||
#define MSG_MOVING _UxGT("In Bewegung...")
|
||||
#define MSG_FREE_XY _UxGT("Abstand XY")
|
||||
#define MSG_MOVE_X _UxGT("Bewege X")
|
||||
#define MSG_MOVE_Y _UxGT("Bewege Y")
|
||||
#define MSG_MOVE_Z _UxGT("Bewege Z")
|
||||
#define MSG_MOVE_E _UxGT("Bewege Extruder")
|
||||
#define MSG_MOVE_X _UxGT("X")
|
||||
#define MSG_MOVE_Y _UxGT("Y")
|
||||
#define MSG_MOVE_Z _UxGT("Z")
|
||||
#define MSG_MOVE_E _UxGT("Extruder ")
|
||||
#define MSG_MOVE_01MM _UxGT(" 0,1 mm")
|
||||
#define MSG_MOVE_1MM _UxGT(" 1,0 mm")
|
||||
#define MSG_MOVE_10MM _UxGT("10,0 mm")
|
||||
@@ -180,13 +97,13 @@
|
||||
#define MSG_NOZZLE _UxGT("Düse")
|
||||
#define MSG_BED _UxGT("Bett")
|
||||
#define MSG_FAN_SPEED _UxGT("Lüfter")
|
||||
#define MSG_EXTRA_FAN_SPEED _UxGT("Geschw. Extralüfter")
|
||||
#define MSG_EXTRA_FAN_SPEED _UxGT("Extra Lüfter")
|
||||
#define MSG_FLOW _UxGT("Flussrate")
|
||||
#define MSG_CONTROL _UxGT("Einstellungen")
|
||||
#define MSG_MIN LCD_STR_THERMOMETER _UxGT(" min")
|
||||
#define MSG_MAX LCD_STR_THERMOMETER _UxGT(" max")
|
||||
#define MSG_FACTOR LCD_STR_THERMOMETER _UxGT(" Faktor")
|
||||
#define MSG_AUTOTEMP _UxGT("Auto Temperatur")
|
||||
#define MSG_AUTOTEMP _UxGT("AutoTemp")
|
||||
#define MSG_ON _UxGT("Ein")
|
||||
#define MSG_OFF _UxGT("Aus")
|
||||
#define MSG_PID_P _UxGT("PID P")
|
||||
@@ -194,7 +111,7 @@
|
||||
#define MSG_PID_D _UxGT("PID D")
|
||||
#define MSG_PID_C _UxGT("PID C")
|
||||
#define MSG_SELECT _UxGT("Auswählen")
|
||||
#define MSG_ACC _UxGT("Beschleunigung")
|
||||
#define MSG_ACC _UxGT("A")
|
||||
#define MSG_JERK _UxGT("Jerk")
|
||||
#if IS_KINEMATIC
|
||||
#define MSG_VA_JERK _UxGT("V A Jerk")
|
||||
@@ -206,14 +123,13 @@
|
||||
#define MSG_VC_JERK _UxGT("V Z Jerk")
|
||||
#endif
|
||||
#define MSG_VE_JERK _UxGT("V E Jerk")
|
||||
#define MSG_JUNCTION_DEVIATION _UxGT("Junction Dev")
|
||||
#define MSG_VELOCITY _UxGT("Geschwindigkeit")
|
||||
#define MSG_VMAX _UxGT("V max ") // space intentional
|
||||
#define MSG_VMAX _UxGT("V max ") // space by purpose
|
||||
#define MSG_VMIN _UxGT("V min")
|
||||
#define MSG_VTRAV_MIN _UxGT("V min Leerfahrt")
|
||||
#define MSG_ACCELERATION _UxGT("Beschleunigung")
|
||||
#define MSG_AMAX _UxGT("A max ") // space intentional
|
||||
#define MSG_A_RETRACT _UxGT("A Rückzug")
|
||||
#define MSG_AMAX _UxGT("A max ") // space by purpose
|
||||
#define MSG_A_RETRACT _UxGT("A Retract")
|
||||
#define MSG_A_TRAVEL _UxGT("A Leerfahrt")
|
||||
#define MSG_STEPS_PER_MM _UxGT("Steps/mm")
|
||||
#if IS_KINEMATIC
|
||||
@@ -235,11 +151,11 @@
|
||||
#define MSG_MOTION _UxGT("Bewegung")
|
||||
#define MSG_FILAMENT _UxGT("Filament")
|
||||
#define MSG_VOLUMETRIC_ENABLED _UxGT("E in mm³")
|
||||
#define MSG_FILAMENT_DIAM _UxGT("Durchm. Filament")
|
||||
#define MSG_FILAMENT_DIAM _UxGT("D Fil.")
|
||||
#define MSG_FILAMENT_UNLOAD _UxGT("Entladen mm")
|
||||
#define MSG_FILAMENT_LOAD _UxGT("Laden mm")
|
||||
#define MSG_ADVANCE_K _UxGT("Vorschubfaktor")
|
||||
#define MSG_CONTRAST _UxGT("LCD-Kontrast")
|
||||
#define MSG_ADVANCE_K _UxGT("Advance Faktor")
|
||||
#define MSG_CONTRAST _UxGT("LCD Kontrast")
|
||||
#define MSG_STORE_EEPROM _UxGT("Konfig. speichern")
|
||||
#define MSG_LOAD_EEPROM _UxGT("Konfig. laden")
|
||||
#define MSG_RESTORE_FAILSAFE _UxGT("Standardwerte laden")
|
||||
@@ -248,52 +164,49 @@
|
||||
#define MSG_WATCH _UxGT("Info")
|
||||
#define MSG_PREPARE _UxGT("Vorbereitung")
|
||||
#define MSG_TUNE _UxGT("Justierung")
|
||||
#define MSG_PAUSE_PRINT _UxGT("SD-Druck pausieren")
|
||||
#define MSG_RESUME_PRINT _UxGT("SD-Druck fortsetzen")
|
||||
#define MSG_STOP_PRINT _UxGT("SD-Druck abbrechen")
|
||||
#define MSG_POWER_LOSS_RECOVERY _UxGT("Wiederh. n. Stroma.")
|
||||
#define MSG_CARD_MENU _UxGT("Druck v. SD-Karte")
|
||||
#define MSG_PAUSE_PRINT _UxGT("SD-Druck Pause")
|
||||
#define MSG_RESUME_PRINT _UxGT("SD-Druck Fortsetzung")
|
||||
#define MSG_STOP_PRINT _UxGT("SD-Druck Abbruch")
|
||||
#define MSG_CARD_MENU _UxGT("SD-Karte")
|
||||
#define MSG_NO_CARD _UxGT("Keine SD-Karte")
|
||||
#define MSG_DWELL _UxGT("Warten...")
|
||||
#define MSG_USERWAIT _UxGT("Klick zum Fortsetzen")
|
||||
#define MSG_PRINT_PAUSED _UxGT("Druck pausiert...")
|
||||
#define MSG_PRINTING _UxGT("Druckt...")
|
||||
#define MSG_USERWAIT _UxGT("Warte auf Nutzer")
|
||||
#define MSG_PRINT_PAUSED _UxGT("Druck pausiert")
|
||||
#define MSG_PRINT_ABORTED _UxGT("Druck abgebrochen")
|
||||
#define MSG_NO_MOVE _UxGT("Motoren angeschaltet")
|
||||
#define MSG_NO_MOVE _UxGT("Motoren eingeschaltet")
|
||||
#define MSG_KILLED _UxGT("ABGEBROCHEN")
|
||||
#define MSG_STOPPED _UxGT("ANGEHALTEN")
|
||||
#define MSG_CONTROL_RETRACT _UxGT("Rückzug mm")
|
||||
#define MSG_CONTROL_RETRACT_SWAP _UxGT("Wechs. Rückzug mm")
|
||||
#define MSG_CONTROL_RETRACTF _UxGT("Rückzug V")
|
||||
#define MSG_CONTROL_RETRACT_ZLIFT _UxGT("Z-Sprung mm")
|
||||
#define MSG_CONTROL_RETRACT _UxGT("Retract mm")
|
||||
#define MSG_CONTROL_RETRACT_SWAP _UxGT("Wechs. Retract mm")
|
||||
#define MSG_CONTROL_RETRACTF _UxGT("Retract V")
|
||||
#define MSG_CONTROL_RETRACT_ZLIFT _UxGT("Z-Hop mm")
|
||||
#define MSG_CONTROL_RETRACT_RECOVER _UxGT("UnRet mm")
|
||||
#define MSG_CONTROL_RETRACT_RECOVER_SWAP _UxGT("Wechs. UnRet mm")
|
||||
#define MSG_CONTROL_RETRACT_RECOVERF _UxGT("UnRet V")
|
||||
#define MSG_CONTROL_RETRACT_RECOVER_SWAPF _UxGT("S UnRet V")
|
||||
#define MSG_AUTORETRACT _UxGT("Autom. Rückzug")
|
||||
#define MSG_AUTORETRACT _UxGT("Autom. Retract")
|
||||
#define MSG_FILAMENTCHANGE _UxGT("Filament wechseln")
|
||||
#define MSG_FILAMENTLOAD _UxGT("Filament laden")
|
||||
#define MSG_FILAMENTUNLOAD _UxGT("Filament entladen")
|
||||
#define MSG_FILAMENTUNLOAD_ALL _UxGT("Alles entladen")
|
||||
#define MSG_INIT_SDCARD _UxGT("SD-Karte initialisi.") // Manually initialize the SD-card via user interface
|
||||
#define MSG_INIT_SDCARD _UxGT("SD-Karte erkennen") // Manually initialize the SD-card via user interface
|
||||
#define MSG_CNG_SDCARD _UxGT("SD-Karte getauscht") // SD-card changed by user. For machines with no autocarddetect. Both send "M21"
|
||||
#define MSG_ZPROBE_OUT _UxGT("Z-Sonde außerhalb")
|
||||
#define MSG_SKEW_FACTOR _UxGT("Korrekturfaktor")
|
||||
#define MSG_ZPROBE_OUT _UxGT("Sensor ausserhalb")
|
||||
#define MSG_SKEW_FACTOR _UxGT("Skew Faktor")
|
||||
#define MSG_BLTOUCH _UxGT("BLTouch")
|
||||
#define MSG_BLTOUCH_SELFTEST _UxGT("BLTouch Selbsttest")
|
||||
#define MSG_BLTOUCH_RESET _UxGT("BLTouch zurücks.")
|
||||
#define MSG_BLTOUCH_SELFTEST _UxGT("BLTouch Test")
|
||||
#define MSG_BLTOUCH_RESET _UxGT("BLTouch Reset")
|
||||
#define MSG_BLTOUCH_DEPLOY _UxGT("BLTouch ausfahren")
|
||||
#define MSG_BLTOUCH_STOW _UxGT("BLTouch einfahren")
|
||||
#define MSG_HOME _UxGT("Vorher") // Used as MSG_HOME " " MSG_X MSG_Y MSG_Z " " MSG_FIRST
|
||||
#define MSG_HOME _UxGT("Vorher") // Used as MSG_HOME " " MSG_X MSG_Y MSG_Z " " MSG_FIRST
|
||||
#define MSG_FIRST _UxGT("homen")
|
||||
#define MSG_ZPROBE_ZOFFSET _UxGT("Sondenversatz Z")
|
||||
#define MSG_ZPROBE_ZOFFSET _UxGT("Z Versatz")
|
||||
#define MSG_BABYSTEP_X _UxGT("Babystep X")
|
||||
#define MSG_BABYSTEP_Y _UxGT("Babystep Y")
|
||||
#define MSG_BABYSTEP_Z _UxGT("Babystep Z")
|
||||
#define MSG_ENDSTOP_ABORT _UxGT("Endstopp Abbr.")
|
||||
#define MSG_HEATING_FAILED_LCD _UxGT("HEIZEN ERFOLGLOS")
|
||||
#define MSG_HEATING_FAILED_LCD_BED _UxGT("Bett heizen fehlge.")
|
||||
#define MSG_ERR_REDUNDANT_TEMP _UxGT("REDUND. TEMP-ABWEI.")
|
||||
#define MSG_ENDSTOP_ABORT _UxGT("Endstopp-Abbr.")
|
||||
#define MSG_HEATING_FAILED_LCD _UxGT("HEIZEN FEHLGESCHLAGEN")
|
||||
#define MSG_ERR_REDUNDANT_TEMP _UxGT("REDUND. TEMPERATURABWEICHUNG")
|
||||
#define MSG_THERMAL_RUNAWAY LCD_STR_THERMOMETER _UxGT(" NICHT ERREICHT")
|
||||
#define MSG_THERMAL_RUNAWAY_BED _UxGT("BETT") MSG_THERMAL_RUNAWAY
|
||||
#define MSG_ERR_MAXTEMP LCD_STR_THERMOMETER _UxGT(" ÜBERSCHRITTEN")
|
||||
@@ -302,14 +215,12 @@
|
||||
#define MSG_ERR_MINTEMP_BED _UxGT("BETT ") LCD_STR_THERMOMETER _UxGT(" UNTERSCHRITTEN")
|
||||
#define MSG_ERR_Z_HOMING MSG_HOME _UxGT(" ") MSG_X MSG_Y _UxGT(" ") MSG_FIRST
|
||||
#define MSG_HALTED _UxGT("DRUCKER STOPP")
|
||||
#define MSG_PLEASE_RESET _UxGT("Bitte neustarten")
|
||||
#define MSG_PLEASE_RESET _UxGT("Bitte Resetten")
|
||||
#define MSG_SHORT_DAY _UxGT("t") // One character only
|
||||
#define MSG_SHORT_HOUR _UxGT("h") // One character only
|
||||
#define MSG_SHORT_MINUTE _UxGT("m") // One character only
|
||||
#define MSG_HEATING _UxGT("Extr. heizt...")
|
||||
#define MSG_COOLING _UxGT("Extr. kühlt...")
|
||||
#define MSG_BED_HEATING _UxGT("Bett heizt...")
|
||||
#define MSG_BED_COOLING _UxGT("Bett kühlt...")
|
||||
#define MSG_DELTA_CALIBRATE _UxGT("Delta kalibrieren")
|
||||
#define MSG_DELTA_CALIBRATE_X _UxGT("Kalibriere X")
|
||||
#define MSG_DELTA_CALIBRATE_Y _UxGT("Kalibriere Y")
|
||||
@@ -318,94 +229,171 @@
|
||||
#define MSG_DELTA_SETTINGS _UxGT("Delta Einst. anzeig.")
|
||||
#define MSG_DELTA_AUTO_CALIBRATE _UxGT("Autom. Kalibrierung")
|
||||
#define MSG_DELTA_HEIGHT_CALIBRATE _UxGT("Delta Höhe setzen")
|
||||
#define MSG_DELTA_Z_OFFSET_CALIBRATE _UxGT("Sondenversatz Z")
|
||||
#define MSG_DELTA_DIAG_ROD _UxGT("Diag Rod")
|
||||
#define MSG_DELTA_HEIGHT _UxGT("Höhe")
|
||||
#define MSG_DELTA_RADIUS _UxGT("Radius")
|
||||
#define MSG_INFO_MENU _UxGT("Über den Drucker")
|
||||
#define MSG_INFO_PRINTER_MENU _UxGT("Drucker-Info")
|
||||
#define MSG_3POINT_LEVELING _UxGT("3-Punkt-Nivellierung")
|
||||
#define MSG_INFO_PRINTER_MENU _UxGT("Drucker Info")
|
||||
#define MSG_3POINT_LEVELING _UxGT("3-Punkt Nivellierung")
|
||||
#define MSG_LINEAR_LEVELING _UxGT("Lineare Nivellierung")
|
||||
#define MSG_BILINEAR_LEVELING _UxGT("Bilineare Nivell.")
|
||||
#define MSG_UBL_LEVELING _UxGT("Unified Bed Leveling")
|
||||
#define MSG_MESH_LEVELING _UxGT("Netz-Nivellierung")
|
||||
#define MSG_INFO_STATS_MENU _UxGT("Drucker-Statistik")
|
||||
#define MSG_INFO_BOARD_MENU _UxGT("Board-Info")
|
||||
#define MSG_MESH_LEVELING _UxGT("Netz Nivellierung")
|
||||
#define MSG_INFO_STATS_MENU _UxGT("Drucker Statistik")
|
||||
#define MSG_INFO_BOARD_MENU _UxGT("Board Info")
|
||||
#define MSG_INFO_THERMISTOR_MENU _UxGT("Thermistoren")
|
||||
#define MSG_INFO_EXTRUDERS _UxGT("Extruder")
|
||||
#define MSG_INFO_BAUDRATE _UxGT("Baudrate")
|
||||
#define MSG_INFO_BAUDRATE _UxGT("Baud")
|
||||
#define MSG_INFO_PROTOCOL _UxGT("Protokoll")
|
||||
#define MSG_CASE_LIGHT _UxGT("Beleuchtung")
|
||||
#define MSG_CASE_LIGHT_BRIGHTNESS _UxGT("Helligkeit")
|
||||
|
||||
#define MSG_UBL_DOING_G29 _UxGT("G29 UBL läuft!")
|
||||
#define MSG_UBL_UNHOMED _UxGT("Erst XYZ homen")
|
||||
#define MSG_UBL_TOOLS _UxGT("UBL Werkzeuge")
|
||||
#define MSG_UBL_LEVEL_BED _UxGT("Unified Bed Leveling")
|
||||
#define MSG_UBL_MANUAL_MESH _UxGT("Netz manuell erst.")
|
||||
#define MSG_UBL_BC_INSERT _UxGT("Unterlegen & messen")
|
||||
#define MSG_UBL_BC_INSERT2 _UxGT("Messen")
|
||||
#define MSG_UBL_BC_REMOVE _UxGT("Entfernen & messen")
|
||||
#define MSG_UBL_MOVING_TO_NEXT _UxGT("Nächster Punkt...")
|
||||
#define MSG_UBL_ACTIVATE_MESH _UxGT("UBL aktivieren")
|
||||
#define MSG_UBL_DEACTIVATE_MESH _UxGT("UBL deaktivieren")
|
||||
#define MSG_UBL_SET_BED_TEMP _UxGT("Bett Temp.")
|
||||
#define MSG_UBL_CUSTOM_BED_TEMP MSG_UBL_SET_BED_TEMP
|
||||
#define MSG_UBL_SET_HOTEND_TEMP _UxGT("Hotend Temp.")
|
||||
#define MSG_UBL_CUSTOM_HOTEND_TEMP MSG_UBL_SET_HOTEND_TEMP
|
||||
#define MSG_UBL_MESH_EDIT _UxGT("Netz bearbeiten")
|
||||
#define MSG_UBL_EDIT_CUSTOM_MESH _UxGT("Eigenes Netz bearb.")
|
||||
#define MSG_UBL_FINE_TUNE_MESH _UxGT("Feineinstellung...")
|
||||
#define MSG_UBL_DONE_EDITING_MESH _UxGT("Bearbeitung beendet")
|
||||
#define MSG_UBL_BUILD_CUSTOM_MESH _UxGT("Eigenes Netz erst.")
|
||||
#define MSG_UBL_BUILD_MESH_MENU _UxGT("Netz erstellen")
|
||||
#define MSG_UBL_BUILD_PLA_MESH _UxGT("Netz erstellen PLA")
|
||||
#define MSG_UBL_BUILD_ABS_MESH _UxGT("Netz erstellen ABS")
|
||||
#define MSG_UBL_BUILD_COLD_MESH _UxGT("Netz erstellen kalt")
|
||||
#define MSG_UBL_MESH_HEIGHT_ADJUST _UxGT("Netz Höhe einst.")
|
||||
#define MSG_UBL_MESH_HEIGHT_AMOUNT _UxGT("Höhe")
|
||||
#define MSG_UBL_VALIDATE_MESH_MENU _UxGT("Netz validieren")
|
||||
#define MSG_UBL_VALIDATE_PLA_MESH _UxGT("Netz validieren PLA")
|
||||
#define MSG_UBL_VALIDATE_ABS_MESH _UxGT("Netz validieren ABS")
|
||||
#define MSG_UBL_VALIDATE_CUSTOM_MESH _UxGT("Eig. Netz validieren")
|
||||
#define MSG_UBL_CONTINUE_MESH _UxGT("Netzerst. forts.")
|
||||
#define MSG_UBL_MESH_LEVELING _UxGT("Netz Nivellierung")
|
||||
#define MSG_UBL_3POINT_MESH_LEVELING _UxGT("3-Punkt Nivellierung")
|
||||
#define MSG_UBL_GRID_MESH_LEVELING _UxGT("Gitternetz Nivell.")
|
||||
#define MSG_UBL_MESH_LEVEL _UxGT("Netz nivellieren")
|
||||
#define MSG_UBL_SIDE_POINTS _UxGT("Eckpunkte")
|
||||
#define MSG_UBL_MAP_TYPE _UxGT("Kartentyp")
|
||||
#define MSG_UBL_OUTPUT_MAP _UxGT("Karte ausgeben")
|
||||
#define MSG_UBL_OUTPUT_MAP_HOST _UxGT("Ausgabe für Host")
|
||||
#define MSG_UBL_OUTPUT_MAP_CSV _UxGT("Ausgabe für CSV")
|
||||
#define MSG_UBL_OUTPUT_MAP_BACKUP _UxGT("Externe Sicherung")
|
||||
#define MSG_UBL_INFO_UBL _UxGT("UBL Info ausgeben")
|
||||
#define MSG_UBL_EDIT_MESH_MENU _UxGT("Netz bearbeiten")
|
||||
#define MSG_UBL_FILLIN_AMOUNT _UxGT("Menge an Fill-in")
|
||||
#define MSG_UBL_MANUAL_FILLIN _UxGT("Manuelles Fill-in")
|
||||
#define MSG_UBL_SMART_FILLIN _UxGT("Kluges Fill-in")
|
||||
#define MSG_UBL_FILLIN_MESH _UxGT("Fill-in Netz")
|
||||
#define MSG_UBL_INVALIDATE_ALL _UxGT("Alles annullieren")
|
||||
#define MSG_UBL_INVALIDATE_CLOSEST _UxGT("Nächstlieg. ann.")
|
||||
#define MSG_UBL_FINE_TUNE_ALL _UxGT("Feineinstellung Alle")
|
||||
#define MSG_UBL_FINE_TUNE_CLOSEST _UxGT("Feineinst. Nächstl.")
|
||||
#define MSG_UBL_STORAGE_MESH_MENU _UxGT("Netz Speicherplatz")
|
||||
#define MSG_UBL_STORAGE_SLOT _UxGT("Memory Slot")
|
||||
#define MSG_UBL_LOAD_MESH _UxGT("Bett Netz laden")
|
||||
#define MSG_UBL_SAVE_MESH _UxGT("Bett Netz speichern")
|
||||
#define MSG_MESH_LOADED _UxGT("Netz %i geladen")
|
||||
#define MSG_MESH_SAVED _UxGT("Netz %i gespeichert")
|
||||
#define MSG_NO_STORAGE _UxGT("Kein Speicher")
|
||||
#define MSG_UBL_SAVE_ERROR _UxGT("ERR:UBL speichern")
|
||||
#define MSG_UBL_RESTORE_ERROR _UxGT("ERR:UBL wiederherst.")
|
||||
#define MSG_UBL_Z_OFFSET_STOPPED _UxGT("Z-Versatz angehalten")
|
||||
#define MSG_UBL_STEP_BY_STEP_MENU _UxGT("Schrittweises UBL")
|
||||
|
||||
#define MSG_LED_CONTROL _UxGT("LED Kontrolle")
|
||||
#define MSG_LEDS _UxGT("Licht")
|
||||
#define MSG_LED_PRESETS _UxGT("Licht Einstellungen")
|
||||
#define MSG_SET_LEDS_RED _UxGT("Rot")
|
||||
#define MSG_SET_LEDS_ORANGE _UxGT("Orange")
|
||||
#define MSG_SET_LEDS_YELLOW _UxGT("Gelb")
|
||||
#define MSG_SET_LEDS_GREEN _UxGT("Grün")
|
||||
#define MSG_SET_LEDS_BLUE _UxGT("Blau")
|
||||
#define MSG_SET_LEDS_INDIGO _UxGT("Indigo")
|
||||
#define MSG_SET_LEDS_VIOLET _UxGT("Violett")
|
||||
#define MSG_SET_LEDS_WHITE _UxGT("Weiß")
|
||||
#define MSG_SET_LEDS_DEFAULT _UxGT("Standard")
|
||||
#define MSG_CUSTOM_LEDS _UxGT("Benutzerdef.")
|
||||
#define MSG_INTENSITY_R _UxGT("Intensität Rot")
|
||||
#define MSG_INTENSITY_G _UxGT("Intensität Grün")
|
||||
#define MSG_INTENSITY_B _UxGT("Intensität Blau")
|
||||
#define MSG_INTENSITY_W _UxGT("Intensität Weiß")
|
||||
#define MSG_LED_BRIGHTNESS _UxGT("Helligkeit")
|
||||
|
||||
#if LCD_WIDTH >= 20
|
||||
#define MSG_INFO_PRINT_COUNT _UxGT("Gesamte Drucke")
|
||||
#define MSG_INFO_COMPLETED_PRINTS _UxGT("Komplette Drucke")
|
||||
#define MSG_INFO_COMPLETED_PRINTS _UxGT("Beendete Drucke")
|
||||
#define MSG_INFO_PRINT_TIME _UxGT("Gesamte Druckzeit")
|
||||
#define MSG_INFO_PRINT_LONGEST _UxGT("Längste Druckzeit")
|
||||
#define MSG_INFO_PRINT_LONGEST _UxGT("Längster Druckjob")
|
||||
#define MSG_INFO_PRINT_FILAMENT _UxGT("Gesamt Extrudiert")
|
||||
#else
|
||||
#define MSG_INFO_PRINT_COUNT _UxGT("Drucke")
|
||||
#define MSG_INFO_COMPLETED_PRINTS _UxGT("Komplette")
|
||||
#define MSG_INFO_PRINT_TIME _UxGT("Gesamte")
|
||||
#define MSG_INFO_PRINT_LONGEST _UxGT("Längste")
|
||||
#define MSG_INFO_COMPLETED_PRINTS _UxGT("Komplett")
|
||||
#define MSG_INFO_PRINT_TIME _UxGT("Gesamt ")
|
||||
#define MSG_INFO_PRINT_LONGEST _UxGT("Längster")
|
||||
#define MSG_INFO_PRINT_FILAMENT _UxGT("Extrud.")
|
||||
#endif
|
||||
|
||||
#define MSG_INFO_MIN_TEMP _UxGT("Min Temp")
|
||||
#define MSG_INFO_MAX_TEMP _UxGT("Max Temp")
|
||||
#define MSG_INFO_PSU _UxGT("Netzteil")
|
||||
#define MSG_DRIVE_STRENGTH _UxGT("Motorleistung")
|
||||
|
||||
#define MSG_DRIVE_STRENGTH _UxGT("Motorströme")
|
||||
#define MSG_DAC_PERCENT _UxGT("Treiber %")
|
||||
#define MSG_DAC_EEPROM_WRITE _UxGT("Werte speichern")
|
||||
#define MSG_FILAMENT_CHANGE_HEADER_PAUSE _UxGT("DRUCK PAUSIERT")
|
||||
#define MSG_FILAMENT_CHANGE_HEADER_LOAD _UxGT("FILAMENT LADEN")
|
||||
#define MSG_FILAMENT_CHANGE_HEADER_UNLOAD _UxGT("FILAMENT ENTLADEN")
|
||||
#define MSG_FILAMENT_CHANGE_OPTION_HEADER _UxGT("FORTS. OPTIONEN:")
|
||||
#define MSG_FILAMENT_CHANGE_OPTION_PURGE _UxGT("Mehr entladen")
|
||||
#define MSG_FILAMENT_CHANGE_OPTION_RESUME _UxGT("Druck weiter")
|
||||
#define MSG_FILAMENT_CHANGE_OPTION_PURGE _UxGT("Mehr entleeren")
|
||||
#define MSG_FILAMENT_CHANGE_OPTION_RESUME _UxGT("Drucke weiter")
|
||||
#define MSG_FILAMENT_CHANGE_NOZZLE _UxGT(" Düse: ")
|
||||
#define MSG_ERR_HOMING_FAILED _UxGT("Homing gescheitert")
|
||||
#define MSG_ERR_PROBING_FAILED _UxGT("Probing gescheitert")
|
||||
#define MSG_M600_TOO_COLD _UxGT("M600: zu kalt")
|
||||
|
||||
//
|
||||
// Die Filament-Change-Bildschirme können bis zu 3 Zeilen auf einem 4-Zeilen-Display anzeigen
|
||||
// ...oder 2 Zeilen auf einem 3-Zeilen-Display.
|
||||
#define MSG_M600_TOO_COLD _UxGT("M600: Zu kalt")
|
||||
#if LCD_HEIGHT >= 4
|
||||
// Up to 3 lines allowed
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Warte auf den")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_2 _UxGT("Start des")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_3 _UxGT("Filamentwechsels...")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Filament einlegen")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_2 _UxGT("und Knopf drücken")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_3 _UxGT("um fortzusetzen")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_1 _UxGT("Knopf drücken um")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_2 _UxGT("Düse aufzuheizen")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Düse heizt auf")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_2 _UxGT("bitte warten...")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Warte auf")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_2 _UxGT("Herausnahme")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_3 _UxGT("des Filaments...")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Warte auf")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_2 _UxGT("Laden des")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_3 _UxGT("Filaments...")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Warte auf")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_2 _UxGT("Entladen des")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_3 _UxGT("Filaments...")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Warte auf")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_2 _UxGT("Fortsetzen des")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_3 _UxGT("Drucks...")
|
||||
// Up to 3 lines allowed
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Warte auf den")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_2 _UxGT("Start des")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_3 _UxGT("Filamentwechsels")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Warte auf")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_2 _UxGT("Herausnahme")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_3 _UxGT("des Filaments...")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Filament einlegen")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_2 _UxGT("und Knopf")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_3 _UxGT("drücken...")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_1 _UxGT("Knopf drücken um")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_2 _UxGT("Düse aufzuheizen.")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Düse heizt auf...")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_2 _UxGT("Bitte warten...")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Warte auf")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_2 _UxGT("Laden des")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_3 _UxGT("Filaments")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Warte auf")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_2 _UxGT("Entleeren des")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_3 _UxGT("Filaments")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Warte auf")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_2 _UxGT("Fortsetzung des")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_3 _UxGT("Druckes...")
|
||||
#else // LCD_HEIGHT < 4
|
||||
// Up to 2 lines allowed
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Bitte warten...")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Laden und Klick")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_1 _UxGT("Klick zum Heizen")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Heizen...")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Entladen...")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Laden...")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Entladen...")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Fortsetzen...")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Bitte warten...")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Auswerfen...")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Laden und Klick")
|
||||
#define MSG_FILAMENT_CHANGE_HEATING_1 _UxGT("Heizen...")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Laden...")
|
||||
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Entleeren...")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Fortsetzen...")
|
||||
#endif // LCD_HEIGHT < 4
|
||||
|
||||
#endif // LANGUAGE_DE_H
|
||||
|
||||
+10
-9
@@ -251,25 +251,26 @@
|
||||
|
||||
#define MSG_FILAMENT_CHANGE_NOZZLE _UxGT(" Boquilla: ")
|
||||
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Esperando para")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Esperando iniciar")
|
||||
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Inserte el filamento")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Inserte filamento")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_2 _UxGT("y presione el boton")
|
||||
|
||||
#if LCD_HEIGHT >= 4
|
||||
// Up to 3 lines allowed
|
||||
#define MSG_FILAMENT_CHANGE_INIT_2 _UxGT("iniciar cambio")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_3 _UxGT("de filamento")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_2 _UxGT("del filamento")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_3 _UxGT("cambiar")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_3 _UxGT("para continuar...")
|
||||
#else // LCD_HEIGHT < 4
|
||||
// Up to 2 lines allowed
|
||||
#define MSG_FILAMENT_CHANGE_INIT_2 _UxGT("iniciar cambio fil.")
|
||||
#define MSG_FILAMENT_CHANGE_INIT_2 _UxGT("del fil. cambiar")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Inserte filamento")
|
||||
#endif // LCD_HEIGHT < 4
|
||||
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Esperando para")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_2 _UxGT("expulsar filamento")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Esperado para")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_2 _UxGT("cargar el filamento")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Esperado por")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_2 _UxGT("filamento expulsado")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_1 _UxGT("Esperado por")
|
||||
#define MSG_FILAMENT_CHANGE_LOAD_2 _UxGT("Cargar filamento")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Esperando imp.")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_2 _UxGT("para resumir")
|
||||
#define MSG_FILAMENT_CHANGE_HEAT_1 _UxGT("Oprima boton para")
|
||||
|
||||
@@ -369,7 +369,7 @@
|
||||
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Esperando impressao")
|
||||
#define MSG_FILAMENT_CHANGE_RESUME_2 _UxGT("continuar")
|
||||
#else // LCD_HEIGHT < 4
|
||||
#else LCD_HEIGHT < 4
|
||||
#define MSG_FILAMENT_CHANGE_INIT_1 _UxGT("Aguarde...")
|
||||
#define MSG_FILAMENT_CHANGE_UNLOAD_1 _UxGT("Ejetando...")
|
||||
#define MSG_FILAMENT_CHANGE_INSERT_1 _UxGT("Insira e Clique")
|
||||
|
||||
+21
-22
@@ -154,32 +154,31 @@
|
||||
*/
|
||||
|
||||
#if ENABLED(ULTRA_LCD)
|
||||
#define LCD_SDSS 28
|
||||
#define LCD_SDSS 28
|
||||
#if ENABLED(ADC_KEYPAD)
|
||||
#define SERVO0_PIN 27 // free for BLTouch/3D-Touch
|
||||
#ifndef LCD_I2C_TYPE_PCF8575
|
||||
#define LCD_PINS_RS 28
|
||||
#define LCD_PINS_ENABLE 29
|
||||
#define LCD_PINS_D4 10
|
||||
#define LCD_PINS_D5 11
|
||||
#define LCD_PINS_D6 16
|
||||
#define LCD_PINS_D7 17
|
||||
#endif
|
||||
#ifndef ADC_KEYPAD_PIN
|
||||
#define ADC_KEYPAD_PIN 1 // Analog Input
|
||||
#endif
|
||||
#define SERVO0_PIN 27 // free for BLTouch/3D-Touch
|
||||
#define LCD_PINS_RS 28
|
||||
#define LCD_PINS_ENABLE 29
|
||||
#define LCD_PINS_D4 10
|
||||
#define LCD_PINS_D5 11
|
||||
#define LCD_PINS_D6 16
|
||||
#define LCD_PINS_D7 17
|
||||
#define BTN_EN1 -1
|
||||
#define BTN_EN2 -1
|
||||
#define BTN_ENC -1
|
||||
#define ADC_KEYPAD_PIN 1
|
||||
#elif ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) || ENABLED(ANET_FULL_GRAPHICS_LCD)
|
||||
// Pin definitions for the Anet A6 Full Graphics display and the RepRapDiscount Full Graphics
|
||||
// display using an adapter board // https://go.aisler.net/benlye/anet-lcd-adapter/pcb
|
||||
// See below for alternative pin definitions for use with https://www.thingiverse.com/thing:2103748
|
||||
#define SERVO0_PIN 29 // free for BLTouch/3D-Touch
|
||||
#define BEEPER_PIN 17
|
||||
#define LCD_PINS_RS 27
|
||||
#define LCD_PINS_ENABLE 28
|
||||
#define LCD_PINS_D4 30
|
||||
#define BTN_EN1 11
|
||||
#define BTN_EN2 10
|
||||
#define BTN_ENC 16
|
||||
#define SERVO0_PIN 29 // free for BLTouch/3D-Touch
|
||||
#define BEEPER_PIN 17
|
||||
#define LCD_PINS_RS 27
|
||||
#define LCD_PINS_ENABLE 28
|
||||
#define LCD_PINS_D4 30
|
||||
#define BTN_EN1 11
|
||||
#define BTN_EN2 10
|
||||
#define BTN_ENC 16
|
||||
#ifndef ST7920_DELAY_1
|
||||
#define ST7920_DELAY_1 DELAY_NS(0)
|
||||
#endif
|
||||
@@ -193,7 +192,7 @@
|
||||
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
|
||||
#endif
|
||||
#else
|
||||
#define SERVO0_PIN 27
|
||||
#define SERVO0_PIN 27
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
||||
+1
-1
@@ -509,7 +509,7 @@
|
||||
#define BTN_ENC 35
|
||||
|
||||
#define SD_DETECT_PIN 49
|
||||
#define KILL_PIN 41
|
||||
#define KILL_PIN 64
|
||||
|
||||
#elif ENABLED(MINIPANEL)
|
||||
|
||||
|
||||
+239
-94
@@ -28,27 +28,39 @@
|
||||
#error "Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
|
||||
#endif
|
||||
|
||||
#if HOTENDS > 3 || E_STEPPERS > 3
|
||||
#error "RUMBA supports up to 3 hotends / E-steppers. Comment out this line to continue."
|
||||
#if E_STEPPERS > 3 || HOTENDS > 3
|
||||
#error "RUMBA supports up to 3 hotends / E-steppers. Comment this line to keep going."
|
||||
#endif
|
||||
|
||||
#define DEFAULT_MACHINE_NAME "Rumba"
|
||||
#define BOARD_NAME "Rumba"
|
||||
//#endif
|
||||
|
||||
#define LARGE_FLASH true
|
||||
|
||||
//
|
||||
// Servos
|
||||
//
|
||||
#define SERVO0_PIN 5
|
||||
#ifdef IS_RAMPS_13
|
||||
#define SERVO0_PIN 7 // RAMPS_13 // Will conflict with BTN_EN2 on LCD_I2C_VIKI
|
||||
#else
|
||||
#define SERVO0_PIN 11
|
||||
#endif
|
||||
#define SERVO1_PIN 6
|
||||
#define SERVO2_PIN 5
|
||||
#define SERVO3_PIN -1
|
||||
|
||||
//
|
||||
// Limit Switches
|
||||
//
|
||||
#define X_MIN_PIN 37
|
||||
#define X_MAX_PIN 36
|
||||
#define Y_MIN_PIN 35
|
||||
#define Y_MAX_PIN 34
|
||||
#define Z_MIN_PIN 33
|
||||
#define Z_MAX_PIN 32
|
||||
#define X_MIN_PIN 3
|
||||
#ifndef X_MAX_PIN
|
||||
#define X_MAX_PIN 2
|
||||
#endif
|
||||
#define Y_MIN_PIN 14
|
||||
#define Y_MAX_PIN 15
|
||||
#define Z_MIN_PIN 18
|
||||
#define Z_MAX_PIN 19
|
||||
|
||||
//
|
||||
// Z Probe (when not Z_MIN_PIN)
|
||||
@@ -57,122 +69,255 @@
|
||||
#define Z_MIN_PROBE_PIN 32
|
||||
#endif
|
||||
|
||||
#define SLED_PIN -1
|
||||
|
||||
//
|
||||
// Steppers
|
||||
//
|
||||
#define X_STEP_PIN 17
|
||||
#define X_DIR_PIN 16
|
||||
#define X_ENABLE_PIN 48
|
||||
#define X_STEP_PIN 54
|
||||
#define X_DIR_PIN 55
|
||||
#define X_ENABLE_PIN 38
|
||||
#define X_CS_PIN 53
|
||||
|
||||
#define Y_STEP_PIN 60
|
||||
#define Y_DIR_PIN 61
|
||||
#define Y_ENABLE_PIN 56
|
||||
#define Y_CS_PIN 49
|
||||
|
||||
#define Y_STEP_PIN 54
|
||||
#define Y_DIR_PIN 47
|
||||
#define Y_ENABLE_PIN 55
|
||||
|
||||
#define Z_STEP_PIN 57
|
||||
#define Z_DIR_PIN 56
|
||||
#define Z_STEP_PIN 46
|
||||
#define Z_DIR_PIN 48
|
||||
#define Z_ENABLE_PIN 62
|
||||
#define Z_CS_PIN 40
|
||||
|
||||
#define E0_STEP_PIN 23
|
||||
#define E0_DIR_PIN 22
|
||||
#define E0_STEP_PIN 26
|
||||
#define E0_DIR_PIN 28
|
||||
#define E0_ENABLE_PIN 24
|
||||
#define E0_CS_PIN 42
|
||||
|
||||
#define E1_STEP_PIN 26
|
||||
#define E1_DIR_PIN 25
|
||||
#define E1_ENABLE_PIN 27
|
||||
#define E1_STEP_PIN 36
|
||||
#define E1_DIR_PIN 34
|
||||
#define E1_ENABLE_PIN 30
|
||||
#define E1_CS_PIN 44
|
||||
|
||||
#define E2_STEP_PIN 29
|
||||
#define E2_DIR_PIN 28
|
||||
#define E2_ENABLE_PIN 39
|
||||
#define E2_STEP_PIN 42
|
||||
#define E2_DIR_PIN 43
|
||||
#define E2_ENABLE_PIN 44
|
||||
|
||||
//
|
||||
// Temperature Sensors
|
||||
//
|
||||
#if TEMP_SENSOR_0 == -1
|
||||
#define TEMP_0_PIN 6 // Analog Input (connector *K1* on RUMBA thermocouple ADD ON is used)
|
||||
#define TEMP_0_PIN 13 // Analog Input
|
||||
#define TEMP_1_PIN 15 // Analog Input
|
||||
#define TEMP_BED_PIN 14 // Analog Input
|
||||
|
||||
// SPI for Max6675 or Max31855 Thermocouple
|
||||
#if DISABLED(SDSUPPORT)
|
||||
#define MAX6675_SS 66 // Do not use pin 53 if there is even the remote possibility of using Display/SD card
|
||||
#else
|
||||
#define TEMP_0_PIN 15 // Analog Input (default connector for thermistor *T0* on rumba board is used)
|
||||
#define MAX6675_SS 66 // Do not use pin 49 as this is tied to the switch inside the SD card socket to detect if there is an SD card present
|
||||
#endif
|
||||
|
||||
#if TEMP_SENSOR_1 == -1
|
||||
#define TEMP_1_PIN 5 // Analog Input (connector *K2* on RUMBA thermocouple ADD ON is used)
|
||||
#else
|
||||
#define TEMP_1_PIN 14 // Analog Input (default connector for thermistor *T1* on rumba board is used)
|
||||
#endif
|
||||
|
||||
#if TEMP_SENSOR_2 == -1
|
||||
#define TEMP_2_PIN 7 // Analog Input (connector *K3* on RUMBA thermocouple ADD ON is used <-- this can't be used when TEMP_SENSOR_BED is defined as thermocouple)
|
||||
#else
|
||||
#define TEMP_2_PIN 13 // Analog Input (default connector for thermistor *T2* on rumba board is used)
|
||||
#endif
|
||||
|
||||
// optional for extruder 4 or chamber:
|
||||
//#define TEMP_X_PIN 12 // Analog Input (default connector for thermistor *T3* on rumba board is used)
|
||||
//#define TEMP_CHAMBER_PIN 12 // Analog Input (default connector for thermistor *T3* on rumba board is used)
|
||||
|
||||
#if TEMP_SENSOR_BED == -1
|
||||
#define TEMP_BED_PIN 7 // Analog Input (connector *K3* on RUMBA thermocouple ADD ON is used <-- this can't be used when TEMP_SENSOR_2 is defined as thermocouple)
|
||||
#else
|
||||
#define TEMP_BED_PIN 11 // Analog Input (default connector for thermistor *THB* on rumba board is used)
|
||||
//
|
||||
// Augmentation for auto-assigning RAMPS plugs
|
||||
//
|
||||
#if DISABLED(IS_RAMPS_EEB) && DISABLED(IS_RAMPS_EEF) && DISABLED(IS_RAMPS_EFB) && DISABLED(IS_RAMPS_EFF) && DISABLED(IS_RAMPS_SF) && !PIN_EXISTS(MOSFET_D)
|
||||
#if HOTENDS > 1
|
||||
#if TEMP_SENSOR_BED
|
||||
#define IS_RAMPS_EEB
|
||||
#else
|
||||
#define IS_RAMPS_EEF
|
||||
#endif
|
||||
#elif TEMP_SENSOR_BED
|
||||
#define IS_RAMPS_EFB
|
||||
#else
|
||||
#define IS_RAMPS_EFF
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// Heaters / Fans
|
||||
//
|
||||
#define HEATER_0_PIN 2
|
||||
#define HEATER_1_PIN 3
|
||||
#define HEATER_2_PIN 6
|
||||
#define HEATER_3_PIN 8
|
||||
#define HEATER_BED_PIN 9
|
||||
#define HEATER_0_PIN 10
|
||||
#define HEATER_1_PIN 58
|
||||
//#define HEATER_2_PIN 6
|
||||
//#define HEATER_3_PIN 8
|
||||
#define HEATER_BED_PIN 8
|
||||
|
||||
#ifndef FAN_PIN
|
||||
#define FAN_PIN 7
|
||||
#endif
|
||||
#define FAN1_PIN 8
|
||||
#define LED4_PIN 5
|
||||
#define LASER_PIN -1
|
||||
|
||||
#define FAN_PIN 9
|
||||
#define FAN1_PIN -1
|
||||
|
||||
//
|
||||
// Misc. Functions
|
||||
//
|
||||
#define SDSS 53
|
||||
#define LED_PIN 13
|
||||
#define PS_ON_PIN 45
|
||||
#define KILL_PIN 46
|
||||
#define CASE_LIGHT_PIN 45
|
||||
|
||||
//
|
||||
// M3/M4/M5 - Spindle/Laser Control
|
||||
//
|
||||
#ifndef SPINDLE_LASER_PWM_PIN
|
||||
#define SPINDLE_LASER_PWM_PIN 4 // MUST BE HARDWARE PWM. Pin 4 interrupts OC0* and OC1* always in use?
|
||||
#endif
|
||||
#ifndef SPINDLE_LASER_ENABLE_PIN
|
||||
#define SPINDLE_LASER_ENABLE_PIN 14 // Pin should have a pullup!
|
||||
#endif
|
||||
#ifndef SPINDLE_DIR_PIN
|
||||
#define SPINDLE_DIR_PIN 15
|
||||
#endif
|
||||
// Use the RAMPS 1.4 Analog input 5 on the AUX2 connector
|
||||
#define FILWIDTH_PIN 5 // Analog Input
|
||||
|
||||
// define digital pin 4 for the filament runout sensor. Use the RAMPS 1.4 digital input 4 on the servos connector
|
||||
//#define FIL_RUNOUT_PIN 4
|
||||
|
||||
#define PS_ON_PIN 12
|
||||
|
||||
//
|
||||
// LCD / Controller
|
||||
//
|
||||
#define SD_DETECT_PIN 49
|
||||
#define BEEPER_PIN 44
|
||||
#define LCD_PINS_D7 40
|
||||
#define BTN_EN1 11
|
||||
#define BTN_EN2 12
|
||||
#define BTN_ENC 43
|
||||
#if ENABLED(ULTRA_LCD)
|
||||
|
||||
#if ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
|
||||
#define LCD_PINS_RS 49 // CS chip select /SS chip slave select
|
||||
#define LCD_PINS_ENABLE 51 // SID (MOSI)
|
||||
#define LCD_PINS_D4 52 // SCK (CLK) clock
|
||||
#elif ENABLED(NEWPANEL) && ENABLED(PANEL_ONE)
|
||||
#define LCD_PINS_RS 40
|
||||
#define LCD_PINS_ENABLE 42
|
||||
#define LCD_PINS_D4 65
|
||||
#define LCD_PINS_D5 66
|
||||
#define LCD_PINS_D6 44
|
||||
#define LCD_PINS_D7 64
|
||||
#else
|
||||
#define LCD_PINS_RS 16
|
||||
#define LCD_PINS_ENABLE 17
|
||||
#define LCD_PINS_D4 23
|
||||
#define LCD_PINS_D5 25
|
||||
#define LCD_PINS_D6 27
|
||||
#define LCD_PINS_D7 29
|
||||
#if DISABLED(NEWPANEL)
|
||||
#define BEEPER_PIN 33
|
||||
// Buttons are attached to a shift register
|
||||
// Not wired yet
|
||||
//#define SHIFT_CLK 38
|
||||
//#define SHIFT_LD 42
|
||||
//#define SHIFT_OUT 40
|
||||
//#define SHIFT_EN 17
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if ENABLED(NEWPANEL)
|
||||
|
||||
#if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
|
||||
#define BEEPER_PIN 37
|
||||
|
||||
#define BTN_EN1 31
|
||||
#define BTN_EN2 33
|
||||
#define BTN_ENC 35
|
||||
|
||||
#define SD_DETECT_PIN 49
|
||||
#define KILL_PIN 41
|
||||
|
||||
#if ENABLED(BQ_LCD_SMART_CONTROLLER)
|
||||
#define LCD_BACKLIGHT_PIN 39
|
||||
#endif
|
||||
|
||||
#elif ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
|
||||
#define BTN_EN1 64
|
||||
#define BTN_EN2 59
|
||||
#define BTN_ENC 63
|
||||
#define SD_DETECT_PIN 42
|
||||
#elif ENABLED(LCD_I2C_PANELOLU2)
|
||||
#define BTN_EN1 47 // reverse if the encoder turns the wrong way.
|
||||
#define BTN_EN2 43
|
||||
#define BTN_ENC 32
|
||||
#define LCD_SDSS 53
|
||||
#define SD_DETECT_PIN -1
|
||||
#define KILL_PIN 41
|
||||
#elif ENABLED(LCD_I2C_VIKI)
|
||||
#define BTN_EN1 22 // reverse if the encoder turns the wrong way.
|
||||
#define BTN_EN2 7 // http://files.panucatt.com/datasheets/viki_wiring_diagram.pdf
|
||||
// tells about 40/42.
|
||||
// 22/7 are unused on RAMPS_14. 22 is unused and 7 the SERVO0_PIN on RAMPS_13.
|
||||
#define BTN_ENC -1
|
||||
#define LCD_SDSS 53
|
||||
#define SD_DETECT_PIN 49
|
||||
#elif ENABLED(VIKI2) || ENABLED(miniVIKI)
|
||||
#define BEEPER_PIN 33
|
||||
|
||||
// Pins for DOGM SPI LCD Support
|
||||
#define DOGLCD_A0 44
|
||||
#define DOGLCD_CS 45
|
||||
#define LCD_SCREEN_ROT_180
|
||||
|
||||
#define BTN_EN1 22
|
||||
#define BTN_EN2 7
|
||||
#define BTN_ENC 39
|
||||
|
||||
#define SDSS 53
|
||||
#define SD_DETECT_PIN -1 // Pin 49 for display sd interface, 72 for easy adapter board
|
||||
|
||||
#define KILL_PIN 31
|
||||
|
||||
#define STAT_LED_RED_PIN 32
|
||||
#define STAT_LED_BLUE_PIN 35
|
||||
|
||||
#elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER)
|
||||
#define BTN_EN1 35 // reverse if the encoder turns the wrong way.
|
||||
#define BTN_EN2 37
|
||||
#define BTN_ENC 31
|
||||
#define SD_DETECT_PIN 49
|
||||
#define LCD_SDSS 53
|
||||
#define KILL_PIN 41
|
||||
#define BEEPER_PIN 23
|
||||
#define DOGLCD_CS 29
|
||||
#define DOGLCD_A0 27
|
||||
#define LCD_BACKLIGHT_PIN 33
|
||||
#elif ENABLED(MINIPANEL)
|
||||
#define BEEPER_PIN 42
|
||||
// Pins for DOGM SPI LCD Support
|
||||
#define DOGLCD_A0 44
|
||||
#define DOGLCD_CS 66
|
||||
#define LCD_BACKLIGHT_PIN 65 // backlight LED on A11/D65
|
||||
#define SDSS 53
|
||||
|
||||
#define KILL_PIN 64
|
||||
// GLCD features
|
||||
//#define LCD_CONTRAST 190
|
||||
// Uncomment screen orientation
|
||||
//#define LCD_SCREEN_ROT_90
|
||||
//#define LCD_SCREEN_ROT_180
|
||||
//#define LCD_SCREEN_ROT_270
|
||||
// The encoder and click button
|
||||
#define BTN_EN1 40
|
||||
#define BTN_EN2 63
|
||||
#define BTN_ENC 59
|
||||
// not connected to a pin
|
||||
#define SD_DETECT_PIN 49
|
||||
|
||||
#else
|
||||
|
||||
// Beeper on AUX-4
|
||||
#define BEEPER_PIN 33
|
||||
|
||||
// buttons are directly attached using AUX-2
|
||||
#if ENABLED(REPRAPWORLD_KEYPAD)
|
||||
#define BTN_EN1 64 // encoder
|
||||
#define BTN_EN2 59 // encoder
|
||||
#define BTN_ENC 63 // enter button
|
||||
#define SHIFT_OUT 40 // shift register
|
||||
#define SHIFT_CLK 44 // shift register
|
||||
#define SHIFT_LD 42 // shift register
|
||||
#elif ENABLED(PANEL_ONE)
|
||||
#define BTN_EN1 59 // AUX2 PIN 3
|
||||
#define BTN_EN2 63 // AUX2 PIN 4
|
||||
#define BTN_ENC 49 // AUX3 PIN 7
|
||||
#else
|
||||
#define BTN_EN1 37
|
||||
#define BTN_EN2 35
|
||||
#define BTN_ENC 31 // the click
|
||||
#endif
|
||||
|
||||
#if ENABLED(G3D_PANEL)
|
||||
#define SD_DETECT_PIN 49
|
||||
#define KILL_PIN 41
|
||||
#else
|
||||
//#define SD_DETECT_PIN -1 // Ramps doesn't use this
|
||||
#endif
|
||||
|
||||
#endif
|
||||
#endif // NEWPANEL
|
||||
|
||||
#endif // ULTRA_LCD
|
||||
|
||||
#if ENABLED(MKS_12864OLED) || ENABLED(MKS_12864OLED_SSD1306)
|
||||
#define LCD_PINS_DC 38 // Set as output on init
|
||||
#define LCD_PINS_RS 41 // Pull low for 1s to init
|
||||
// DOGM SPI LCD Support
|
||||
#define DOGLCD_CS 19
|
||||
#define DOGLCD_MOSI 42
|
||||
#define DOGLCD_SCK 18
|
||||
#define DOGLCD_A0 LCD_PINS_DC
|
||||
#else
|
||||
#define LCD_PINS_RS 19
|
||||
#define LCD_PINS_ENABLE 42
|
||||
#define LCD_PINS_D4 18
|
||||
#define LCD_PINS_D5 38
|
||||
#define LCD_PINS_D6 41
|
||||
#endif
|
||||
|
||||
@@ -276,7 +276,7 @@ void save_job_recovery_info() {
|
||||
|
||||
// If power-loss pin was triggered, write just once then kill
|
||||
#if PIN_EXISTS(POWER_LOSS)
|
||||
if (READ(POWER_LOSS_PIN) == POWER_LOSS_STATE) kill(PSTR(MSG_POWER_LOSS_RECOVERY));
|
||||
if (READ(POWER_LOSS_PIN) == POWER_LOSS_STATE) kill(MSG_POWER_LOSS_RECOVERY);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
+34
-34
@@ -247,7 +247,7 @@ uint8_t Temperature::soft_pwm_amount[HOTENDS];
|
||||
* Alternately heat and cool the nozzle, observing its behavior to
|
||||
* determine the best PID values to achieve a stable temperature.
|
||||
*/
|
||||
void Temperature::pid_autotune(const float &target, const int8_t hotend, const int8_t ncycles, const bool set_result/*=false*/) {
|
||||
void Temperature::PID_autotune(const float &target, const int8_t hotend, const int8_t ncycles, const bool set_result/*=false*/) {
|
||||
float current = 0.0;
|
||||
int cycles = 0;
|
||||
bool heating = true;
|
||||
@@ -308,11 +308,6 @@ uint8_t Temperature::soft_pwm_amount[HOTENDS];
|
||||
return;
|
||||
}
|
||||
|
||||
if (target > GHV(BED_MAXTEMP, maxttemp[hotend]) - 15) {
|
||||
SERIAL_ECHOLNPGM(MSG_PID_TEMP_TOO_HIGH);
|
||||
return;
|
||||
}
|
||||
|
||||
SERIAL_ECHOLNPGM(MSG_PID_AUTOTUNE_START);
|
||||
|
||||
disable_all_heaters(); // switch off all heaters.
|
||||
@@ -327,7 +322,7 @@ uint8_t Temperature::soft_pwm_amount[HOTENDS];
|
||||
const millis_t ms = millis();
|
||||
|
||||
if (temp_meas_ready) { // temp sample ready
|
||||
calculate_celsius_temperatures();
|
||||
updateTemperaturesFromRawValues();
|
||||
|
||||
// Get the current temperature and constrain it
|
||||
current = GHV(current_temperature_bed, current_temperature[hotend]);
|
||||
@@ -336,7 +331,7 @@ uint8_t Temperature::soft_pwm_amount[HOTENDS];
|
||||
|
||||
#if HAS_AUTO_FAN
|
||||
if (ELAPSED(ms, next_auto_fan_check_ms)) {
|
||||
check_extruder_auto_fans();
|
||||
checkExtruderAutoFans();
|
||||
next_auto_fan_check_ms = ms + 2500UL;
|
||||
}
|
||||
#endif
|
||||
@@ -483,7 +478,7 @@ uint8_t Temperature::soft_pwm_amount[HOTENDS];
|
||||
PID_PARAM(Kp, hotend) = workKp; \
|
||||
PID_PARAM(Ki, hotend) = scalePID_i(workKi); \
|
||||
PID_PARAM(Kd, hotend) = scalePID_d(workKd); \
|
||||
update_pid(); }while(0)
|
||||
updatePID(); }while(0)
|
||||
|
||||
// Use the result? (As with "M303 U1")
|
||||
if (set_result) {
|
||||
@@ -524,7 +519,7 @@ int Temperature::getHeaterPower(const int heater) {
|
||||
|
||||
#if HAS_AUTO_FAN
|
||||
|
||||
void Temperature::check_extruder_auto_fans() {
|
||||
void Temperature::checkExtruderAutoFans() {
|
||||
static const pin_t fanPin[] PROGMEM = { E0_AUTO_FAN_PIN, E1_AUTO_FAN_PIN, E2_AUTO_FAN_PIN, E3_AUTO_FAN_PIN, E4_AUTO_FAN_PIN, CHAMBER_AUTO_FAN_PIN };
|
||||
static const uint8_t fanBit[] PROGMEM = {
|
||||
0,
|
||||
@@ -613,20 +608,25 @@ float Temperature::get_pid_output(const int8_t e) {
|
||||
pid_error[HOTEND_INDEX] = target_temperature[HOTEND_INDEX] - current_temperature[HOTEND_INDEX];
|
||||
dTerm[HOTEND_INDEX] = PID_K2 * PID_PARAM(Kd, HOTEND_INDEX) * (current_temperature[HOTEND_INDEX] - temp_dState[HOTEND_INDEX]) + float(PID_K1) * dTerm[HOTEND_INDEX];
|
||||
temp_dState[HOTEND_INDEX] = current_temperature[HOTEND_INDEX];
|
||||
|
||||
if (target_temperature[HOTEND_INDEX] == 0
|
||||
|| pid_error[HOTEND_INDEX] < -(PID_FUNCTIONAL_RANGE)
|
||||
#if HEATER_IDLE_HANDLER
|
||||
if (heater_idle_timeout_exceeded[HOTEND_INDEX]) {
|
||||
pid_output = 0;
|
||||
pid_reset[HOTEND_INDEX] = true;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if (pid_error[HOTEND_INDEX] > PID_FUNCTIONAL_RANGE) {
|
||||
pid_output = BANG_MAX;
|
||||
pid_reset[HOTEND_INDEX] = true;
|
||||
}
|
||||
else if (pid_error[HOTEND_INDEX] < -(PID_FUNCTIONAL_RANGE) || target_temperature[HOTEND_INDEX] == 0
|
||||
#if HEATER_IDLE_HANDLER
|
||||
|| heater_idle_timeout_exceeded[HOTEND_INDEX]
|
||||
#endif
|
||||
) {
|
||||
) {
|
||||
pid_output = 0;
|
||||
pid_reset[HOTEND_INDEX] = true;
|
||||
}
|
||||
else if (pid_error[HOTEND_INDEX] > PID_FUNCTIONAL_RANGE) {
|
||||
pid_output = BANG_MAX;
|
||||
pid_reset[HOTEND_INDEX] = true;
|
||||
}
|
||||
else {
|
||||
if (pid_reset[HOTEND_INDEX]) {
|
||||
temp_iState[HOTEND_INDEX] = 0.0;
|
||||
@@ -759,7 +759,7 @@ void Temperature::manage_heater() {
|
||||
|
||||
if (!temp_meas_ready) return;
|
||||
|
||||
calculate_celsius_temperatures(); // also resets the watchdog
|
||||
updateTemperaturesFromRawValues(); // also resets the watchdog
|
||||
|
||||
#if ENABLED(HEATER_0_USES_MAX6675)
|
||||
if (current_temperature[0] > MIN(HEATER_0_MAXTEMP, MAX6675_TMAX - 1.0)) max_temp_error(0);
|
||||
@@ -804,7 +804,7 @@ void Temperature::manage_heater() {
|
||||
|
||||
#if HAS_AUTO_FAN
|
||||
if (ELAPSED(ms, next_auto_fan_check_ms)) { // only need to check fan state very infrequently
|
||||
check_extruder_auto_fans();
|
||||
checkExtruderAutoFans();
|
||||
next_auto_fan_check_ms = ms + 2500UL;
|
||||
}
|
||||
#endif
|
||||
@@ -914,7 +914,7 @@ void Temperature::manage_heater() {
|
||||
|
||||
// Derived from RepRap FiveD extruder::getTemperature()
|
||||
// For hot end temperature measurement.
|
||||
float Temperature::analog_to_celsius_hotend(const int raw, const uint8_t e) {
|
||||
float Temperature::analog2temp(const int raw, const uint8_t e) {
|
||||
#if ENABLED(TEMP_SENSOR_1_AS_REDUNDANT)
|
||||
if (e > HOTENDS)
|
||||
#else
|
||||
@@ -986,7 +986,7 @@ float Temperature::analog_to_celsius_hotend(const int raw, const uint8_t e) {
|
||||
#if HAS_HEATED_BED
|
||||
// Derived from RepRap FiveD extruder::getTemperature()
|
||||
// For bed temperature measurement.
|
||||
float Temperature::analog_to_celsius_bed(const int raw) {
|
||||
float Temperature::analog2tempBed(const int raw) {
|
||||
#if ENABLED(HEATER_BED_USES_THERMISTOR)
|
||||
SCAN_THERMISTOR_TABLE(BEDTEMPTABLE, BEDTEMPTABLE_LEN);
|
||||
#elif ENABLED(HEATER_BED_USES_AD595)
|
||||
@@ -1002,7 +1002,7 @@ float Temperature::analog_to_celsius_hotend(const int raw, const uint8_t e) {
|
||||
#if HAS_TEMP_CHAMBER
|
||||
// Derived from RepRap FiveD extruder::getTemperature()
|
||||
// For chamber temperature measurement.
|
||||
float Temperature::analog_to_celsius_chamber(const int raw) {
|
||||
float Temperature::analog2tempChamber(const int raw) {
|
||||
#if ENABLED(HEATER_CHAMBER_USES_THERMISTOR)
|
||||
SCAN_THERMISTOR_TABLE(CHAMBERTEMPTABLE, CHAMBERTEMPTABLE_LEN);
|
||||
#elif ENABLED(HEATER_CHAMBER_USES_AD595)
|
||||
@@ -1021,22 +1021,22 @@ float Temperature::analog_to_celsius_hotend(const int raw, const uint8_t e) {
|
||||
* and this function is called from normal context
|
||||
* as it would block the stepper routine.
|
||||
*/
|
||||
void Temperature::calculate_celsius_temperatures() {
|
||||
void Temperature::updateTemperaturesFromRawValues() {
|
||||
#if ENABLED(HEATER_0_USES_MAX6675)
|
||||
current_temperature_raw[0] = read_max6675();
|
||||
#endif
|
||||
HOTEND_LOOP() current_temperature[e] = analog_to_celsius_hotend(current_temperature_raw[e], e);
|
||||
HOTEND_LOOP() current_temperature[e] = Temperature::analog2temp(current_temperature_raw[e], e);
|
||||
#if HAS_HEATED_BED
|
||||
current_temperature_bed = analog_to_celsius_bed(current_temperature_bed_raw);
|
||||
current_temperature_bed = Temperature::analog2tempBed(current_temperature_bed_raw);
|
||||
#endif
|
||||
#if HAS_TEMP_CHAMBER
|
||||
current_temperature_chamber = analog_to_celsius_chamber(current_temperature_chamber_raw);
|
||||
current_temperature_chamber = Temperature::analog2tempChamber(current_temperature_chamber_raw);
|
||||
#endif
|
||||
#if ENABLED(TEMP_SENSOR_1_AS_REDUNDANT)
|
||||
redundant_temperature = analog_to_celsius_hotend(redundant_temperature_raw, 1);
|
||||
redundant_temperature = Temperature::analog2temp(redundant_temperature_raw, 1);
|
||||
#endif
|
||||
#if ENABLED(FILAMENT_WIDTH_SENSOR)
|
||||
filament_width_meas = analog_to_mm_fil_width();
|
||||
filament_width_meas = analog2widthFil();
|
||||
#endif
|
||||
|
||||
#if ENABLED(USE_WATCHDOG)
|
||||
@@ -1051,7 +1051,7 @@ void Temperature::calculate_celsius_temperatures() {
|
||||
#if ENABLED(FILAMENT_WIDTH_SENSOR)
|
||||
|
||||
// Convert raw Filament Width to millimeters
|
||||
float Temperature::analog_to_mm_fil_width() {
|
||||
float Temperature::analog2widthFil() {
|
||||
return current_raw_filwidth * 5.0f * (1.0f / 16383.0);
|
||||
}
|
||||
|
||||
@@ -1251,7 +1251,7 @@ void Temperature::init() {
|
||||
|
||||
#define TEMP_MIN_ROUTINE(NR) \
|
||||
minttemp[NR] = HEATER_ ##NR## _MINTEMP; \
|
||||
while (analog_to_celsius_hotend(minttemp_raw[NR], NR) < HEATER_ ##NR## _MINTEMP) { \
|
||||
while (analog2temp(minttemp_raw[NR], NR) < HEATER_ ##NR## _MINTEMP) { \
|
||||
if (HEATER_ ##NR## _RAW_LO_TEMP < HEATER_ ##NR## _RAW_HI_TEMP) \
|
||||
minttemp_raw[NR] += OVERSAMPLENR; \
|
||||
else \
|
||||
@@ -1259,7 +1259,7 @@ void Temperature::init() {
|
||||
}
|
||||
#define TEMP_MAX_ROUTINE(NR) \
|
||||
maxttemp[NR] = HEATER_ ##NR## _MAXTEMP; \
|
||||
while (analog_to_celsius_hotend(maxttemp_raw[NR], NR) > HEATER_ ##NR## _MAXTEMP) { \
|
||||
while (analog2temp(maxttemp_raw[NR], NR) > HEATER_ ##NR## _MAXTEMP) { \
|
||||
if (HEATER_ ##NR## _RAW_LO_TEMP < HEATER_ ##NR## _RAW_HI_TEMP) \
|
||||
maxttemp_raw[NR] -= OVERSAMPLENR; \
|
||||
else \
|
||||
@@ -1307,7 +1307,7 @@ void Temperature::init() {
|
||||
|
||||
#if HAS_HEATED_BED
|
||||
#ifdef BED_MINTEMP
|
||||
while (analog_to_celsius_bed(bed_minttemp_raw) < BED_MINTEMP) {
|
||||
while (analog2tempBed(bed_minttemp_raw) < BED_MINTEMP) {
|
||||
#if HEATER_BED_RAW_LO_TEMP < HEATER_BED_RAW_HI_TEMP
|
||||
bed_minttemp_raw += OVERSAMPLENR;
|
||||
#else
|
||||
@@ -1316,7 +1316,7 @@ void Temperature::init() {
|
||||
}
|
||||
#endif // BED_MINTEMP
|
||||
#ifdef BED_MAXTEMP
|
||||
while (analog_to_celsius_bed(bed_maxttemp_raw) > BED_MAXTEMP) {
|
||||
while (analog2tempBed(bed_maxttemp_raw) > BED_MAXTEMP) {
|
||||
#if HEATER_BED_RAW_LO_TEMP < HEATER_BED_RAW_HI_TEMP
|
||||
bed_maxttemp_raw -= OVERSAMPLENR;
|
||||
#else
|
||||
|
||||
+10
-10
@@ -318,13 +318,13 @@ class Temperature {
|
||||
/**
|
||||
* Static (class) methods
|
||||
*/
|
||||
static float analog_to_celsius_hotend(const int raw, const uint8_t e);
|
||||
static float analog2temp(const int raw, const uint8_t e);
|
||||
|
||||
#if HAS_HEATED_BED
|
||||
static float analog_to_celsius_bed(const int raw);
|
||||
static float analog2tempBed(const int raw);
|
||||
#endif
|
||||
#if HAS_TEMP_CHAMBER
|
||||
static float analog_to_celsius_chamber(const int raw);
|
||||
static float analog2tempChamber(const int raw);
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -365,7 +365,7 @@ class Temperature {
|
||||
#endif
|
||||
|
||||
#if ENABLED(FILAMENT_WIDTH_SENSOR)
|
||||
static float analog_to_mm_fil_width(); // Convert raw Filament Width to millimeters
|
||||
static float analog2widthFil(); // Convert raw Filament Width to millimeters
|
||||
static int8_t widthFil_to_size_ratio(); // Convert Filament Width (mm) to an extrusion ratio
|
||||
#endif
|
||||
|
||||
@@ -414,7 +414,7 @@ class Temperature {
|
||||
#if ENABLED(AUTO_POWER_CONTROL)
|
||||
powerManager.power_on();
|
||||
#endif
|
||||
target_temperature[HOTEND_INDEX] = MIN(celsius, maxttemp[HOTEND_INDEX] - 15);
|
||||
target_temperature[HOTEND_INDEX] = celsius;
|
||||
#if WATCH_HOTENDS
|
||||
start_watching_heater(HOTEND_INDEX);
|
||||
#endif
|
||||
@@ -449,7 +449,7 @@ class Temperature {
|
||||
#endif
|
||||
target_temperature_bed =
|
||||
#ifdef BED_MAXTEMP
|
||||
MIN(celsius, BED_MAXTEMP - 15)
|
||||
MIN(celsius, BED_MAXTEMP)
|
||||
#else
|
||||
celsius
|
||||
#endif
|
||||
@@ -489,13 +489,13 @@ class Temperature {
|
||||
* Perform auto-tuning for hotend or bed in response to M303
|
||||
*/
|
||||
#if HAS_PID_HEATING
|
||||
static void pid_autotune(const float &target, const int8_t hotend, const int8_t ncycles, const bool set_result=false);
|
||||
static void PID_autotune(const float &target, const int8_t hotend, const int8_t ncycles, const bool set_result=false);
|
||||
|
||||
/**
|
||||
* Update the temp manager when PID values change
|
||||
*/
|
||||
#if ENABLED(PIDTEMP)
|
||||
FORCE_INLINE static void update_pid() {
|
||||
FORCE_INLINE static void updatePID() {
|
||||
#if ENABLED(PID_EXTRUSION_SCALING)
|
||||
last_e_position = 0;
|
||||
#endif
|
||||
@@ -612,13 +612,13 @@ class Temperature {
|
||||
|
||||
static void set_current_temp_raw();
|
||||
|
||||
static void calculate_celsius_temperatures();
|
||||
static void updateTemperaturesFromRawValues();
|
||||
|
||||
#if ENABLED(HEATER_0_USES_MAX6675)
|
||||
static int read_max6675();
|
||||
#endif
|
||||
|
||||
static void check_extruder_auto_fans();
|
||||
static void checkExtruderAutoFans();
|
||||
|
||||
static float get_pid_output(const int8_t e);
|
||||
|
||||
|
||||
+2
-5
@@ -210,11 +210,8 @@
|
||||
serialprintPGM(csv ? PSTR("CSV:\n") : PSTR("LCD:\n"));
|
||||
}
|
||||
|
||||
// Add XY_PROBE_OFFSET_FROM_EXTRUDER because probe_pt() subtracts these when
|
||||
// moving to the xy position to be measured. This ensures better agreement between
|
||||
// the current Z position after G28 and the mesh values.
|
||||
const float current_xi = find_closest_x_index(current_position[X_AXIS] + X_PROBE_OFFSET_FROM_EXTRUDER),
|
||||
current_yi = find_closest_y_index(current_position[Y_AXIS] + Y_PROBE_OFFSET_FROM_EXTRUDER);
|
||||
const float current_xi = get_cell_index_x(current_position[X_AXIS] + (MESH_X_DIST) / 2.0),
|
||||
current_yi = get_cell_index_y(current_position[Y_AXIS] + (MESH_Y_DIST) / 2.0);
|
||||
|
||||
if (!lcd) SERIAL_EOL();
|
||||
for (int8_t j = GRID_MAX_POINTS_Y - 1; j >= 0; j--) {
|
||||
|
||||
+2
-2
@@ -1287,8 +1287,8 @@
|
||||
out_mesh.distance = -99999.9f;
|
||||
|
||||
// Get our reference position. Either the nozzle or probe location.
|
||||
const float px = rx + (probe_as_reference == USE_PROBE_AS_REFERENCE ? X_PROBE_OFFSET_FROM_EXTRUDER : 0),
|
||||
py = ry + (probe_as_reference == USE_PROBE_AS_REFERENCE ? Y_PROBE_OFFSET_FROM_EXTRUDER : 0);
|
||||
const float px = rx - (probe_as_reference == USE_PROBE_AS_REFERENCE ? X_PROBE_OFFSET_FROM_EXTRUDER : 0),
|
||||
py = ry - (probe_as_reference == USE_PROBE_AS_REFERENCE ? Y_PROBE_OFFSET_FROM_EXTRUDER : 0);
|
||||
|
||||
float best_so_far = 99999.99f;
|
||||
|
||||
|
||||
+10
-13
@@ -1824,18 +1824,12 @@ void lcd_quick_feedback(const bool clear_buttons) {
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
|
||||
#ifndef LEVEL_CORNERS_Z_HOP
|
||||
#define LEVEL_CORNERS_Z_HOP 4.0
|
||||
#endif
|
||||
|
||||
static_assert(LEVEL_CORNERS_Z_HOP >= 0, "LEVEL_CORNERS_Z_HOP must be >= 0. Please update your configuration.");
|
||||
|
||||
/**
|
||||
* Level corners, starting in the front-left corner.
|
||||
*/
|
||||
static int8_t bed_corner;
|
||||
void _lcd_goto_next_corner() {
|
||||
line_to_z(LEVEL_CORNERS_Z_HOP);
|
||||
line_to_z(4.0);
|
||||
switch (bed_corner) {
|
||||
case 0:
|
||||
current_position[X_AXIS] = X_MIN_BED + LEVEL_CORNERS_INSET;
|
||||
@@ -2891,6 +2885,8 @@ void lcd_quick_feedback(const bool clear_buttons) {
|
||||
MENU_BACK(MSG_MAIN);
|
||||
#if ENABLED(DELTA_AUTO_CALIBRATION)
|
||||
MENU_ITEM(gcode, MSG_DELTA_AUTO_CALIBRATE, PSTR("G33"));
|
||||
MENU_ITEM(gcode, MSG_DELTA_HEIGHT_CALIBRATE, PSTR("G33 P1"));
|
||||
MENU_ITEM(gcode, MSG_DELTA_Z_OFFSET_CALIBRATE, PSTR("G33 P-1"));
|
||||
#if ENABLED(EEPROM_SETTINGS)
|
||||
MENU_ITEM(function, MSG_STORE_EEPROM, lcd_store_settings);
|
||||
MENU_ITEM(function, MSG_LOAD_EEPROM, lcd_load_settings);
|
||||
@@ -3414,14 +3410,14 @@ void lcd_quick_feedback(const bool clear_buttons) {
|
||||
UNUSED(e);
|
||||
#endif
|
||||
PID_PARAM(Ki, e) = scalePID_i(raw_Ki);
|
||||
thermalManager.update_pid();
|
||||
thermalManager.updatePID();
|
||||
}
|
||||
void copy_and_scalePID_d(int16_t e) {
|
||||
#if DISABLED(PID_PARAMS_PER_HOTEND) || HOTENDS == 1
|
||||
UNUSED(e);
|
||||
#endif
|
||||
PID_PARAM(Kd, e) = scalePID_d(raw_Kd);
|
||||
thermalManager.update_pid();
|
||||
thermalManager.updatePID();
|
||||
}
|
||||
#define _DEFINE_PIDTEMP_BASE_FUNCS(N) \
|
||||
void copy_and_scalePID_i_E ## N() { copy_and_scalePID_i(N); } \
|
||||
@@ -3524,7 +3520,7 @@ void lcd_quick_feedback(const bool clear_buttons) {
|
||||
MENU_ITEM_EDIT(bool, MSG_AUTOTEMP, &planner.autotemp_enabled);
|
||||
MENU_ITEM_EDIT(float3, MSG_MIN, &planner.autotemp_min, 0, float(HEATER_0_MAXTEMP) - 15);
|
||||
MENU_ITEM_EDIT(float3, MSG_MAX, &planner.autotemp_max, 0, float(HEATER_0_MAXTEMP) - 15);
|
||||
MENU_ITEM_EDIT(float52, MSG_FACTOR, &planner.autotemp_factor, 0, 10);
|
||||
MENU_ITEM_EDIT(float52, MSG_FACTOR, &planner.autotemp_factor, 0, 1);
|
||||
#endif
|
||||
|
||||
//
|
||||
@@ -5606,14 +5602,15 @@ void lcd_reset_alert_level() { lcd_status_message_level = 0; }
|
||||
|
||||
#endif // LCD_HAS_DIRECTIONAL_BUTTONS
|
||||
|
||||
#if ENABLED(LCD_HAS_SLOW_BUTTONS)
|
||||
newbutton |= slow_buttons;
|
||||
#endif
|
||||
buttons = newbutton;
|
||||
#if ENABLED(LCD_HAS_SLOW_BUTTONS)
|
||||
buttons |= slow_buttons;
|
||||
#endif
|
||||
|
||||
#if ENABLED(ADC_KEYPAD)
|
||||
|
||||
uint8_t newbutton_reprapworld_keypad = 0;
|
||||
buttons = 0;
|
||||
if (buttons_reprapworld_keypad == 0) {
|
||||
newbutton_reprapworld_keypad = get_ADC_keyValue();
|
||||
if (WITHIN(newbutton_reprapworld_keypad, 1, 8))
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SED=$(which gsed || which sed)
|
||||
|
||||
for opt in "$@" ; do
|
||||
eval "${SED} -i 's/\([[:blank:]]*\)\(#define \b${opt}\b\)/\1\/\/\2/g' Marlin/Configuration.h"
|
||||
eval "sed -i 's/\([[:blank:]]*\)\(#define \b${opt}\b\)/\1\/\/\2/g' Marlin/Configuration.h"
|
||||
done
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SED=$(which gsed || which sed)
|
||||
|
||||
for opt in "$@" ; do
|
||||
eval "${SED} -i 's/\([[:blank:]]*\)\(#define \b${opt}\b\)/\1\/\/\2/g' Marlin/Configuration_adv.h"
|
||||
eval "sed -i 's/\([[:blank:]]*\)\(#define \b${opt}\b\)/\1\/\/\2/g' Marlin/Configuration_adv.h"
|
||||
done
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SED=$(which gsed || which sed)
|
||||
|
||||
for opt in "$@" ; do
|
||||
eval "${SED} -i 's/\/\/[[:blank:]]*\(#define \b${opt}\b\)/\1/g' Marlin/Configuration.h"
|
||||
eval "sed -i 's/\/\/[[:blank:]]*\(#define \b${opt}\b\)/\1/g' Marlin/Configuration.h"
|
||||
done
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SED=$(which gsed || which sed)
|
||||
|
||||
for opt in "$@" ; do
|
||||
eval "${SED} -i 's/\/\/[[:blank:]]*\(#define \b${opt}\b\)/\1/g' Marlin/Configuration_adv.h"
|
||||
eval "sed -i 's/\/\/[[:blank:]]*\(#define \b${opt}\b\)/\1/g' Marlin/Configuration_adv.h"
|
||||
done
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SED=$(which gsed || which sed)
|
||||
|
||||
eval "${SED} -i 's/\(#define \b${1}\b\).*$/\1 ${2}/g' Marlin/Configuration.h"
|
||||
eval "sed -i 's/\(#define \b${1}\b\).*$/\1 ${2}/g' Marlin/Configuration.h"
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SED=$(which gsed || which sed)
|
||||
|
||||
eval "${SED} -i 's/\(#define \b${1}\b\).*$/\1 ${2}/g' Marlin/Configuration_adv.h"
|
||||
eval "sed -i 's/\(#define \b${1}\b\).*$/\1 ${2}/g' Marlin/Configuration_adv.h"
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
SED=$(which gsed || which sed)
|
||||
|
||||
eval "${SED} -i 's/\(#define \b${2}\b\).*$/\1 ${3}/g' Marlin/src/pins/pins_${1}.h"
|
||||
eval "sed -i 's/\(#define \b${2}\b\).*$/\1 ${3}/g' Marlin/pins_${1}.h"
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# travis_at_home
|
||||
#
|
||||
# Run all Travis test builds at home to save time finding typos
|
||||
# Make sure to have 'arduino' somewhere in your PATH
|
||||
#
|
||||
|
||||
LOG="travis-out.txt"
|
||||
|
||||
cd `dirname "$0"`/../..
|
||||
|
||||
TRAVIS_BUILD_DIR=`pwd`
|
||||
echo $'Tests for '$TRAVIS_BUILD_DIR$' ...\n' >"$LOG"
|
||||
|
||||
# Add a temporary execution PATH
|
||||
export PATH="./buildroot/bin:$PATH"
|
||||
|
||||
# Scan .travis.yml and run config/build commands only
|
||||
X=1
|
||||
while read P; do
|
||||
|
||||
# Command lines start with a hyphen
|
||||
if [[ $P =~ ^-\ (([^ ]+)(\ .*)?)$ ]]; then
|
||||
WORD="${BASH_REMATCH[2]}" ; # The first word
|
||||
CMD="${BASH_REMATCH[1]}" ; # The whole command
|
||||
RUN=1 ; BUILD=0
|
||||
case "$WORD" in
|
||||
cp|opt_*|pins_*|use_*|restore_*|gen*) ;;
|
||||
build_*) BUILD=1 ;;
|
||||
*) RUN=0 ;;
|
||||
esac
|
||||
|
||||
# Runnable command
|
||||
if [[ $RUN == 1 ]]; then
|
||||
echo "$CMD" >>"$LOG"
|
||||
RESULT=$( eval "$CMD >>\"$LOG\" 2>&1" )
|
||||
if [[ $BUILD == 1 ]]; then
|
||||
echo "--- Build $X done."
|
||||
echo >>"$LOG"
|
||||
X=$((X+1))
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
done <.travis.yml
|
||||
|
||||
cd - >/dev/null
|
||||
@@ -1,20 +0,0 @@
|
||||
{
|
||||
"build": {
|
||||
"core": "teensy",
|
||||
"extra_flags": "-DTEENSY2PP",
|
||||
"f_cpu": "16000000L",
|
||||
"mcu": "at90usb1286"
|
||||
},
|
||||
"frameworks": [
|
||||
"arduino"
|
||||
],
|
||||
"name": "at90usb1286.json",
|
||||
"upload": {
|
||||
"maximum_ram_size": 8192,
|
||||
"maximum_size": 122880,
|
||||
"require_upload_port": true,
|
||||
"protocol": ""
|
||||
},
|
||||
"url": "https://github.com/MarlinFirmware/Marlin",
|
||||
"vendor": "various"
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
#######################################
|
||||
#
|
||||
# Revision: 2.0.1
|
||||
#
|
||||
# Description: script to automate PlatformIO builds
|
||||
# CLI: python auto_build.py build_option
|
||||
# build_option (required)
|
||||
@@ -71,13 +69,6 @@
|
||||
import sys
|
||||
import os
|
||||
|
||||
pwd = os.getcwd() # make sure we're executing from the correct directory level
|
||||
pwd = pwd.replace('\\', '/')
|
||||
if 0 <= pwd.find('buildroot/share/atom'):
|
||||
pwd = pwd[ : pwd.find('buildroot/share/atom')]
|
||||
os.chdir(pwd)
|
||||
print 'pwd: ', pwd
|
||||
|
||||
num_args = len(sys.argv)
|
||||
if num_args > 1:
|
||||
build_type = str(sys.argv[1])
|
||||
@@ -98,14 +89,6 @@ else:
|
||||
print "This script only runs under python 2"
|
||||
exit()
|
||||
|
||||
import platform
|
||||
current_OS = platform.system()
|
||||
|
||||
#globals
|
||||
target_env = ''
|
||||
board_name = ''
|
||||
|
||||
|
||||
#########
|
||||
# Python 2 error messages:
|
||||
# Can't find a usable init.tcl in the following directories ...
|
||||
@@ -118,17 +101,11 @@ board_name = ''
|
||||
# reboot
|
||||
#########
|
||||
|
||||
#
|
||||
# data/definitions used by memory check routine to determine if need to
|
||||
# insert % memory used
|
||||
#
|
||||
mem_check_environments = ('at90USB1286_CDC', 'at90USB1286_DFU')
|
||||
mem_check_builds = ('upload', 'program')
|
||||
FLASH_MAX = 128 * 1024 - 4 * 1024 # DFU & CDC bootloaders start at word address F800
|
||||
RAM_MAX = 8 * 1024
|
||||
FLASH_PERCENT_WARN = 0.90
|
||||
RAM_SYSTEM = 1024 # assume that 1K bytes is enough for stack, heap. ...
|
||||
RAM_WARN = RAM_SYSTEM * 1.5
|
||||
#globals
|
||||
target_env = ''
|
||||
board_name = ''
|
||||
|
||||
|
||||
|
||||
##########################################################################################
|
||||
#
|
||||
@@ -214,212 +191,28 @@ def get_answer(board_name, cpu_label_txt, cpu_a_txt, cpu_b_txt):
|
||||
# end - get answer
|
||||
|
||||
|
||||
#
|
||||
# move custom board definitions from project folder to PlatformIO
|
||||
#
|
||||
def resolve_path(path):
|
||||
import os
|
||||
|
||||
# turn the selection into a partial path
|
||||
def env_name_check(argument):
|
||||
name_check = {
|
||||
'teensy35' : True,
|
||||
'teensy20' : True,
|
||||
'STM32F4' : True,
|
||||
'STM32F1' : True,
|
||||
'sanguino_atmega644p' : True,
|
||||
'sanguino_atmega1284p' : True,
|
||||
'rambo' : True,
|
||||
'melzi_optiboot' : True,
|
||||
'melzi' : True,
|
||||
'megaatmega2560' : True,
|
||||
'megaatmega1280' : True,
|
||||
'malyanm200' : True,
|
||||
'LPC1768' : True,
|
||||
'DUE_debug' : True,
|
||||
'DUE_USB' : True,
|
||||
'DUE' : True
|
||||
}
|
||||
|
||||
if 0 <= path.find('"'):
|
||||
path = path[ path.find('"') : ]
|
||||
if 0 <= path.find(', line '):
|
||||
path = path.replace(', line ', ':')
|
||||
path = path.replace('"', '')
|
||||
|
||||
#get line and column numbers
|
||||
line_num = 1
|
||||
column_num = 1
|
||||
line_start = path.find(':', 2) # use 2 here so don't eat Windows full path
|
||||
column_start = path.find(':', line_start + 1)
|
||||
if column_start == -1:
|
||||
column_start = len(path)
|
||||
column_end = path.find(':', column_start + 1)
|
||||
if column_end == -1:
|
||||
column_end = len(path)
|
||||
if 0 <= line_start:
|
||||
line_num = path[ line_start + 1 : column_start]
|
||||
if line_num == '':
|
||||
line_num = 1
|
||||
if not(column_start == column_end):
|
||||
column_num = path[ column_start + 1 : column_end]
|
||||
if column_num == '':
|
||||
column_num = 0
|
||||
|
||||
index_end = path.find(',')
|
||||
if 0 <= index_end:
|
||||
path = path[ : index_end] # delete comma and anything after
|
||||
index_end = path.find(':', 2)
|
||||
if 0 <= index_end:
|
||||
path = path[ : path.find(':', 2)] # delete the line number and anything after
|
||||
|
||||
path = path.replace('\\','/')
|
||||
|
||||
if 1 == path.find(':') and current_OS == 'Windows':
|
||||
return path, line_num, column_num # found a full path - no need for further processing
|
||||
elif 0 == path.find('/') and (current_OS == 'Linux' or current_OS == 'Darwin'):
|
||||
return path, line_num, column_num # found a full path - no need for further processing
|
||||
|
||||
else:
|
||||
|
||||
# resolve as many '../' as we can
|
||||
while 0 <= path.find('../'):
|
||||
end = path.find('../') - 1
|
||||
start = path.find('/')
|
||||
while 0 <= path.find('/',start) and end > path.find('/',start):
|
||||
start = path.find('/',start) + 1
|
||||
path = path[0:start] + path[end + 4: ]
|
||||
|
||||
# this is an alternative to the above - it just deletes the '../' section
|
||||
# start_temp = path.find('../')
|
||||
# while 0 <= path.find('../',start_temp):
|
||||
# start = path.find('../',start_temp)
|
||||
# start_temp = start + 1
|
||||
# if 0 <= start:
|
||||
# path = path[start + 2 : ]
|
||||
|
||||
|
||||
start = path.find('/')
|
||||
if not(0 == start): # make sure path starts with '/'
|
||||
while 0 == path.find(' '): # eat any spaces at the beginning
|
||||
path = path[ 1 : ]
|
||||
path = '/' + path
|
||||
|
||||
if current_OS == 'Windows':
|
||||
search_path = path.replace('/', '\\') # os.walk uses '\' in Windows
|
||||
else:
|
||||
search_path = path
|
||||
|
||||
start_path = os.path.abspath('')
|
||||
|
||||
# search project directory for the selection
|
||||
found = False
|
||||
full_path = ''
|
||||
for root, directories, filenames in os.walk(start_path):
|
||||
for filename in filenames:
|
||||
if 0 <= root.find('.git'): # don't bother looking in this directory
|
||||
break
|
||||
full_path = os.path.join(root,filename)
|
||||
if 0 <= full_path.find(search_path):
|
||||
found = True
|
||||
break
|
||||
if found:
|
||||
break
|
||||
|
||||
return full_path, line_num, column_num
|
||||
|
||||
# end - resolve_path
|
||||
|
||||
|
||||
#
|
||||
# Opens the file in the preferred editor at the line & column number
|
||||
# If the preferred editor isn't already running then it tries the next.
|
||||
# If none are open then the system default is used.
|
||||
#
|
||||
# Editor order:
|
||||
# 1. Notepad++ (Windows only)
|
||||
# 2. Sublime Text
|
||||
# 3. Atom
|
||||
# 4. System default (opens at line 1, column 1 only)
|
||||
#
|
||||
def open_file(path):
|
||||
import subprocess
|
||||
file_path, line_num, column_num = resolve_path(path)
|
||||
|
||||
if file_path == '' :
|
||||
return
|
||||
|
||||
if current_OS == 'Windows':
|
||||
|
||||
editor_note = subprocess.check_output('wmic process where "name=' + "'notepad++.exe'" + '" get ExecutablePath')
|
||||
editor_sublime = subprocess.check_output('wmic process where "name=' + "'sublime_text.exe'" + '" get ExecutablePath')
|
||||
editor_atom = subprocess.check_output('wmic process where "name=' + "'atom.exe'" + '" get ExecutablePath')
|
||||
|
||||
if 0 <= editor_note.find('notepad++.exe'):
|
||||
start = editor_note.find('\n') + 1
|
||||
end = editor_note.find('\n',start + 5) -4
|
||||
editor_note = editor_note[ start : end]
|
||||
command = file_path , ' -n' + str(line_num) , ' -c' + str(column_num)
|
||||
subprocess.Popen([editor_note, command])
|
||||
|
||||
elif 0 <= editor_sublime.find('sublime_text.exe'):
|
||||
start = editor_sublime.find('\n') + 1
|
||||
end = editor_sublime.find('\n',start + 5) -4
|
||||
editor_sublime = editor_sublime[ start : end]
|
||||
command = file_path + ':' + line_num + ':' + column_num
|
||||
subprocess.Popen([editor_sublime, command])
|
||||
|
||||
elif 0 <= editor_atom.find('atom.exe'):
|
||||
start = editor_atom.find('\n') + 1
|
||||
end = editor_atom.find('\n',start + 5) -4
|
||||
editor_atom = editor_atom[ start : end]
|
||||
command = file_path + ':' + str(line_num) + ':' + str(column_num)
|
||||
subprocess.Popen([editor_atom, command])
|
||||
|
||||
else:
|
||||
os.startfile(resolve_path(path)) # open file with default app
|
||||
|
||||
elif current_OS == 'Linux':
|
||||
|
||||
command = file_path + ':' + str(line_num) + ':' + str(column_num)
|
||||
index_end = command.find(',')
|
||||
if 0 <= index_end:
|
||||
command = command[ : index_end] # sometimes a comma magically appears, don't want it
|
||||
running_apps = subprocess.Popen('ps ax -o cmd', stdout=subprocess.PIPE, shell=True)
|
||||
(output, err) = running_apps.communicate()
|
||||
temp = output.split('\n')
|
||||
|
||||
def find_editor_linux(name, search_obj):
|
||||
for line in search_obj:
|
||||
if 0 <= line.find(name):
|
||||
path = line
|
||||
return True, path
|
||||
return False , ''
|
||||
|
||||
(success_sublime, editor_path_sublime) = find_editor_linux('sublime_text',temp)
|
||||
(success_atom, editor_path_atom) = find_editor_linux('atom',temp)
|
||||
|
||||
if success_sublime:
|
||||
subprocess.Popen([editor_path_sublime, command])
|
||||
|
||||
elif success_atom:
|
||||
subprocess.Popen([editor_path_atom, command])
|
||||
|
||||
else:
|
||||
os.system('xdg-open ' + file_path )
|
||||
|
||||
elif current_OS == 'Darwin': # MAC
|
||||
|
||||
command = file_path + ':' + str(line_num) + ':' + str(column_num)
|
||||
index_end = command.find(',')
|
||||
if 0 <= index_end:
|
||||
command = command[ : index_end] # sometimes a comma magically appears, don't want it
|
||||
running_apps = subprocess.Popen('ps axwww -o command', stdout=subprocess.PIPE, shell=True)
|
||||
(output, err) = running_apps.communicate()
|
||||
temp = output.split('\n')
|
||||
|
||||
def find_editor_mac(name, search_obj):
|
||||
for line in search_obj:
|
||||
if 0 <= line.find(name):
|
||||
path = line
|
||||
if 0 <= path.find('-psn'):
|
||||
path = path[ : path.find('-psn') - 1 ]
|
||||
return True, path
|
||||
return False , ''
|
||||
|
||||
(success_sublime, editor_path_sublime) = find_editor_mac('Sublime',temp)
|
||||
(success_atom, editor_path_atom) = find_editor_mac('Atom',temp)
|
||||
|
||||
if success_sublime:
|
||||
subprocess.Popen([editor_path_sublime, command])
|
||||
|
||||
elif success_atom:
|
||||
subprocess.Popen([editor_path_atom, command])
|
||||
|
||||
else:
|
||||
os.system('open ' + file_path )
|
||||
# end - open_file
|
||||
return name_check.get(argument, False)
|
||||
|
||||
|
||||
# gets the last build environment
|
||||
@@ -430,16 +223,14 @@ def get_build_last():
|
||||
date_last = 0.0
|
||||
DIR__pioenvs = os.listdir('.pioenvs')
|
||||
for name in DIR__pioenvs:
|
||||
if 0 <= name.find('.') or 0 <= name.find('-'): # skip files in listing
|
||||
continue
|
||||
DIR_temp = os.listdir('.pioenvs/' + name)
|
||||
for names_temp in DIR_temp:
|
||||
|
||||
if 0 == names_temp.find('firmware.'):
|
||||
date_temp = os.path.getmtime('.pioenvs/' + name + '/' + names_temp)
|
||||
if date_temp > date_last:
|
||||
date_last = date_temp
|
||||
env_last = name
|
||||
if env_name_check(name):
|
||||
DIR_temp = os.listdir('.pioenvs/' + name)
|
||||
for names_temp in DIR_temp:
|
||||
if 0 == names_temp.find('firmware.'):
|
||||
date_temp = os.path.getmtime('.pioenvs/' + name + '/' + names_temp)
|
||||
if date_temp > date_last:
|
||||
date_last = date_temp
|
||||
env_last = name
|
||||
return env_last
|
||||
|
||||
|
||||
@@ -505,10 +296,6 @@ def get_starting_env(board_name_full, version):
|
||||
with open(path, 'r') as myfile:
|
||||
pins_h = myfile.read()
|
||||
|
||||
env_A = ''
|
||||
env_B = ''
|
||||
env_C = ''
|
||||
|
||||
board_name = board_name_full[ 6 : ] # only use the part after "BOARD_" since we're searching the pins.h file
|
||||
pins_h = pins_h.split('\n')
|
||||
environment = ''
|
||||
@@ -563,10 +350,10 @@ def get_env(board_name, ver_Marlin):
|
||||
raise SystemExit(0) # quit if unable to find board
|
||||
|
||||
|
||||
CPU_question = ( ('1280', '2560', " 1280 or 2560 CPU? "), ('644', '1284', " 644 or 1284 CPU? ") )
|
||||
CPU_question = ( ('1280', '2560', "1280 or 2560 CPU?"), ('644', '1284', "644 or 1284 CPU?") )
|
||||
|
||||
if 0 < board_name.find('MELZI') :
|
||||
get_answer(' ' + board_name + ' ', " Which flavor of Melzi? ", "Melzi (Optiboot bootloader)", "Melzi ")
|
||||
get_answer(board_name, "Which flavor of Melzi?", "Melzi (Optiboot bootloader)", "Melzi ")
|
||||
if 1 == get_answer_val:
|
||||
target_env = 'melzi_optiboot'
|
||||
else:
|
||||
@@ -584,7 +371,7 @@ def get_env(board_name, ver_Marlin):
|
||||
|
||||
for item in CPU_question:
|
||||
if CPU_A == item[0]:
|
||||
get_answer(' ' + board_name + ' ', item[2], item[0], item[1])
|
||||
get_answer(board_name, item[2], item[0], item[1])
|
||||
if 2 == get_answer_val:
|
||||
target_env = env_B
|
||||
else:
|
||||
@@ -601,7 +388,7 @@ def get_env(board_name, ver_Marlin):
|
||||
if build_type == 'traceback' or (build_type == 'clean' and get_build_last() == 'DUE_debug'):
|
||||
target_env = 'DUE_debug'
|
||||
elif env_B == 'DUE_USB':
|
||||
get_answer(' ' + board_name + ' ', " DUE: need download port ", "USB (native USB) port", "Programming port ")
|
||||
get_answer(board_name, "DUE: need download port", "USB (native USB) port", "Programming port ")
|
||||
if 1 == get_answer_val:
|
||||
target_env = 'DUE_USB'
|
||||
else:
|
||||
@@ -621,7 +408,6 @@ def get_env(board_name, ver_Marlin):
|
||||
# puts screen text into queue so that the parent thread can fetch the data from this thread
|
||||
import Queue
|
||||
IO_queue = Queue.Queue()
|
||||
PIO_queue = Queue.Queue()
|
||||
def write_to_screen_queue(text, format_tag = 'normal'):
|
||||
double_in = [text, format_tag]
|
||||
IO_queue.put(double_in, block = False)
|
||||
@@ -645,7 +431,6 @@ standard = True
|
||||
prev_line_COM = False
|
||||
next_line_warning = False
|
||||
warning_continue = False
|
||||
line_counter = 0
|
||||
|
||||
def line_print(line_input):
|
||||
|
||||
@@ -656,7 +441,6 @@ def line_print(line_input):
|
||||
global prev_line_COM
|
||||
global next_line_warning
|
||||
global warning_continue
|
||||
global line_counter
|
||||
|
||||
|
||||
|
||||
@@ -706,19 +490,12 @@ def line_print(line_input):
|
||||
write_to_screen_queue(text[found_right : ] + '\n')
|
||||
break
|
||||
if did_something == False:
|
||||
r_loc = text.find('\r') + 1
|
||||
if r_loc > 0 and r_loc < len(text): # need to split this line
|
||||
text = text.split('\r')
|
||||
for line in text:
|
||||
write_to_screen_queue(line + '\n')
|
||||
else:
|
||||
write_to_screen_queue(text + '\n')
|
||||
write_to_screen_queue(text + '\n')
|
||||
# end - write_to_screen_with_replace
|
||||
|
||||
|
||||
|
||||
# scan the line
|
||||
line_counter = line_counter + 1
|
||||
max_search = len(line_input)
|
||||
if max_search > 3 :
|
||||
max_search = 3
|
||||
@@ -733,14 +510,7 @@ def line_print(line_input):
|
||||
prev_line_COM = False
|
||||
prev_line_COM = False
|
||||
warning_continue = True
|
||||
if 0 < line_input.find('Thank you') or 0 < line_input.find('SUMMARY') :
|
||||
warning = False #standard line found
|
||||
warning_FROM = False
|
||||
error = False
|
||||
standard = True
|
||||
prev_line_COM = False
|
||||
warning_continue = False
|
||||
elif beginning == 'War' or \
|
||||
if beginning == 'War' or \
|
||||
beginning == '#er' or \
|
||||
beginning == 'In ' or \
|
||||
(beginning != 'Com' and prev_line_COM == True and not(beginning == 'Arc' or beginning == 'Lin' or beginning == 'Ind') or \
|
||||
@@ -769,6 +539,11 @@ def line_print(line_input):
|
||||
error = True
|
||||
standard = False
|
||||
prev_line_COM = False
|
||||
|
||||
elif beginning == 'fro' and warning == True : # start of warning /error block
|
||||
warning_FROM = True
|
||||
prev_line_COM = False
|
||||
warning_continue = True
|
||||
elif 0 < line_input.find(': error:') or \
|
||||
0 < line_input.find(': fatal error:'): # start of warning /error block
|
||||
warning = False # error found
|
||||
@@ -777,14 +552,9 @@ def line_print(line_input):
|
||||
standard = False
|
||||
prev_line_COM = False
|
||||
warning_continue = True
|
||||
elif beginning == 'fro' and warning == True or \
|
||||
beginning == '.pi' : # start of warning /error block
|
||||
warning_FROM = True
|
||||
prev_line_COM = False
|
||||
warning_continue = True
|
||||
elif warning_continue == True:
|
||||
warning = True
|
||||
warning_FROM = False # keep the warning status going until find a standard line or an error
|
||||
warning_FROM = False # keep the warning status going until find a standard line
|
||||
error = False
|
||||
standard = False
|
||||
prev_line_COM = False
|
||||
@@ -838,7 +608,6 @@ def run_PIO(dummy):
|
||||
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
print 'starting platformio'
|
||||
|
||||
if build_type == 'build':
|
||||
@@ -895,7 +664,7 @@ def run_PIO(dummy):
|
||||
|
||||
# stream output from subprocess and split it into lines
|
||||
for line in iter(pio_subprocess.stdout.readline, ''):
|
||||
line_print(line.replace('\n', ''))
|
||||
line_print(line.replace('\n', ''))
|
||||
|
||||
|
||||
# append info used to run PlatformIO
|
||||
@@ -927,19 +696,10 @@ import tkFileDialog
|
||||
|
||||
|
||||
class output_window(Text):
|
||||
# based on Super Text
|
||||
|
||||
global continue_updates
|
||||
continue_updates = True
|
||||
|
||||
global search_position
|
||||
search_position = '' # start with invalid search position
|
||||
|
||||
global error_found
|
||||
error_found = False # are there any errors?
|
||||
|
||||
global memory_check_first_time
|
||||
memory_check_first_time = True # wants to run memory_check twice
|
||||
|
||||
|
||||
def __init__(self):
|
||||
|
||||
@@ -953,9 +713,7 @@ class output_window(Text):
|
||||
Text.__init__(self, self.frame, borderwidth=3, relief="sunken")
|
||||
self.config(tabs=(400,)) # configure Text widget tab stops
|
||||
self.config(background = 'black', foreground = 'white', font= ("consolas", 12), wrap = 'word', undo = 'True')
|
||||
# self.config(background = 'black', foreground = 'white', font= ("consolas", 12), wrap = 'none', undo = 'True')
|
||||
self.config(height = 24, width = 100)
|
||||
self.config(insertbackground = 'pale green') # keyboard insertion point
|
||||
self.config(height = 24, width = 120)
|
||||
self.pack(side='left', fill='both', expand=True)
|
||||
|
||||
self.tag_config('normal', foreground = 'white')
|
||||
@@ -963,12 +721,8 @@ class output_window(Text):
|
||||
self.tag_config('error', foreground = 'red')
|
||||
self.tag_config('highlight_green', foreground = 'green')
|
||||
self.tag_config('highlight_blue', foreground = 'cyan')
|
||||
self.tag_config('error_highlight_inactive', background = 'dim gray')
|
||||
self.tag_config('error_highlight_active', background = 'light grey')
|
||||
|
||||
self.bind_class("Text","<Control-a>", self.select_all) # required in windows, works in others
|
||||
self.bind_all("<Control-Shift-E>", self.scroll_errors)
|
||||
self.bind_class("<Control-Shift-R>", self.rebuild)
|
||||
# self.bind('<Control-Key-a>', self.select_all) # the event happens but the action doesn't
|
||||
|
||||
# scrollbar
|
||||
|
||||
@@ -976,50 +730,18 @@ class output_window(Text):
|
||||
self.config(yscrollcommand=scrb.set)
|
||||
scrb.pack(side='right', fill='y')
|
||||
|
||||
# self.scrb_Y = tk.Scrollbar(self.frame, orient='vertical', command=self.yview)
|
||||
# self.scrb_Y.config(yscrollcommand=self.scrb_Y.set)
|
||||
# self.scrb_Y.pack(side='right', fill='y')
|
||||
#
|
||||
# self.scrb_X = tk.Scrollbar(self.frame, orient='horizontal', command=self.xview)
|
||||
# self.scrb_X.config(xscrollcommand=self.scrb_X.set)
|
||||
# self.scrb_X.pack(side='bottom', fill='x')
|
||||
|
||||
# scrb_X = tk.Scrollbar(self, orient=tk.HORIZONTAL, command=self.xview) # tk.HORIZONTAL now have a horizsontal scroll bar BUT... shrinks it to a postage stamp and hides far right behind the vertical scroll bar
|
||||
# self.config(xscrollcommand=scrb_X.set)
|
||||
# scrb_X.pack(side='bottom', fill='x')
|
||||
#
|
||||
# scrb= tk.Scrollbar(self, orient='vertical', command=self.yview)
|
||||
# self.config(yscrollcommand=scrb.set)
|
||||
# scrb.pack(side='right', fill='y')
|
||||
|
||||
# self.config(height = 240, width = 1000) # didn't get the size baCK TO NORMAL
|
||||
# self.pack(side='left', fill='both', expand=True) # didn't get the size baCK TO NORMAL
|
||||
|
||||
|
||||
# pop-up menu
|
||||
self.popup = tk.Menu(self, tearoff=0)
|
||||
|
||||
self.popup.add_command(label='Cut', command=self._cut)
|
||||
self.popup.add_command(label='Copy', command=self._copy)
|
||||
self.popup.add_command(label='Paste', command=self._paste)
|
||||
self.popup.add_separator()
|
||||
self.popup.add_command(label='Cut', command=self._cut)
|
||||
self.popup.add_separator()
|
||||
self.popup.add_command(label='Select All', command=self._select_all)
|
||||
self.popup.add_command(label='Clear All', command=self._clear_all)
|
||||
self.popup.add_separator()
|
||||
self.popup.add_command(label='Save As', command=self._file_save_as)
|
||||
self.popup.add_separator()
|
||||
# self.popup.add_command(label='Repeat Build(CTL-shift-r)', command=self._rebuild)
|
||||
self.popup.add_command(label='Repeat Build', command=self._rebuild)
|
||||
self.popup.add_separator()
|
||||
self.popup.add_command(label='Scroll Errors (CTL-shift-e)', command=self._scroll_errors)
|
||||
self.popup.add_separator()
|
||||
self.popup.add_command(label='Open File at Cursor', command=self._open_selected_file)
|
||||
|
||||
if current_OS == 'Darwin': # MAC
|
||||
self.bind('<Button-2>', self._show_popup) # macOS only
|
||||
else:
|
||||
self.bind('<Button-3>', self._show_popup) # Windows & Linux
|
||||
self.bind('<Button-3>', self._show_popup)
|
||||
|
||||
|
||||
# threading & subprocess section
|
||||
@@ -1039,19 +761,18 @@ class output_window(Text):
|
||||
def check_thread(self): # wait for user to kill the window
|
||||
global continue_updates
|
||||
if continue_updates == True:
|
||||
self.root.after(10, self.check_thread)
|
||||
self.root.after(20, self.check_thread)
|
||||
|
||||
|
||||
def update(self):
|
||||
global continue_updates
|
||||
if continue_updates == True:
|
||||
self.root.after(10, self.update)#method is called every 50ms
|
||||
self.root.after(20, self.update)#method is called every 50ms
|
||||
temp_text = ['0','0']
|
||||
if IO_queue.empty():
|
||||
if not(self.secondary_thread.is_alive()):
|
||||
continue_updates = False # queue is exhausted and thread is dead so no need for further updates
|
||||
self.memory_check() # scan buffer and add percent used if needed
|
||||
print 'starting memory check'
|
||||
self.tag_add('sel', '1.0', 'end')
|
||||
else:
|
||||
try:
|
||||
temp_text = IO_queue.get(block = False)
|
||||
@@ -1064,74 +785,6 @@ class output_window(Text):
|
||||
|
||||
# text editing section
|
||||
|
||||
|
||||
def _scroll_errors(self):
|
||||
global search_position
|
||||
global error_found
|
||||
if search_position == '': # first time so highlight all errors
|
||||
countVar = tk.IntVar()
|
||||
search_position = '1.0'
|
||||
search_count = 0
|
||||
while not(search_position == '') and search_count < 100:
|
||||
search_position = self.search("error", search_position, stopindex="end", count=countVar, nocase=1)
|
||||
search_count = search_count + 1
|
||||
if not(search_position == ''):
|
||||
error_found = True
|
||||
end_pos = '{}+{}c'.format(search_position, 5)
|
||||
self.tag_add("error_highlight_inactive", search_position, end_pos)
|
||||
search_position = '{}+{}c'.format(search_position, 1) # point to the next character for new search
|
||||
else:
|
||||
break
|
||||
|
||||
if error_found:
|
||||
if search_position == '':
|
||||
search_position = self.search("error", '1.0', stopindex="end", nocase=1) # new search
|
||||
else: # remove active highlight
|
||||
end_pos = '{}+{}c'.format(search_position, 5)
|
||||
start_pos = '{}+{}c'.format(search_position, -1)
|
||||
self.tag_remove("error_highlight_active", start_pos, end_pos)
|
||||
search_position = self.search("error", search_position, stopindex="end", nocase=1) # finds first occurrence AGAIN on the first time through
|
||||
if search_position == "": # wrap around
|
||||
search_position = self.search("error", '1.0', stopindex="end", nocase=1)
|
||||
end_pos = '{}+{}c'.format(search_position, 5)
|
||||
self.tag_add("error_highlight_active", search_position, end_pos) # add active highlight
|
||||
self.see(search_position)
|
||||
search_position = '{}+{}c'.format(search_position, 1) # point to the next character for new search
|
||||
|
||||
def scroll_errors(self, event):
|
||||
self._scroll_errors()
|
||||
|
||||
|
||||
def _rebuild(self):
|
||||
#global board_name
|
||||
#global Marlin_ver
|
||||
#global target_env
|
||||
#board_name, Marlin_ver = get_board_name()
|
||||
#target_env = get_env(board_name, Marlin_ver)
|
||||
self.start_thread()
|
||||
|
||||
def rebuild(self, event):
|
||||
print "event happened"
|
||||
self._rebuild()
|
||||
|
||||
|
||||
def _open_selected_file(self):
|
||||
current_line = self.index('insert')
|
||||
line_start = current_line[ : current_line.find('.')] + '.0'
|
||||
line_end = current_line[ : current_line.find('.')] + '.200'
|
||||
self.mark_set("path_start", line_start)
|
||||
self.mark_set("path_end", line_end)
|
||||
path = self.get("path_start", "path_end")
|
||||
from_loc = path.find('from ')
|
||||
colon_loc = path.find(': ')
|
||||
if 0 <= from_loc and ((colon_loc == -1) or (from_loc < colon_loc)) :
|
||||
path = path [ from_loc + 5 : ]
|
||||
if 0 <= colon_loc:
|
||||
path = path [ : colon_loc ]
|
||||
if 0 <= path.find('\\') or 0 <= path.find('/'): # make sure it really contains a path
|
||||
open_file(path)
|
||||
|
||||
|
||||
def _file_save_as(self):
|
||||
self.filename = tkFileDialog.asksaveasfilename(defaultextension = '.txt')
|
||||
f = open(self.filename, 'w')
|
||||
@@ -1180,7 +833,7 @@ class output_window(Text):
|
||||
pass
|
||||
|
||||
def cut(self, event):
|
||||
self._cut()
|
||||
_cut(self)
|
||||
|
||||
def _copy(self):
|
||||
|
||||
@@ -1192,7 +845,7 @@ class output_window(Text):
|
||||
pass
|
||||
|
||||
def copy(self, event):
|
||||
self._copy()
|
||||
_copy(self)
|
||||
|
||||
def _paste(self):
|
||||
|
||||
@@ -1214,203 +867,40 @@ class output_window(Text):
|
||||
if isok:
|
||||
self.delete('1.0', 'end')
|
||||
|
||||
# add memory % if needed
|
||||
def memory_check(self):
|
||||
global memory_check_first_time
|
||||
if not(memory_check_first_time):
|
||||
return
|
||||
memory_check_first_time = False
|
||||
search_position = self.search("Environment used:", "1.0", stopindex="end")
|
||||
env_line = self.get(search_position, '{}+{}c'.format(search_position, 200))
|
||||
print 'env_line 1 ', env_line
|
||||
if 0 <= env_line.find('\n'):
|
||||
env_line = env_line[ : env_line.find('\n')]
|
||||
env_end = env_line.find(' ', 18)
|
||||
if env_end == -1:
|
||||
env_end = len(env_line)
|
||||
env_line = env_line[ 18 : env_end ]
|
||||
print 'env_line 2 ', env_line
|
||||
env_found = False
|
||||
for env in mem_check_environments:
|
||||
if env_line == env:
|
||||
env_found = True
|
||||
print 'env ', env
|
||||
def _place_cursor(self): # theme: terminal
|
||||
'''check the position of the cursor against the last known position
|
||||
every 15ms and update the cursorblock tag as needed'''
|
||||
|
||||
search_position = self.search("Build type:", "1.0", stopindex="end")
|
||||
if search_position == "":
|
||||
print "didn't find it"
|
||||
return
|
||||
build_line = self.get(search_position, '{}+{}c'.format(search_position, 200))
|
||||
print 'build_line 1 ', build_line
|
||||
if 0 <= build_line.find('\n'):
|
||||
build_line = build_line[ : build_line.find('\n')]
|
||||
build_end = build_line.find(' ', 14)
|
||||
if build_end == -1:
|
||||
build_end = len(build_line)
|
||||
build_line = build_line[ 12 : build_end ]
|
||||
print 'build_line 2 ', build_line
|
||||
build_found = False
|
||||
for build in mem_check_builds:
|
||||
if build_line == build:
|
||||
build_found = True
|
||||
print 'build ', build
|
||||
current_index = self.index('insert')
|
||||
|
||||
if env_found and build_found: # find the memory values
|
||||
search_position = self.search("Checking program size", "1.0", stopindex="end")
|
||||
if search_position != '':
|
||||
print 'search_position: ' + search_position
|
||||
line_int = int(search_position[ : search_position.find(".")]) + 1
|
||||
line_str = str(line_int)
|
||||
line = self.get(line_str + '.0', line_str + '.200')
|
||||
print 'line: ', line
|
||||
while 'text' != line[ : 4 ] :
|
||||
line_int = line_int + 1
|
||||
line_str = str(line_int)
|
||||
line = self.get(line_str + '.0', line_str + '.200')
|
||||
print 'line: ', line
|
||||
line_int = line_int + 1
|
||||
line_str = str(line_int)
|
||||
print 'line + 3: ' + line_str + '.0'
|
||||
size_line = self.get(line_str + '.0', line_str + '.200')
|
||||
print 'size_line ', size_line
|
||||
if self.cursor != current_index:
|
||||
self.cursor = current_index
|
||||
self.tag_delete('cursorblock')
|
||||
|
||||
data_start = 0
|
||||
while ' ' == size_line[ data_start : data_start + 1] :
|
||||
data_start = data_start + 1 # eat leading blanks
|
||||
print 'data_start: ', data_start, size_line.find(' ', data_start)
|
||||
data_end = size_line.find(' ', data_start) - 1
|
||||
text_str = size_line[ data_start : data_end]
|
||||
print 'text_str = ', data_start, data_end, text_str + '/////'
|
||||
text_val = int(text_str)
|
||||
print 'text_val ', text_val
|
||||
start = self.index('insert')
|
||||
end = self.index('insert+1c')
|
||||
|
||||
data_start = size_line.find(' ', data_end)
|
||||
while ' ' == size_line[ data_start : data_start + 1] :
|
||||
data_start = data_start + 1 # eat leading blanks
|
||||
print 'data_start: ', data_start, size_line.find(' ', data_start)
|
||||
data_end = size_line.find(' ', data_start) -1
|
||||
data_val = int(size_line[ data_start : data_end])
|
||||
print 'data_val ', data_val
|
||||
if start[0] != end[0]:
|
||||
self.insert(start, ' ')
|
||||
end = self.index('insert')
|
||||
|
||||
data_start = size_line.find(' ', data_end)
|
||||
while ' ' == size_line[ data_start : data_start + 1] :
|
||||
data_start = data_start + 1 # eat leading blanks
|
||||
print 'data_start: ', data_start, size_line.find(' ', data_start)
|
||||
data_end = size_line.find(' ', data_start) - 1
|
||||
if data_end == -1:
|
||||
data_end = len(size_line)
|
||||
bss_val = int(size_line[ data_start : data_end])
|
||||
print 'bss_val ', bss_val
|
||||
self.tag_add('cursorblock', start, end)
|
||||
self.mark_set('insert', self.cursor)
|
||||
|
||||
FLASH_total = text_val + data_val
|
||||
RAM_total = bss_val + data_val
|
||||
self.after(15, self._place_cursor)
|
||||
|
||||
tag = 'normal'
|
||||
if FLASH_total >= FLASH_MAX * FLASH_PERCENT_WARN:
|
||||
tag = 'warning'
|
||||
if FLASH_total >= FLASH_MAX:
|
||||
tag = 'error'
|
||||
line_int = line_int + 1
|
||||
line_str = str(line_int)
|
||||
self.insert('end', '\nProgram: ' + str(FLASH_total) + ' bytes (' + str( 100*FLASH_total/FLASH_MAX) + '% of application area)\n', tag)
|
||||
self.insert(line_str + '.0', '\nProgram: ' + str(FLASH_total) + ' bytes (' + str( 100*FLASH_total/FLASH_MAX) + '% of application area)\n', tag)
|
||||
def _blink_cursor(self): # theme: terminal
|
||||
'''alternate the background color of the cursorblock tagged text
|
||||
every 600 milliseconds'''
|
||||
|
||||
if self.switch == self.fg:
|
||||
self.switch = self.bg
|
||||
else:
|
||||
self.switch = self.fg
|
||||
|
||||
tag = 'normal'
|
||||
if RAM_total >= RAM_MAX - RAM_WARN:
|
||||
tag = 'warning'
|
||||
if RAM_total >= RAM_MAX - RAM_SYSTEM:
|
||||
tag = 'error'
|
||||
line_int = line_int + 2
|
||||
line_str = str(line_int)
|
||||
self.insert('end', 'Data: ' + str(RAM_total) + ' bytes (' + str( 100*RAM_total/(RAM_MAX-RAM_SYSTEM)) + '% of non-system RAM)\n', tag)
|
||||
self.insert(line_str + '.0', 'Data: ' + str(RAM_total) + ' bytes (' + str( 100*RAM_total/(RAM_MAX-RAM_SYSTEM)) + '% of non-system RAM)\n\n', tag)
|
||||
self.see("end") # make the new lines visible (scroll text off the top)
|
||||
# end - memory_check
|
||||
|
||||
|
||||
#
|
||||
# error reporting proceedure for copy_boards_dir()
|
||||
#
|
||||
def report_failure(self, PIO_path, board_path):
|
||||
# didn't find the file - user needs to copy it & re-run the script
|
||||
self.insert('end', 'Unable to move board definition file to destination. User must manually copy the file.\n\n', 'error')
|
||||
self.insert('end', 'Please copy the following file and re-run the script:\n', 'normal')
|
||||
self.insert('end', ' FROM:\n')
|
||||
self.insert('end', ' ' + pwd + '/' + board_path + '/at90usb1286.json\n')
|
||||
self.insert('end', ' TO:\n')
|
||||
self.insert('end', ' ' + PIO_path + '/at90usb1286.json\n')
|
||||
|
||||
|
||||
|
||||
#
|
||||
# move custom board definitions from project folder to PlatformIO
|
||||
# returns True if the file ends up in the correct location
|
||||
#
|
||||
def copy_boards_dir(self):
|
||||
|
||||
temp = os.environ
|
||||
for key in temp:
|
||||
if 0 <= os.environ[key].find('.platformio'):
|
||||
part = os.environ[key].split(';')
|
||||
for part2 in part:
|
||||
if 0 <= part2.find('.platformio'):
|
||||
path = part2
|
||||
break
|
||||
|
||||
path = path.replace("\\", "/")
|
||||
path = path.replace("//", "/")
|
||||
|
||||
path_remaining = path
|
||||
still_looking = True
|
||||
PIO_path = ''
|
||||
while still_looking:
|
||||
colon_pos = path_remaining.find(':')
|
||||
if -1 == colon_pos:
|
||||
still_looking = False
|
||||
path_maybe = path_remaining
|
||||
else:
|
||||
path_maybe = path_remaining[ : colon_pos]
|
||||
path_remaining = path_remaining[ colon_pos + 1 : ]
|
||||
if 0 <= path_maybe.find('/.platformio'):
|
||||
still_looking = False
|
||||
PIO_path = path_maybe
|
||||
|
||||
start_loc = PIO_path.find('/.platformio')
|
||||
next_loc = PIO_path.find('/', start_loc + 5)
|
||||
if 0 <= next_loc:
|
||||
PIO_path = PIO_path[ : next_loc]
|
||||
PIO_path = PIO_path + '/boards'
|
||||
|
||||
board_path = 'buildroot/share/PlatformIO/boards'
|
||||
|
||||
from distutils.dir_util import copy_tree
|
||||
try:
|
||||
copy_tree(board_path, PIO_path)
|
||||
except:
|
||||
pass
|
||||
# check to see if it's there
|
||||
# macOS will throw an exception if it can't get to the directory
|
||||
# Ubuntu doesn't complain if it can't get to the directory
|
||||
# Windows always succeeds (have not been able to lock it out in testing)
|
||||
short_path = PIO_path[ : PIO_path.find('/boards')]
|
||||
try:
|
||||
PIO_dir = os.listdir(short_path)
|
||||
except:
|
||||
self.report_failure(PIO_path, board_path)
|
||||
return False
|
||||
if 'boards' in PIO_dir:
|
||||
try:
|
||||
boards_dir = os.listdir(PIO_path)
|
||||
except:
|
||||
self.report_failure(PIO_path, board_path)
|
||||
return False
|
||||
if 'at90usb1286.json' in boards_dir:
|
||||
return True # it's there so all is well
|
||||
self.report_failure(PIO_path, board_path)
|
||||
return False
|
||||
# end copy_boards_dir
|
||||
self.tag_config('cursorblock', background=self.switch)
|
||||
|
||||
self.after(600, self._blink_cursor)
|
||||
# end - output_window
|
||||
|
||||
|
||||
@@ -1432,18 +922,8 @@ def main():
|
||||
|
||||
target_env = get_env(board_name, Marlin_ver)
|
||||
|
||||
os.environ["BUILD_TYPE"] = build_type # let sub processes know what is happening
|
||||
os.environ["TARGET_ENV"] = target_env
|
||||
os.environ["BOARD_NAME"] = board_name
|
||||
|
||||
auto_build = output_window()
|
||||
|
||||
continue_script = True
|
||||
if 0 <= target_env.find('USB1286'):
|
||||
continue_script = auto_build.copy_boards_dir() # copy custom boards over to PlatformIO if using custom board
|
||||
|
||||
if continue_script:
|
||||
auto_build.start_thread() # executes the "run_PIO" function
|
||||
auto_build.start_thread() # executes the "run_PIO" function
|
||||
|
||||
auto_build.root.mainloop()
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user