50 Commits
1.5.1 ... 1.5.3

Author SHA1 Message Date
Knutwurst
defcde923f Bump Builddate. 2024-03-22 08:23:01 +01:00
Knutwurst
e466309bfb Increase python version to 3.10 which hopefully does not break the build process 2024-01-12 10:54:49 +01:00
Knutwurst
c697bb5d31 Revert to something that works 2024-01-12 10:44:37 +01:00
Knutwurst
bef8b81f06 Revert to Pythin 3,7 v1 2024-01-12 10:41:15 +01:00
Knutwurst
9cc14f19af Try something else 2024-01-12 10:35:49 +01:00
Knutwurst
7454073163 Upse Python 3.10 2024-01-12 10:29:23 +01:00
Knutwurst
4227c9f662 Hopefully fix the python install in build script. 2024-01-12 10:27:54 +01:00
Knutwurst
e160b50639 Fix Typo in yaml. 2024-01-12 10:24:38 +01:00
Knutwurst
d9fbb65fad Fix Python action 2024-01-12 10:22:42 +01:00
Knutwurst
f77932398c Remove blank. 2024-01-12 10:19:11 +01:00
Knutwurst
05b6a78eef Fix build yml. 2024-01-12 10:16:58 +01:00
Knutwurst
8c03cd38bf Update Python and use actions/upload-artifact@v4 2024-01-12 10:14:58 +01:00
Knutwurst
b92eda5b0d Revert to actions/upload-artifact@v3 to see if it fixes the upload-issue. 2024-01-12 10:03:19 +01:00
Oliver Köster
38444739b7 Merge pull request #509 from stklcode/fix/mega-p-leveling
fix manual leveling from Mega P TFT
2024-01-11 22:11:15 +01:00
Stefan Kalscheuer
8b67bfe695 fix manual leveling from Mega P TFT
Conversion from enqueue_now_P() to injectCommands() causes issues when
executing multiple consecutive commands. Inject a single multi-line
string instead of 3 injections make the leveling feature work again.

Fixes: 524d6fbcdf
2024-01-11 19:57:11 +01:00
Oliver Köster
48db31732f Merge pull request #506 from stklcode/fix/501-runout-threshold
increase threshold for filament runout
2024-01-07 16:58:21 +01:00
Stefan Kalscheuer
2f1941697d increase threshold for filament runout
Increase the threshold from 5 to 20 to reduce the chance of false
positive triggers.
2024-01-06 18:44:14 +01:00
Knutwurst
f9164e3a6e Set filament runout pins. 2023-10-14 13:43:10 +02:00
Knutwurst
ca34b2acc2 Cleanup old pin definitions to avoid confusion. 2023-10-14 09:44:56 +02:00
Knutwurst
e0a4e25ffa More relaxed thermal runaway parameters for all printers especially for the print bed to allow higher temperatures. 2023-09-28 18:33:58 +02:00
Knutwurst
97c3391cd9 Revert "Disable file sorting (for testing purpose only)"
This reverts commit af83c12790.
2023-07-17 11:06:38 +02:00
Knutwurst
ca66eeb43e Reset SoftEndstop behaviour 2023-07-17 11:06:20 +02:00
Knutwurst
af83c12790 Disable file sorting (for testing purpose only) 2023-07-15 11:55:27 +02:00
Knutwurst
98613781e9 Disable ALL setSoftEndstopState() methods to rule out any issued regarding the soft endstops 2023-07-15 11:54:48 +02:00
Knutwurst
f122af1903 Revert "Disable SoftEndstop handling while printing."
This reverts commit 76cb3aec92.
2023-07-15 11:49:37 +02:00
Knutwurst
76cb3aec92 Disable SoftEndstop handling while printing. 2023-07-08 11:38:28 +02:00
Knutwurst
93e90f37f8 Bump build date and version 2023-07-06 16:27:34 +02:00
Oliver Köster
160575dd4f Merge pull request #477 from stklcode/fix/render-folder-regression
partially revert static outputString in RenderCurrentFolder
2023-06-25 16:53:55 +02:00
Stefan Kalscheuer
f10f396cc1 partially revert static outputString in RenderCurrentFolder
The optimization only applies to targets with DGUS2_TFT set. On other
targets the fixed-size array may be of insufficient size.

However, remove the potentially problematic initialization with a single
nullpointer (empty string), as this will be overwritten in the very next
line anyway.

Fixes: a9c018f18c
2023-06-25 15:42:12 +02:00
Knutwurst
e169b0e627 Decrease heater check count to 60000. This fixes #475 2023-06-24 15:18:07 +02:00
Oliver Köster
02d7c31b4c Merge pull request #474 from stklcode/cleanup
Cleanup
2023-06-24 14:52:58 +02:00
Stefan Kalscheuer
b93faf009c github: remove duplicate "Configurations" section from PR template 2023-06-24 14:13:13 +02:00
Stefan Kalscheuer
33c91b345e remove unused PowerKill() 2023-06-24 14:09:27 +02:00
Stefan Kalscheuer
1822172d44 use boolean literals instead of implicit int conversion 2023-06-24 14:04:11 +02:00
Stefan Kalscheuer
0cedfaf9a6 remove unused declarations from anycubic_touchscreen.h 2023-06-24 14:03:21 +02:00
Oliver Köster
0981430d4b Merge pull request #473 from stklcode/fix/render-current-folder
use static initialization for output string in RenderCurrentFolder
2023-06-24 12:50:47 +02:00
Stefan Kalscheuer
a9c018f18c use static initialization for output string in RenderCurrentFolder
The dynamic sized variable outputString may not be properly initialized.
Second issue, we fill the line for directories beyond fileNameLength, so
the initialization is not always sufficient.

We now initialize outputString statically with the maximum printable
size which should resolve both.

Also clean up some variable declarations.
2023-06-24 12:37:51 +02:00
Knutwurst
4d5ba3899b Remove duplicate softEndstop setting. It's already set by the print timer. 2023-06-24 11:38:08 +02:00
Knutwurst
339125801e Fix typos 2023-06-20 15:07:17 +02:00
Knutwurst
614e54657d Cleanup touchscreen code a little 2023-06-17 19:29:21 +02:00
Knutwurst
524d6fbcdf Refactor A22 move X/Y/Z or extrude function. 2023-06-15 17:29:50 +02:00
Knutwurst
b940864e18 Implement 'M73' to set print job progress, overrides Knutwurst's built-in estimate 2023-06-14 22:18:43 +02:00
Knutwurst
71b3968100 Revert default ESP speed to 500k. 2023-06-14 21:37:00 +02:00
Knutwurst
fb335408dc Activate assist level button on 4MAX. This is a trial and error commit. 2023-06-14 17:16:01 +02:00
Knutwurst
b24edb9de7 Add 4MAX Pro code for servo endstop angle adjustment. 2023-06-14 17:00:45 +02:00
Knutwurst
9bdf4d658e Disable ESP. 2023-06-14 16:19:37 +02:00
Knutwurst
9afe777c26 Cleanup code and use clang-formatter to improve readabilty. 2023-06-14 15:11:17 +02:00
Knutwurst
1e27c22bdd Bump build date and version 2023-06-14 11:41:25 +02:00
Knutwurst
b646757a1b Implement 4MAX Pro 2.0 assisted level feature. 2023-06-14 11:04:00 +02:00
Knutwurst
4df951c501 Substiture KNUTWURST_TFT_LEVELING flag with KNUTWURST_CHIRON. 2023-06-14 10:35:01 +02:00
10 changed files with 2051 additions and 2001 deletions

View File

@@ -6,25 +6,25 @@ AlignAfterOpenBracket: Align
AlignArrayOfStructures: None AlignArrayOfStructures: None
AlignConsecutiveAssignments: AlignConsecutiveAssignments:
Enabled: true Enabled: true
AcrossEmptyLines: true AcrossEmptyLines: false
AcrossComments: true AcrossComments: true
AlignCompound: true AlignCompound: true
PadOperators: true PadOperators: true
AlignConsecutiveBitFields: AlignConsecutiveBitFields:
Enabled: true Enabled: true
AcrossEmptyLines: true AcrossEmptyLines: false
AcrossComments: true AcrossComments: true
AlignCompound: false AlignCompound: false
PadOperators: false PadOperators: false
AlignConsecutiveDeclarations: AlignConsecutiveDeclarations:
Enabled: true Enabled: true
AcrossEmptyLines: true AcrossEmptyLines: false
AcrossComments: true AcrossComments: true
AlignCompound: false AlignCompound: false
PadOperators: false PadOperators: false
AlignConsecutiveMacros: AlignConsecutiveMacros:
Enabled: true Enabled: true
AcrossEmptyLines: true AcrossEmptyLines: false
AcrossComments: true AcrossComments: true
AlignCompound: false AlignCompound: false
PadOperators: false PadOperators: false
@@ -62,16 +62,15 @@ BraceWrapping:
AfterObjCDeclaration: false AfterObjCDeclaration: false
AfterStruct: false AfterStruct: false
AfterUnion: false AfterUnion: false
BeforeCatch: false BeforeCatch: true
BeforeElse: false BeforeElse: true
BeforeLambdaBody: false BeforeLambdaBody: false
BeforeWhile: false BeforeWhile: false
IndentBraces: false IndentBraces: true
SplitEmptyFunction: true SplitEmptyFunction: true
SplitEmptyRecord: true SplitEmptyRecord: true
SplitEmptyNamespace: true SplitEmptyNamespace: true
BreakAfterAttributes: Never BreakAfterAttributes: Never
BreakAfterJavaFieldAnnotations: false
BreakArrays: true BreakArrays: true
BreakBeforeBinaryOperators: None BreakBeforeBinaryOperators: None
BreakBeforeConceptDeclarations: Always BreakBeforeConceptDeclarations: Always
@@ -115,17 +114,17 @@ IncludeCategories:
CaseSensitive: false CaseSensitive: false
IncludeIsMainRegex: '(Test)?$' IncludeIsMainRegex: '(Test)?$'
IncludeIsMainSourceRegex: '' IncludeIsMainSourceRegex: ''
IndentAccessModifiers: false IndentAccessModifiers: true
IndentCaseBlocks: false IndentCaseBlocks: true
IndentCaseLabels: false IndentCaseLabels: true
IndentExternBlock: AfterExternBlock IndentExternBlock: AfterExternBlock
IndentGotoLabels: true IndentGotoLabels: true
IndentPPDirectives: None IndentPPDirectives: BeforeHash
IndentRequiresClause: true IndentRequiresClause: true
IndentWidth: 4 IndentWidth: 2
IndentWrappedFunctionNames: false IndentWrappedFunctionNames: true
InsertBraces: false InsertBraces: true
InsertNewlineAtEOF: false InsertNewlineAtEOF: true
InsertTrailingCommas: None InsertTrailingCommas: None
IntegerLiteralSeparator: IntegerLiteralSeparator:
Binary: 0 Binary: 0
@@ -134,15 +133,13 @@ IntegerLiteralSeparator:
DecimalMinDigits: 0 DecimalMinDigits: 0
Hex: 0 Hex: 0
HexMinDigits: 0 HexMinDigits: 0
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: true KeepEmptyLinesAtTheStartOfBlocks: true
LambdaBodyIndentation: Signature LambdaBodyIndentation: Signature
LineEnding: DeriveLF LineEnding: DeriveLF
MacroBlockBegin: '' MacroBlockBegin: ''
MacroBlockEnd: '' MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1 MaxEmptyLinesToKeep: 2
NamespaceIndentation: None NamespaceIndentation: All
ObjCBinPackProtocolList: Auto ObjCBinPackProtocolList: Auto
ObjCBlockIndentWidth: 2 ObjCBlockIndentWidth: 2
ObjCBreakBeforeNestedBlockParam: true ObjCBreakBeforeNestedBlockParam: true

View File

@@ -28,9 +28,6 @@ Clearly describe the submitted changes with lots of details. Include images wher
<!-- Attach Configurations ZIP and any other files needed to test this PR. --> <!-- Attach Configurations ZIP and any other files needed to test this PR. -->
### Configurations
<!-- Attach any Configuration.h, Configuration_adv.h, or platformio.ini files needed to compile/test your Pull Request. -->
### Related Issues ### Related Issues

View File

@@ -90,10 +90,10 @@ jobs:
steps: steps:
- name: Setup Python 3.7 - name: Setup Python
uses: actions/setup-python@v1 uses: actions/setup-python@v5
with: with:
python-version: '3.7' # Version range or exact version of a Python version to use, using semvers version range syntax. python-version: '3.10' # Version range or exact version of a Python version to use, using semvers version range syntax.
architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified
- name: Install PlatformIO - name: Install PlatformIO
@@ -124,7 +124,7 @@ jobs:
# .pio/build/${{ matrix.platform }}/${{ matrix.platform }}_v*.hex # .pio/build/${{ matrix.platform }}/${{ matrix.platform }}_v*.hex
- name: Archive all artifacts into one ZIP file - name: Archive all artifacts into one ZIP file
uses: actions/upload-artifact@master uses: actions/upload-artifact@v3
with: with:
name: Knuwurst-all-in-one-${{github.sha}} name: Knuwurst-all-in-one-${{github.sha}}
path: | path: |

View File

@@ -38,14 +38,11 @@
#define CONFIGURATION_H_VERSION 02010201 #define CONFIGURATION_H_VERSION 02010201
#define ANYCUBIC_TOUCHSCREEN #define ANYCUBIC_TOUCHSCREEN
#define KNUTWURST_SPECIAL_MENU #define KNUTWURST_SPECIAL_MENU
#define KNUTWURST_SPECIAL_MENU_WO_SD
// #define ANYCUBIC_TFT_DEBUG // #define ANYCUBIC_TFT_DEBUG
// #define POWER_OUTAGE_TEST // #define POWER_OUTAGE_TEST
#define LCD_SERIAL_PORT 3 #define LCD_SERIAL_PORT 3
#define EXT_LEVEL_HIGH 0.1
/* /*
* This feature is for debugging purpose only. * This feature is for debugging purpose only.
* It enabled more console output and should be * It enabled more console output and should be
@@ -76,18 +73,6 @@
// #define KNUTWURST_MEGA_P_LASER // #define KNUTWURST_MEGA_P_LASER
#endif #endif
/*
* This enables the integrated leveling features
* in the anycubic touchscreen. It's currently only
* supported by the Anycubic Chiron and therefore it
* is automatically set if the chiron is enabled.
*
*/
#if ENABLED(KNUTWURST_CHIRON)
#define KNUTWURST_TFT_LEVELING
#endif
/* /*
* To ensure the correct endstop configuration, * To ensure the correct endstop configuration,
* this has to be enabled to alter the motherboard * this has to be enabled to alter the motherboard
@@ -197,8 +182,8 @@
* Currently Ethernet (-2) is only supported on Teensy 4.1 boards. * Currently Ethernet (-2) is only supported on Teensy 4.1 boards.
* :[-2, -1, 0, 1, 2, 3, 4, 5, 6, 7] * :[-2, -1, 0, 1, 2, 3, 4, 5, 6, 7]
*/ */
// #define SERIAL_PORT_2 2 //#define SERIAL_PORT_2 2
// #define BAUDRATE_2 500000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE //#define BAUDRATE_2 500000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE
/** /**
* Select a third serial port on the board to use for communication with the host. * Select a third serial port on the board to use for communication with the host.
@@ -1652,7 +1637,7 @@
* Use G29 repeatedly, adjusting the Z height at each point with movement commands * Use G29 repeatedly, adjusting the Z height at each point with movement commands
* or (with LCD_BED_LEVELING) the LCD controller. * or (with LCD_BED_LEVELING) the LCD controller.
*/ */
#if NONE(KNUTWURST_BLTOUCH, KNUTWURST_TFT_LEVELING) #if NONE(KNUTWURST_BLTOUCH, KNUTWURST_CHIRON)
#define PROBE_MANUALLY #define PROBE_MANUALLY
#endif #endif
@@ -1671,7 +1656,7 @@
/** /**
* Z Servo Probe, such as an endstop switch on a rotating arm. * Z Servo Probe, such as an endstop switch on a rotating arm.
*/ */
#if ENABLED(KNUTWURST_TFT_LEVELING) #if ENABLED(KNUTWURST_CHIRON)
#define Z_PROBE_SERVO_NR 0 // Defaults to SERVO 0 connector. #define Z_PROBE_SERVO_NR 0 // Defaults to SERVO 0 connector.
#define Z_SERVO_ANGLES { 70, 0 } // Z Servo Deploy and Stow angles #define Z_SERVO_ANGLES { 70, 0 } // Z Servo Deploy and Stow angles
#endif #endif
@@ -1838,11 +1823,11 @@
// #define NOZZLE_TO_PROBE_OFFSET { 29, -15, 0 } //X-Carriage // #define NOZZLE_TO_PROBE_OFFSET { 29, -15, 0 } //X-Carriage
#endif #endif
#if ENABLED(KNUTWURST_TFT_LEVELING) #if ENABLED(KNUTWURST_CHIRON)
#define NOZZLE_TO_PROBE_OFFSET { 0, 0, -16.8 } #define NOZZLE_TO_PROBE_OFFSET { 0, 0, -16.8 }
#endif #endif
#if NONE(KNUTWURST_BLTOUCH, KNUTWURST_TFT_LEVELING) #if NONE(KNUTWURST_BLTOUCH, KNUTWURST_CHIRON)
#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 } #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
#endif #endif
@@ -2419,6 +2404,9 @@
// NOTE: After 'M412 H1' the host handles filament runout and this script does not apply. // NOTE: After 'M412 H1' the host handles filament runout and this script does not apply.
#define FILAMENT_RUNOUT_SCRIPT "M600" #define FILAMENT_RUNOUT_SCRIPT "M600"
// More relaxed threshold to prevent false-positive triggers (default: 5)
#define FILAMENT_RUNOUT_THRESHOLD 20
// After a runout is detected, continue printing this length of filament // After a runout is detected, continue printing this length of filament
// before executing the runout script. Useful for a sensor at the end of // before executing the runout script. Useful for a sensor at the end of
// a feed tube. Requires 4 bytes SRAM per sensor, plus 4 bytes overhead. // a feed tube. Requires 4 bytes SRAM per sensor, plus 4 bytes overhead.
@@ -2470,7 +2458,7 @@
* leveling in steps so you can manually adjust the Z height at each grid-point. * leveling in steps so you can manually adjust the Z height at each grid-point.
* With an LCD controller the process is guided step-by-step. * With an LCD controller the process is guided step-by-step.
*/ */
#if EITHER(KNUTWURST_BLTOUCH, KNUTWURST_TFT_LEVELING) #if EITHER(KNUTWURST_BLTOUCH, KNUTWURST_CHIRON)
// #define AUTO_BED_LEVELING_3POINT // #define AUTO_BED_LEVELING_3POINT
// #define AUTO_BED_LEVELING_LINEAR // #define AUTO_BED_LEVELING_LINEAR
#define AUTO_BED_LEVELING_BILINEAR #define AUTO_BED_LEVELING_BILINEAR
@@ -2478,7 +2466,7 @@
// #define MESH_BED_LEVELING // #define MESH_BED_LEVELING
#endif #endif
#if NONE(KNUTWURST_BLTOUCH, KNUTWURST_TFT_LEVELING) #if NONE(KNUTWURST_BLTOUCH, KNUTWURST_CHIRON)
// #define AUTO_BED_LEVELING_3POINT // #define AUTO_BED_LEVELING_3POINT
// #define AUTO_BED_LEVELING_LINEAR // #define AUTO_BED_LEVELING_LINEAR
// #define AUTO_BED_LEVELING_BILINEAR // #define AUTO_BED_LEVELING_BILINEAR
@@ -3985,7 +3973,7 @@
* Set this manually if there are extra servos needing manual control. * Set this manually if there are extra servos needing manual control.
* Set to 0 to turn off servo support. * Set to 0 to turn off servo support.
*/ */
#if ENABLED(KNUTWURST_TFT_LEVELING) #if ENABLED(KNUTWURST_CHIRON)
#define NUM_SERVOS 1 // Note: Servo index starts with 0 for M280-M282 commands #define NUM_SERVOS 1 // Note: Servo index starts with 0 for M280-M282 commands
#endif #endif

View File

@@ -304,13 +304,13 @@
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#if ENABLED(KNUTWURST_CHIRON) #if ENABLED(KNUTWURST_CHIRON)
#define THERMAL_PROTECTION_PERIOD 60 // Seconds #define THERMAL_PROTECTION_PERIOD 30 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 20 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 20 // Degrees Celsius
#define WATCH_TEMP_PERIOD 60 // Seconds #define WATCH_TEMP_PERIOD 60 // Seconds
#define WATCH_TEMP_INCREASE 10 // Degrees Celsius #define WATCH_TEMP_INCREASE 5 // Degrees Celsius
#else #else
#define THERMAL_PROTECTION_PERIOD 10 // Seconds #define THERMAL_PROTECTION_PERIOD 20 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 15 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 15 // Degrees Celsius
// #define ADAPTIVE_FAN_SLOWING // Slow part cooling fan if temperature drops // #define ADAPTIVE_FAN_SLOWING // Slow part cooling fan if temperature drops
@@ -340,22 +340,22 @@
*/ */
#if ENABLED(THERMAL_PROTECTION_BED) #if ENABLED(THERMAL_PROTECTION_BED)
#if ENABLED(KNUTWURST_CHIRON) #if ENABLED(KNUTWURST_CHIRON)
#define THERMAL_PROTECTION_BED_PERIOD 40 // Seconds #define THERMAL_PROTECTION_BED_PERIOD 120 // Seconds
#define THERMAL_PROTECTION_BED_HYSTERESIS 10 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 15 // Degrees Celsius
/** /**
* As described above, except for the bed (M140/M190/M303). * As described above, except for the bed (M140/M190/M303).
*/ */
#define WATCH_BED_TEMP_PERIOD 120 // Seconds #define WATCH_BED_TEMP_PERIOD 300 // Seconds
#define WATCH_BED_TEMP_INCREASE 10 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius
#else #else
#define THERMAL_PROTECTION_BED_PERIOD 20 // Seconds #define THERMAL_PROTECTION_BED_PERIOD 30 // Seconds
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* As described above, except for the bed (M140/M190/M303). * As described above, except for the bed (M140/M190/M303).
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 120 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius
#endif #endif
#endif #endif
@@ -1479,12 +1479,12 @@
#endif // HAS_DISPLAY || DWIN_LCD_PROUI #endif // HAS_DISPLAY || DWIN_LCD_PROUI
// Add 'M73' to set print job progress, overrides Marlin's built-in estimate // Add 'M73' to set print job progress, overrides Marlin's built-in estimate
// #define SET_PROGRESS_MANUALLY #define SET_PROGRESS_MANUALLY
#if ENABLED(SET_PROGRESS_MANUALLY) #if ENABLED(SET_PROGRESS_MANUALLY)
#define SET_PROGRESS_PERCENT // Add 'P' parameter to set percentage done #define SET_PROGRESS_PERCENT // Add 'P' parameter to set percentage done
#define SET_REMAINING_TIME // Add 'R' parameter to set remaining time #define SET_REMAINING_TIME // Add 'R' parameter to set remaining time
// #define SET_INTERACTION_TIME // Add 'C' parameter to set time until next filament change or other user interaction #define SET_INTERACTION_TIME // Add 'C' parameter to set time until next filament change or other user interaction
// #define M73_REPORT // Report M73 values to host #define M73_REPORT // Report M73 values to host
#if BOTH(M73_REPORT, SDSUPPORT) #if BOTH(M73_REPORT, SDSUPPORT)
#define M73_REPORT_SD_ONLY // Report only when printing from SD #define M73_REPORT_SD_ONLY // Report only when printing from SD
#endif #endif

View File

@@ -41,10 +41,10 @@
* here we define this default string as the date where the latest release * here we define this default string as the date where the latest release
* version was tagged. * version was tagged.
*/ */
#define CUSTOM_BUILD_VERSION "1.5.1" #define CUSTOM_BUILD_VERSION "1.5.3"
#ifndef STRING_DISTRIBUTION_DATE #ifndef STRING_DISTRIBUTION_DATE
#define STRING_DISTRIBUTION_DATE "2023-06-13" #define STRING_DISTRIBUTION_DATE "2024-03-22"
#endif #endif
/** /**

File diff suppressed because it is too large Load Diff

View File

@@ -24,16 +24,9 @@
#include "../../../inc/MarlinConfigPre.h" #include "../../../inc/MarlinConfigPre.h"
#include "../../../module/probe.h" #include "../../../module/probe.h"
char *itostr2(const uint8_t &x); #define TFTBUFSIZE 4
#define TFT_MAX_CMD_SIZE 96
#ifndef ULTRA_LCD #define MSG_MY_VERSION CUSTOM_BUILD_VERSION
char *itostr3(const int);
char *ftostr32(const float &);
#endif
#define TFTBUFSIZE 4
#define TFT_MAX_CMD_SIZE 96
#define MSG_MY_VERSION CUSTOM_BUILD_VERSION
#define MAX_PRINTABLE_FILENAME_LEN 26 #define MAX_PRINTABLE_FILENAME_LEN 26
enum AnycubicMediaPrintState { enum AnycubicMediaPrintState {
@@ -57,277 +50,274 @@ enum AnycubicMediaPauseState {
AMPAUSESTATE_PAUSED AMPAUSESTATE_PAUSED
}; };
#define SM_DIR_UP_S "DIR_UP~1.GCO" #define SM_DIR_UP_S "DIR_UP~1.GCO"
#define SM_SPECIAL_MENU_S "<SPECI~1.GCO" #define SM_SPECIAL_MENU_S "<SPECI~1.GCO"
#define SM_PID_HOTEND_S "<PIDTU~1.GCO" #define SM_PID_HOTEND_S "<PIDTU~1.GCO"
#define SM_PID_BED_S "<PIDTU~2.GCO" #define SM_PID_BED_S "<PIDTU~2.GCO"
#define SM_SAVE_EEPROM_S "<SAVEE~1.GCO" #define SM_SAVE_EEPROM_S "<SAVEE~1.GCO"
#define SM_LOAD_DEFAULTS_S "<LOADF~1.GCO" #define SM_LOAD_DEFAULTS_S "<LOADF~1.GCO"
#define SM_PREHEAT_BED_S "<PREHE~1.GCO" #define SM_PREHEAT_BED_S "<PREHE~1.GCO"
#define SM_MESH_MENU_S "<MESHL~1.GCO" #define SM_MESH_MENU_S "<MESHL~1.GCO"
#define SM_MESH_START_S "<START~1.GCO" #define SM_MESH_START_S "<START~1.GCO"
#define SM_MESH_NEXT_S "<NEXTM~1.GCO" #define SM_MESH_NEXT_S "<NEXTM~1.GCO"
#define SM_Z_UP_01_S "<ZUP01~1.GCO" #define SM_Z_UP_01_S "<ZUP01~1.GCO"
#define SM_Z_DN_01_S "<ZDOWN~1.GCO" #define SM_Z_DN_01_S "<ZDOWN~1.GCO"
#define SM_Z_UP_002_S "<ZUP00~1.GCO" #define SM_Z_UP_002_S "<ZUP00~1.GCO"
#define SM_Z_DN_002_S "<ZDOWN~2.GCO" #define SM_Z_DN_002_S "<ZDOWN~2.GCO"
#define SM_Z_UP_001_S "<ZUP00~2.GCO" #define SM_Z_UP_001_S "<ZUP00~2.GCO"
#define SM_Z_DN_001_S "<ZDOWN~3.GCO" #define SM_Z_DN_001_S "<ZDOWN~3.GCO"
#define SM_BLTOUCH_S "<BLTOU~1.GCO" #define SM_BLTOUCH_S "<BLTOU~1.GCO"
#define SM_RESETLV_S "<RSTLV~1.GCO" #define SM_RESETLV_S "<RSTLV~1.GCO"
#define SM_PAUSE_S "<FILCH~2.GCO" #define SM_PAUSE_S "<FILCH~2.GCO"
#define SM_RESUME_S "<FILCH~1.GCO" #define SM_RESUME_S "<FILCH~1.GCO"
#define SM_DIS_FILSENS_S "<DISAB~1.GCO" #define SM_DIS_FILSENS_S "<DISAB~1.GCO"
#define SM_EN_FILSENS_S "<ENABL~1.GCO" #define SM_EN_FILSENS_S "<ENABL~1.GCO"
#define SM_EXIT_S "<EXIT_~1.GCO" #define SM_EXIT_S "<EXIT_~1.GCO"
#define SM_BACK_S "<BACK_~1.GCO" #define SM_BACK_S "<BACK_~1.GCO"
#define SM_FLOWMENU_S "<SETFLO1.GCO" #define SM_FLOWMENU_S "<SETFLO1.GCO"
#define SM_FLOW_DISP_S "<FLDISPL.GCO" #define SM_FLOW_DISP_S "<FLDISPL.GCO"
#define SM_FLOW_UP_S "<UPFLOW1.GCO" #define SM_FLOW_UP_S "<UPFLOW1.GCO"
#define SM_FLOW_DN_S "<DWNFLOW.GCO" #define SM_FLOW_DN_S "<DWNFLOW.GCO"
#define SM_FLOW_EXIT_S "<EXTFLW1.GCO" #define SM_FLOW_EXIT_S "<EXTFLW1.GCO"
#define SM_EZLVL_MENU_S "<EZLVLM1.GCO" #define SM_EZLVL_MENU_S "<EZLVLM1.GCO"
#define SM_EZLVL_P1_S "<EZLPA01.GCO" #define SM_EZLVL_P1_S "<EZLPA01.GCO"
#define SM_EZLVL_P2_S "<EZLPB01.GCO" #define SM_EZLVL_P2_S "<EZLPB01.GCO"
#define SM_EZLVL_P3_S "<EZLPC01.GCO" #define SM_EZLVL_P3_S "<EZLPC01.GCO"
#define SM_EZLVL_P4_S "<EZLPD01.GCO" #define SM_EZLVL_P4_S "<EZLPD01.GCO"
#define SM_EZLVL_EXIT_S "<EZLEXT1.GCO" #define SM_EZLVL_EXIT_S "<EZLEXT1.GCO"
#define SM_BLTZMENU_S "<SETOFZ0.GCO" #define SM_BLTZMENU_S "<SETOFZ0.GCO"
#define SM_BLTZ_DISP_S "<OFZDSP0.GCO" #define SM_BLTZ_DISP_S "<OFZDSP0.GCO"
#define SM_BLTZ_UP_S "<UPOFFZ0.GCO" #define SM_BLTZ_UP_S "<UPOFFZ0.GCO"
#define SM_BLTZ_DN_S "<DOWNOFZ.GCO" #define SM_BLTZ_DN_S "<DOWNOFZ.GCO"
#define SM_BLTZ_EXIT_S "<EXTABLM.GCO" #define SM_BLTZ_EXIT_S "<EXTABLM.GCO"
#define SM_HS_DISABLE_S "<HSDISAB.GCO" #define SM_HS_DISABLE_S "<HSDISAB.GCO"
#define SM_HS_ENABLE_S "<HSENABL.GCO" #define SM_HS_ENABLE_S "<HSENABL.GCO"
#if DISABLED(KNUTWURST_DGUS2_TFT) #if DISABLED(KNUTWURST_DGUS2_TFT)
#define SM_DIR_UP_L "/.." #define SM_DIR_UP_L "/.."
#define SM_SPECIAL_MENU_L "<Special Menu>" #define SM_SPECIAL_MENU_L "<Special Menu>"
#define SM_PID_HOTEND_L "<PID Tune Hotend>" #define SM_PID_HOTEND_L "<PID Tune Hotend>"
#define SM_PID_BED_L "<PID Tune Ultrabase>" #define SM_PID_BED_L "<PID Tune Ultrabase>"
#define SM_SAVE_EEPROM_L "<Save EEPROM>" #define SM_SAVE_EEPROM_L "<Save EEPROM>"
#define SM_LOAD_DEFAULTS_L "<Load FW Defaults>" #define SM_LOAD_DEFAULTS_L "<Load FW Defaults>"
#define SM_PREHEAT_BED_L "<Preheat Ultrabase>" #define SM_PREHEAT_BED_L "<Preheat Ultrabase>"
#define SM_MESH_MENU_L "<Mesh Leveling>" #define SM_MESH_MENU_L "<Mesh Leveling>"
#define SM_MESH_START_L "<Start Mesh Leveling>" #define SM_MESH_START_L "<Start Mesh Leveling>"
#define SM_MESH_NEXT_L "<Next Mesh Point>" #define SM_MESH_NEXT_L "<Next Mesh Point>"
#define SM_Z_UP_01_L "<Z Up 0.1>" #define SM_Z_UP_01_L "<Z Up 0.1>"
#define SM_Z_DN_01_L "<Z Down 0.1>" #define SM_Z_DN_01_L "<Z Down 0.1>"
#define SM_Z_UP_002_L "<Z Up 0.02>" #define SM_Z_UP_002_L "<Z Up 0.02>"
#define SM_Z_DN_002_L "<Z Down 0.02>" #define SM_Z_DN_002_L "<Z Down 0.02>"
#define SM_Z_UP_001_L "<Z Up 0.01>" #define SM_Z_UP_001_L "<Z Up 0.01>"
#define SM_Z_DN_001_L "<Z Down 0.01>" #define SM_Z_DN_001_L "<Z Down 0.01>"
#define SM_BLTOUCH_L "<Start Auto Leveling>" #define SM_BLTOUCH_L "<Start Auto Leveling>"
#define SM_RESETLV_L "<Reset Level Grid>" #define SM_RESETLV_L "<Reset Level Grid>"
#define SM_PAUSE_L "<Fil. Change Pause>" #define SM_PAUSE_L "<Fil. Change Pause>"
#define SM_RESUME_L "<Fil. Change Resume>" #define SM_RESUME_L "<Fil. Change Resume>"
#define SM_DIS_FILSENS_L "<Disable Fil. Sensor>" #define SM_DIS_FILSENS_L "<Disable Fil. Sensor>"
#define SM_EN_FILSENS_L "<Enable Fil. Sensor>" #define SM_EN_FILSENS_L "<Enable Fil. Sensor>"
#define SM_EXIT_L "<Exit>" #define SM_EXIT_L "<Exit>"
#define SM_BACK_L "<End Mesh Leveling>" #define SM_BACK_L "<End Mesh Leveling>"
#define SM_FLOWMENU_L "<Set Flowrate>" #define SM_FLOWMENU_L "<Set Flowrate>"
#define SM_FLOW_DISP_L "<Flow is XXX>" #define SM_FLOW_DISP_L "<Flow is XXX>"
#define SM_FLOW_UP_L "<Up>" #define SM_FLOW_UP_L "<Up>"
#define SM_FLOW_DN_L "<Down>" #define SM_FLOW_DN_L "<Down>"
#define SM_FLOW_EXIT_L "<Exit Flow Settings>" #define SM_FLOW_EXIT_L "<Exit Flow Settings>"
#define SM_EZLVL_MENU_L "<Easy 4 Point Level>" #define SM_EZLVL_MENU_L "<Easy 4 Point Level>"
#define SM_EZLVL_P1_L "<Point A>" #define SM_EZLVL_P1_L "<Point A>"
#define SM_EZLVL_P2_L "<Point B>" #define SM_EZLVL_P2_L "<Point B>"
#define SM_EZLVL_P3_L "<Point C>" #define SM_EZLVL_P3_L "<Point C>"
#define SM_EZLVL_P4_L "<Point D>" #define SM_EZLVL_P4_L "<Point D>"
#define SM_EZLVL_EXIT_L "<Exit Easy Level>" #define SM_EZLVL_EXIT_L "<Exit Easy Level>"
#define SM_BLTZMENU_L "<Auto Leveling>" #define SM_BLTZMENU_L "<Auto Leveling>"
#define SM_BLTZ_DISP_L "<Z Offset: XXXXX>" #define SM_BLTZ_DISP_L "<Z Offset: XXXXX>"
#define SM_BLTZ_UP_L "<Up>" #define SM_BLTZ_UP_L "<Up>"
#define SM_BLTZ_DN_L "<Down>" #define SM_BLTZ_DN_L "<Down>"
#define SM_BLTZ_EXIT_L "<SAVE and EXIT>" #define SM_BLTZ_EXIT_L "<SAVE and EXIT>"
#define SM_HS_DISABLE_L "<Disable HiSpeed Mode>" #define SM_HS_DISABLE_L "<Disable HiSpeed Mode>"
#define SM_HS_ENABLE_L "<Enable HiSpeed Mode>" #define SM_HS_ENABLE_L "<Enable HiSpeed Mode>"
#endif // !KNUTWURST_DGUS2_TFT #endif // !KNUTWURST_DGUS2_TFT
#if ENABLED(KNUTWURST_DGUS2_TFT) #if ENABLED(KNUTWURST_DGUS2_TFT)
#define SM_DIR_UP_L "/.. .gcode" #define SM_DIR_UP_L "/.. .gcode"
#define SM_SPECIAL_MENU_L "<Special Menu> .gcode" #define SM_SPECIAL_MENU_L "<Special Menu> .gcode"
#define SM_PID_HOTEND_L "<PID Tune Hotend> .gcode" #define SM_PID_HOTEND_L "<PID Tune Hotend> .gcode"
#define SM_PID_BED_L "<PID Tune Ultrabase>.gcode" #define SM_PID_BED_L "<PID Tune Ultrabase>.gcode"
#define SM_SAVE_EEPROM_L "<Save EEPROM> .gcode" #define SM_SAVE_EEPROM_L "<Save EEPROM> .gcode"
#define SM_LOAD_DEFAULTS_L "<Load FW Defaults> .gcode" #define SM_LOAD_DEFAULTS_L "<Load FW Defaults> .gcode"
#define SM_PREHEAT_BED_L "<Preheat Ultrabase> .gcode" #define SM_PREHEAT_BED_L "<Preheat Ultrabase> .gcode"
#define SM_MESH_MENU_L "<Mesh Leveling> .gcode" #define SM_MESH_MENU_L "<Mesh Leveling> .gcode"
#define SM_MESH_START_L "<Start MeshLeveling>.gcode" #define SM_MESH_START_L "<Start MeshLeveling>.gcode"
#define SM_MESH_NEXT_L "<Next Mesh Point> .gcode" #define SM_MESH_NEXT_L "<Next Mesh Point> .gcode"
#define SM_Z_UP_01_L "<Z Up 0.1> .gcode" #define SM_Z_UP_01_L "<Z Up 0.1> .gcode"
#define SM_Z_DN_01_L "<Z Down 0.1> .gcode" #define SM_Z_DN_01_L "<Z Down 0.1> .gcode"
#define SM_Z_UP_002_L "<Z Up 0.02> .gcode" #define SM_Z_UP_002_L "<Z Up 0.02> .gcode"
#define SM_Z_DN_002_L "<Z Down 0.02> .gcode" #define SM_Z_DN_002_L "<Z Down 0.02> .gcode"
#define SM_Z_UP_001_L "<Z Up 0.01> .gcode" #define SM_Z_UP_001_L "<Z Up 0.01> .gcode"
#define SM_Z_DN_001_L "<Z Down 0.01> .gcode" #define SM_Z_DN_001_L "<Z Down 0.01> .gcode"
#define SM_BLTOUCH_L "<Start AutoLeveling>.gcode" #define SM_BLTOUCH_L "<Start AutoLeveling>.gcode"
#define SM_RESETLV_L "<Reset Level Grid> .gcode" #define SM_RESETLV_L "<Reset Level Grid> .gcode"
#define SM_PAUSE_L "<Fil. Change Pause> .gcode" #define SM_PAUSE_L "<Fil. Change Pause> .gcode"
#define SM_RESUME_L "<Fil. Change Resume>.gcode" #define SM_RESUME_L "<Fil. Change Resume>.gcode"
#define SM_DIS_FILSENS_L "<Disable Fil.Sensor>.gcode" #define SM_DIS_FILSENS_L "<Disable Fil.Sensor>.gcode"
#define SM_EN_FILSENS_L "<Enable Fil. Sensor>.gcode" #define SM_EN_FILSENS_L "<Enable Fil. Sensor>.gcode"
#define SM_EXIT_L "<Exit> .gcode" #define SM_EXIT_L "<Exit> .gcode"
#define SM_BACK_L "<End Mesh Leveling> .gcode" #define SM_BACK_L "<End Mesh Leveling> .gcode"
#define SM_FLOWMENU_L "<Set Flowrate> .gcode" #define SM_FLOWMENU_L "<Set Flowrate> .gcode"
#define SM_FLOW_DISP_L "<Flow is XXX%> .gcode" #define SM_FLOW_DISP_L "<Flow is XXX%> .gcode"
#define SM_FLOW_UP_L "<Up> .gcode" #define SM_FLOW_UP_L "<Up> .gcode"
#define SM_FLOW_DN_L "<Down> .gcode" #define SM_FLOW_DN_L "<Down> .gcode"
#define SM_FLOW_EXIT_L "<Exit Flow Settings>.gcode" #define SM_FLOW_EXIT_L "<Exit Flow Settings>.gcode"
#define SM_EZLVL_MENU_L "<Easy 4 Point Level>.gcode" #define SM_EZLVL_MENU_L "<Easy 4 Point Level>.gcode"
#define SM_EZLVL_P1_L "<Point A> .gcode" #define SM_EZLVL_P1_L "<Point A> .gcode"
#define SM_EZLVL_P2_L "<Point B> .gcode" #define SM_EZLVL_P2_L "<Point B> .gcode"
#define SM_EZLVL_P3_L "<Point C> .gcode" #define SM_EZLVL_P3_L "<Point C> .gcode"
#define SM_EZLVL_P4_L "<Point D> .gcode" #define SM_EZLVL_P4_L "<Point D> .gcode"
#define SM_EZLVL_EXIT_L "<Exit Easy Leveling>.gcode" #define SM_EZLVL_EXIT_L "<Exit Easy Leveling>.gcode"
#define SM_BLTZMENU_L "<Auto Leveling> .gcode" #define SM_BLTZMENU_L "<Auto Leveling> .gcode"
#define SM_BLTZ_DISP_L "<Z Offset: XXXXX> .gcode" #define SM_BLTZ_DISP_L "<Z Offset: XXXXX> .gcode"
#define SM_BLTZ_UP_L "<Up> .gcode" #define SM_BLTZ_UP_L "<Up> .gcode"
#define SM_BLTZ_DN_L "<Down> .gcode" #define SM_BLTZ_DN_L "<Down> .gcode"
#define SM_BLTZ_EXIT_L "<SAVE and EXIT> .gcode" #define SM_BLTZ_EXIT_L "<SAVE and EXIT> .gcode"
#define SM_HS_DISABLE_L "<Disable HiSpeed> .gcode" #define SM_HS_DISABLE_L "<Disable HiSpeed> .gcode"
#define SM_HS_ENABLE_L "<Enable HiSpeed> .gcode" #define SM_HS_ENABLE_L "<Enable HiSpeed> .gcode"
#endif // KNUTWURST_DGUS2_TFT #endif // KNUTWURST_DGUS2_TFT
class AnycubicTouchscreenClass { class AnycubicTouchscreenClass {
public: public:
AnycubicTouchscreenClass(); AnycubicTouchscreenClass();
void Setup(); void Setup();
void CommandScan(); void CommandScan();
void FilamentRunout(); void FilamentRunout();
void DoFilamentRunoutCheck(); void DoFilamentRunoutCheck();
void UserConfirmRequired(const char *); void UserConfirmRequired(const char*);
void SDCardStateChange(bool); void SDCardStateChange(bool);
void SDCardError(); void SDCardError();
void KillTFT(); void KillTFT();
void OnPrintTimerStarted(); void OnPrintTimerStarted();
void OnPrintTimerPaused(); void OnPrintTimerPaused();
void OnPrintTimerStopped(); void OnPrintTimerStopped();
#if BOTH(ANYCUBIC_TFT_DEBUG, KNUTWURST_DGUS2_TFT) #if BOTH(ANYCUBIC_TFT_DEBUG, KNUTWURST_DGUS2_TFT)
void Command(const char * const command); void Command(const char* const command);
#endif #endif
#if ENABLED(KNUTWURST_TFT_LEVELING) #if ENABLED(KNUTWURST_CHIRON)
void LevelingDone(); void LevelingDone();
#endif #endif
private: private:
char TFTcmdbuffer[TFTBUFSIZE][TFT_MAX_CMD_SIZE]; char TFTcmdbuffer[TFTBUFSIZE][TFT_MAX_CMD_SIZE];
int TFTbuflen = 0; int TFTbuflen = 0;
int TFTbufindr = 0; int TFTbufindr = 0;
int TFTbufindw = 0; int TFTbufindw = 0;
char serial3_char; char serial3_char;
int serial3_count = 0; int serial3_count = 0;
char *TFTstrchr_pointer; char* TFTstrchr_pointer;
char FlagResumFromOutage = 0; char FlagResumFromOutage = 0;
uint8_t tmp_extruder = 0; uint16_t HeaterCheckCount = 0;
uint16_t HeaterCheckCount = 0; int currentFlowRate = 0;
int currentFlowRate = 0; bool PrintdoneAndPowerOFF = true;
bool PrintdoneAndPowerOFF = true; bool powerOFFflag = false;
bool powerOFFflag = 0; xy_uint8_t selectedmeshpoint;
xy_uint8_t selectedmeshpoint; float live_Zoffset;
float live_Zoffset;
static AnycubicMediaPrintState mediaPrintingState; static AnycubicMediaPrintState mediaPrintingState;
static AnycubicMediaPauseState mediaPauseState; static AnycubicMediaPauseState mediaPauseState;
#if defined(POWER_OUTAGE_TEST) #if defined(POWER_OUTAGE_TEST)
struct OutageDataStruct { struct OutageDataStruct {
char OutageDataVersion; char OutageDataVersion;
char OutageFlag; char OutageFlag;
float last_position[XYZE]; float last_position[XYZE];
float last_bed_temp; float last_bed_temp;
float last_hotend_temp; float last_hotend_temp;
long lastSDposition; long lastSDposition;
} } OutageData;
OutageData;
#endif #endif
int CodeValueInt(); int CodeValueInt();
float CodeValue(); float CodeValue();
bool CodeSeen(char); bool CodeSeen(char);
void StartPrint(); void StartPrint();
void PausePrint(); void PausePrint();
void ResumePrint(); void ResumePrint();
void StopPrint(); void StopPrint();
void GetCommandFromTFT(); void GetCommandFromTFT();
void CheckHeaterError(); void CheckHeaterError();
void FilamentChangePause(); void HandleSpecialMenu();
void HandleSpecialMenu(); void RenderCurrentFileList();
void RenderCurrentFileList(); void RenderSpecialMenu(uint16_t);
void RenderSpecialMenu(uint16_t); void RenderCurrentFolder(uint16_t);
void RenderCurrentFolder(uint16_t);
char currentTouchscreenSelection[64]; char currentTouchscreenSelection[64];
char currentFileOrDirectory[64]; char currentFileOrDirectory[64];
String flowRateBuffer; String flowRateBuffer;
String zOffsetBuffer; String zOffsetBuffer;
uint8_t SpecialMenu = false; uint8_t SpecialMenu = false;
uint8_t MMLMenu = false; uint8_t MMLMenu = false;
uint8_t FlowMenu = false; uint8_t FlowMenu = false;
uint8_t BLTouchMenu = false; uint8_t BLTouchMenu = false;
uint8_t LevelMenu = false; uint8_t LevelMenu = false;
uint8_t CaseLight = true; uint8_t CaseLight = true;
#if ENABLED(KNUTWURST_MEGA_P_LASER) #if ENABLED(KNUTWURST_MEGA_P_LASER)
typedef struct { typedef struct {
unsigned char bfType[2]; unsigned char bfType[2];
unsigned char bfSize[4]; unsigned char bfSize[4];
unsigned char bfReserved1[2]; unsigned char bfReserved1[2];
unsigned char bfReserved2[2]; unsigned char bfReserved2[2];
unsigned char bfOffBits[4]; unsigned char bfOffBits[4];
unsigned char biSize[4]; unsigned char biSize[4];
unsigned char biWidth[4]; unsigned char biWidth[4];
unsigned char biHeight[4]; unsigned char biHeight[4];
unsigned char biPlanes[2]; unsigned char biPlanes[2];
unsigned char biBitCount[2]; unsigned char biBitCount[2];
unsigned char biCompression[4]; unsigned char biCompression[4];
unsigned char biSizeImage[4]; unsigned char biSizeImage[4];
unsigned char biXPelsPerMeter[4]; unsigned char biXPelsPerMeter[4];
unsigned char biYPelsPerMeter[4]; unsigned char biYPelsPerMeter[4];
unsigned char biClrUsed[4]; unsigned char biClrUsed[4];
unsigned char biClrImportant[4]; unsigned char biClrImportant[4];
} BMP_HEAD; } BMP_HEAD;
typedef struct { typedef struct {
unsigned long pic_file_size; unsigned long pic_file_size;
unsigned long pic_ptr; unsigned long pic_ptr;
unsigned long pic_start; unsigned long pic_start;
float pic_pixel_distance; float pic_pixel_distance;
float laser_height; float laser_height;
float x_offset; float x_offset;
float y_offset; float y_offset;
unsigned int pic_real_width; unsigned int pic_real_width;
unsigned int pic_width; unsigned int pic_width;
unsigned int pic_height; unsigned int pic_height;
unsigned char pic_bit; unsigned char pic_bit;
unsigned char pic_width_odd; unsigned char pic_width_odd;
unsigned char pic_height_odd; unsigned char pic_height_odd;
unsigned char pic_print_status; unsigned char pic_print_status;
unsigned char pic_dir; unsigned char pic_dir;
unsigned char pic_vector; unsigned char pic_vector;
unsigned char pic_x_mirror; unsigned char pic_x_mirror;
unsigned char pic_y_mirror; unsigned char pic_y_mirror;
unsigned char pic_laser_time; unsigned char pic_laser_time;
} PRINTER_STRUCT; } PRINTER_STRUCT;
#define PIC_FIXED 0.1f // // POINT/MM #define PIC_FIXED 0.1f // // POINT/MM
#define PIC_OPEN 50 // // ms #define PIC_OPEN 50 // // ms
#define PIC_SPEDD 20000 #define PIC_SPEDD 20000
#define MIN_GRAY_VLAUE 20 #define MIN_GRAY_VLAUE 20
#define LASER_PRINT_SPEED 30 // 50*60 #define LASER_PRINT_SPEED 30 // 50*60
#endif // if ENABLED(KNUTWURST_MEGA_P_LASER) #endif // if ENABLED(KNUTWURST_MEGA_P_LASER)
}; };
extern AnycubicTouchscreenClass AnycubicTouchscreen; extern AnycubicTouchscreenClass AnycubicTouchscreen;

View File

@@ -94,7 +94,7 @@ namespace ExtUI {
void onLevelingStart() {} void onLevelingStart() {}
void onLevelingDone() { void onLevelingDone() {
#if ENABLED(KNUTWURST_TFT_LEVELING) #if ENABLED(KNUTWURST_CHIRON)
AnycubicTouchscreen.LevelingDone(); AnycubicTouchscreen.LevelingDone();
#endif #endif
} }

View File

@@ -132,13 +132,6 @@
#endif #endif
#endif #endif
//
// Z Probe (when not Z_MIN_PIN)
//
#ifndef Z_MIN_PROBE_PIN
#define Z_MIN_PROBE_PIN 2 // PATCH: Knutwurst
#endif
// //
// Steppers // Steppers
// //