Configtool: new version.
This time a tabbed design. Requires quite a bit more code, but visual appearance is also much much better.
This commit is contained in:
parent
0d956511f9
commit
943a8326a9
|
|
@ -1,34 +1,23 @@
|
||||||
helpText = {
|
helpText = {
|
||||||
'SPM': "steps per meter ( = steps per mm * 1000 ) \
|
'STEPS_PER_M': "steps per meter ( = steps per mm * 1000 ) \
|
||||||
calculate these values appropriate for your machine.\n\
|
calculate these values appropriate for your machine.\n\
|
||||||
for threaded rods, this is:\n\n\
|
for threaded rods, this is:\n\n\
|
||||||
\t(steps motor per turn) / (pitch of the thread) * 1000\n\n\
|
\t(steps motor per turn) / (pitch of the thread) * 1000\n\n\
|
||||||
for belts, this is\n\n\
|
for belts, this is\n\n\
|
||||||
\t(steps per motor turn) / (number of gear teeth) / (belt module) * 1000\n\n\
|
\t(steps per motor turn) / (number of gear teeth) / (belt module) * 1000\n\n\
|
||||||
half-stepping doubles the number, quarter stepping requires * 4, etc.\n\
|
half-stepping doubles the number, quarter stepping requires * 4, etc.\n\
|
||||||
valid range = 20 to 4,0960,000 (0.02 to 40960 steps/mm). \
|
valid range = 20 to 4,0960,000 (0.02 to 40960 steps/mm). \
|
||||||
all numbers are integers, so no decimal point",
|
all numbers are integers, so no decimal point",
|
||||||
'SMX': "steps per meter for the X axis",
|
|
||||||
'SMY': "steps per meter for the Y axis",
|
|
||||||
'SMZ': "steps per meter for the Z axis",
|
|
||||||
'SME': "steps per meter for the E axis",
|
|
||||||
|
|
||||||
'MFR': "maximum feed rate - in mm/min - for G0 rapid moves and as a cap for \
|
'MAXIMUM_FEEDRATE': "maximum feed rate - in mm/min - for G0 rapid moves and \
|
||||||
all other feedrates",
|
as a cap for all other feedrates",
|
||||||
'MFRX': "maximum feed rate for the X axis (mm/min)",
|
|
||||||
'MFRY': "maximum feed rate for the Y axis (mm/min)",
|
|
||||||
'MFRZ': "maximum feed rate for the Z axis (mm/min)",
|
|
||||||
'MFRE': "maximum feed rate for the E axis (mm/min)",
|
|
||||||
|
|
||||||
'MSR': "search feed rate - in mm/min - used when doing precision endstop \
|
'SEARCH_FEEDRATE': "search feed rate - in mm/min - used when doing precision \
|
||||||
search and as a default feed rate",
|
endstop search and as a default feed rate",
|
||||||
'MSRX': "search feed rate for the X axis (mm/min)",
|
|
||||||
'MSRY': "search feed rate for the Y axis (mm/min)",
|
|
||||||
'MSRZ': "search feed rate for the Z axis (mm/min)",
|
|
||||||
|
|
||||||
'ECL': "When hitting an endstop, Teacup properly decelerates instead of \
|
'ENDSTOP_CLEARANCE': "When hitting an endstop, Teacup properly decelerates \
|
||||||
doing an abrupt stop\nto save your mechanics. Ineviteably, this means it \
|
instead of doing an abrupt stop\nto save your mechanics. Inevitably, this \
|
||||||
overshoots the endstop trigger point by some distance.\n\n\
|
means it overshoots the endstop trigger point by some distance.\n\n\
|
||||||
To deal with this, Teacup adapts homing movement speeds to what your endstops \
|
To deal with this, Teacup adapts homing movement speeds to what your endstops \
|
||||||
can deal with.\nThe higher the allowed acceleration and the more clearance \
|
can deal with.\nThe higher the allowed acceleration and the more clearance \
|
||||||
the endstop comes with, the faster Teacup\nwill do homing movements.\n\n\
|
the endstop comes with, the faster Teacup\nwill do homing movements.\n\n\
|
||||||
|
|
@ -39,57 +28,202 @@ SEARCH_FEEDRATE_{XYZ} is used, but expect very slow\nhoming movements.\n\n\
|
||||||
Units: micrometers\n\
|
Units: micrometers\n\
|
||||||
Sane values: 0 to 20000 (0 to 20 mm)\n\
|
Sane values: 0 to 20000 (0 to 20 mm)\n\
|
||||||
Valid range: 0 to 1000000",
|
Valid range: 0 to 1000000",
|
||||||
'ECX': "endstop clearance for the X axis (mm * 1000)",
|
|
||||||
'ECY': "endstop clearance for the Y axis (mm * 1000)",
|
|
||||||
'ECZ': "endstop clearance for the Z axis (mm * 1000)",
|
|
||||||
|
|
||||||
'MINMAX': "soft axis limits, in mm.\n\ndefine them to your machine's size \
|
'MINMAX': "soft axis limits, in mm.\n\ndefine them to your machine's size \
|
||||||
relative to what your host considers to be the origin.",
|
relative to what your host considers to be the origin.",
|
||||||
'MINX': "Minimum limit for the X axis:",
|
|
||||||
'MAXX': "maximum limit for the X axis:",
|
|
||||||
'MINY': "minimum limit for the Y axis:",
|
|
||||||
'MAXY': "maximum limit for the Y axis:",
|
|
||||||
'MINZ': "minimum limit for the Z axis",
|
|
||||||
'MAXZ': "maximum limit for the Z axis",
|
|
||||||
|
|
||||||
'ABSE': "some G-code creators produce relative length commands for the \
|
'E_ABSOLUTE': "some G-Code creators produce relative length commands for the \
|
||||||
extruder,\nothers absolute ones. G-code using absolute lengths can be \
|
extruder,\nothers absolute ones. G-Code using absolute lengths can be \
|
||||||
recognized when there\nare G92 E0 commands from time to time. if you have \
|
recognized when there\nare G92 E0 commands from time to time. if you have \
|
||||||
G92 E0 in your G-code, check this box.",
|
G92 E0 in your G-code, check this box.",
|
||||||
|
|
||||||
'ACTYPE': "Acceleration algorithm",
|
'ACCELERATION_REPRAP': "acceleration, reprap style.\n\n\
|
||||||
'ACRR': "acceleration, reprap style.\n\n\
|
|
||||||
Each movement starts at the speed of the previous command and accelerates or \
|
Each movement starts at the speed of the previous command and accelerates or \
|
||||||
decelerates\nlinearly to reach target speed at the end of the movement.",
|
decelerates\nlinearly to reach target speed at the end of the movement.",
|
||||||
'ACRP': "acceleration and deceleration ramping.\n\n\
|
'ACCELERATION_RAMPING': "acceleration and deceleration ramping.\n\n\
|
||||||
Each movement starts at (almost) no speed, linearly accelerates to target \
|
Each movement starts at (almost) no speed, linearly accelerates to target \
|
||||||
speed and decelerates\njust in time to smoothly stop at the target.",
|
speed and decelerates\njust in time to smoothly stop at the target.",
|
||||||
'ACTP': "This algorithm causes the timer to fire when any axis needs to step, \
|
'ACCELERATION_TEMPORAL': "This algorithm causes the timer to fire when any \
|
||||||
instead of\nsynchronising to the axis with the most steps ala bresenham",
|
axis needs to step, instead of\n\synchronising to the axis with the most \
|
||||||
'ACCEL' : "how fast to accelerate when using acceleration ramping.\n\n\
|
steps ala bresenham",
|
||||||
|
'ACCELERATION' : "how fast to accelerate when using acceleration ramping.\n\n\
|
||||||
given in mm/s^2, decimal allowed, useful range 1. to 10,000.\n\
|
given in mm/s^2, decimal allowed, useful range 1. to 10,000.\n\
|
||||||
Start with 10. for milling (high precision) or 1000. for printing",
|
Start with 10. for milling (high precision) or 1000. for printing",
|
||||||
'LKAH': "Define this to enable look-ahead during *ramping* acceleration to \
|
'LOOKAHEAD': "Define this to enable look-ahead during *ramping* acceleration to \
|
||||||
smoothly transition\nbetween moves instead of performing a dead stop every \
|
smoothly transition\nbetween moves instead of performing a dead stop every \
|
||||||
move. Enabling look-ahead requires about\n3600 bytes of flash memory.",
|
move. Enabling look-ahead requires about\n3600 bytes of flash memory.",
|
||||||
'JERK': "When performing look-ahead, we need to decide what an acceptable \
|
'MAX_JERK': "When performing look-ahead, we need to decide what an acceptable \
|
||||||
jerk to the\nmechanics is. Look-ahead attempts to instantly change direction \
|
jerk to the\nmechanics is. Look-ahead attempts to instantly change direction \
|
||||||
at movement\ncrossings, which means instant changes in the speed of the axes \
|
at movement\ncrossings, which means instant changes in the speed of the axes \
|
||||||
participating\nin the movement. Define here how big the speed bumps on each \
|
participating\nin the movement. Define here how big the speed bumps on each \
|
||||||
of the axes is\nallowed to be.\n\n\
|
of the axes is\nallowed to be.\n\n\
|
||||||
If you want a full stop before and after moving a specific axis, define\n\
|
If you want a full stop before and after moving a specific axis, define\n\
|
||||||
maximum jerk of this axis to 0. This is often wanted for the Z axis. If you want\n\
|
maximum jerk of this axis to 0. This is often wanted for the Z axis. If you \
|
||||||
to ignore jerk on an axis, define it to twice the maximum feedrate of this axis.\n\n\
|
want\nto ignore jerk on an axis, define it to twice the maximum feedrate of \
|
||||||
Having these values too low results in more than neccessary slowdown at\n\
|
this axis.\n\nHaving these values too low results in more than necessary \
|
||||||
movement crossings, but is otherwise harmless. Too high values can result\n\
|
slowdown at\nmovement crossings, but is otherwise harmless. Too high values \
|
||||||
in stepper motors suddenly stalling. If angles between movements in your\n\
|
can result\nin stepper motors suddenly stalling. If angles between movements \
|
||||||
G-code are small and your printer runs through entire curves full speed,\n\
|
in your\nG-code are small and your printer runs through entire curves full \
|
||||||
there's no point in raising the values.\n\n\
|
speed,\nthere's no point in raising the values.\n\n\
|
||||||
Units: mm/min\n\
|
Units: mm/min\n\
|
||||||
Sane values: 0 to 400\n\
|
Sane values: 0 to 400\n\
|
||||||
Valid range: 0 to 65535",
|
Valid range: 0 to 65535",
|
||||||
'JERKX': "maximum jerk for the X axis",
|
|
||||||
'JERKY': "maximum jerk for the Y axis",
|
'INCLUDE_ARDUINO': "Include arduino.h header file in the C++ source code. \
|
||||||
'JERKZ': "maximum jerk for the Z axis",
|
This allows you\nto define pins using the atmel/avr conventions (e.g. DI012 \
|
||||||
'JERKE': "maximum jerk for the E axis",
|
or AI01)",
|
||||||
|
|
||||||
|
'USE_INTERNAL_PULLUPS': "Use Internal Pullups. the ATmega has internal pullup \
|
||||||
|
resistors on it's input pins\nwhich are counterproductive with the commonly \
|
||||||
|
used electronic endstops, so this should be unchecked.\n\For other endstops, \
|
||||||
|
like mechanical ones, you may want to check this.",
|
||||||
|
|
||||||
|
'TX_ENABLE_PIN': "Tx Enable Pin. Not yet used",
|
||||||
|
'RX_ENABLE_PIN': "Rx Enable Pin. Not yet used",
|
||||||
|
|
||||||
|
'X_STEP_PIN': "the pin for the stepper motor step signal",
|
||||||
|
'X_DIR_PIN': "the pin for the stepper motor direction signal",
|
||||||
|
'X_MIN_PIN': "the pin for the endstop at the axis minimum position",
|
||||||
|
'X_MAX_PIN': "the pin for the endstop at the axis maximum position",
|
||||||
|
'X_ENABLE_PIN': "the pin for the stepper motor enable signal",
|
||||||
|
'X_INVERT_DIR': "true or false - invert the stepper motor direction",
|
||||||
|
'X_INVERT_MIN': "true or false - invert the signal received from the minimum endstop",
|
||||||
|
'X_INVERT_MAX': "true or false - invert the signal received from the maximum endstop",
|
||||||
|
'X_INVERT_ENABLE': "true or false - invert the stepper motor enable signal",
|
||||||
|
|
||||||
|
'Y_STEP_PIN': "the pin for the stepper motor step signal",
|
||||||
|
'Y_DIR_PIN': "the pin for the stepper motor direction signal",
|
||||||
|
'Y_MIN_PIN': "the pin for the endstop at the axis minimum position",
|
||||||
|
'Y_MAX_PIN': "the pin for the endstop at the axis maximum position",
|
||||||
|
'Y_ENABLE_PIN': "the pin for the stepper motor enable signal",
|
||||||
|
'Y_INVERT_DIR': "true or false - invert the stepper motor direction",
|
||||||
|
'Y_INVERT_MIN': "true or false - invert the signal received from the minimum endstop",
|
||||||
|
'Y_INVERT_MAX': "true or false - invert the signal received from the maximum endstop",
|
||||||
|
'Y_INVERT_ENABLE': "true or false - invert the stepper motor enable signal",
|
||||||
|
|
||||||
|
'Z_STEP_PIN': "the pin for the stepper motor step signal",
|
||||||
|
'Z_DIR_PIN': "the pin for the stepper motor direction signal",
|
||||||
|
'Z_MIN_PIN': "the pin for the endstop at the axis minimum position",
|
||||||
|
'Z_MAX_PIN': "the pin for the endstop at the axis maximum position",
|
||||||
|
'Z_ENABLE_PIN': "the pin for the stepper motor enable signal",
|
||||||
|
'Z_INVERT_DIR': "true or false - invert the stepper motor direction",
|
||||||
|
'Z_INVERT_MIN': "true or false - invert the signal received from the minimum endstop",
|
||||||
|
'Z_INVERT_MAX': "true or false - invert the signal received from the maximum endstop",
|
||||||
|
'Z_INVERT_ENABLE': "true or false - invert the stepper motor enable signal",
|
||||||
|
|
||||||
|
'E_STEP_PIN': "the pin for the stepper motor step signal",
|
||||||
|
'E_DIR_PIN': "the pin for the stepper motor direction signal",
|
||||||
|
'E_ENABLE_PIN': "the pin for the stepper motor enable signal",
|
||||||
|
'E_INVERT_DIR': "true or false - invert the stepper motor direction",
|
||||||
|
'E_INVERT_ENABLE': "true or false - invert the stepper motor enable signal",
|
||||||
|
|
||||||
|
'PS_ON_PIN': "Which pin is used to turn the power supply off",
|
||||||
|
'PS_MOSFET_PIN': "???",
|
||||||
|
|
||||||
|
'STEPPER_ENABLE_PIN': "???",
|
||||||
|
'STEPPER_INVERT_ENABLE': "???",
|
||||||
|
|
||||||
|
'SD_CARD_DETECT': "the pin used to detect if an SD card has been inserted.",
|
||||||
|
'SD_WRITE_PROTECT': "the pin used to determine if an SD card is write-protected",
|
||||||
|
'DEBUG_LED_PIN': "Enable flashing of a LED during motor stepping.\n\n\
|
||||||
|
Disabled by default. Turning this on this makes the binary a few bytes larger\n\
|
||||||
|
and adds a few cycles to the step timing interrupt. This is also used for\n\
|
||||||
|
for precision profiling",
|
||||||
|
|
||||||
|
'TEMP_HYSTERESIS': "Actual temperature must be target +/- this hysteresis \
|
||||||
|
before target\ntemperature is considered to be achieved. Also, BANG_BANG \
|
||||||
|
tries to stay\nwithin half of this hysteresis. Unit is degrees Celcius",
|
||||||
|
'TEMP_RESIDENCY_TIME': "actual temperature must be close to target (within\n\
|
||||||
|
set temperature +- TEMP_HYSTERESIS) for this long before target is achieved\n\
|
||||||
|
(and a M116 succeeds). Unit is seconds.",
|
||||||
|
'TEMP_EWMA': "Smooth noisy temperature sensors. Good hardware shouldn't be\n\
|
||||||
|
noisy. Set to 1.0 for unfiltered data (and a 140 bytes smaller binary)\n\n\
|
||||||
|
Valid range: 0.001 - 1.0",
|
||||||
|
'TEMP_TYPES': "which temperature sensors are you using? Check every type of \
|
||||||
|
sensor you use\nto enable the appropriate code. Intercom is the gen3-style \
|
||||||
|
separate extruder board. Note\nthat you will not be able to uncheck a sensor \
|
||||||
|
type that is in use",
|
||||||
|
|
||||||
|
'ADDSENSOR': 'Define your temperature sensors. One entry for each sensor, \
|
||||||
|
only limited\nby the number of available ATmega pins.\n\n\
|
||||||
|
Types are only those chosen on the main page.\n\n\
|
||||||
|
The "additional" field is used for TT_THERMISTOR only. It defines the\n\
|
||||||
|
name of the table(s) in ThermistorTable.h to use. Typically, this is\n\
|
||||||
|
THERMISTOR_EXTRUDER for the first or only table, or THERMISTOR_BED for\n\
|
||||||
|
the second table. See also early in ThermistorTable.{single|double}.h,\n\n\
|
||||||
|
For a GEN3 set type to TT_INTERCOM and pin to AIO0. The pin won\'t be used in \
|
||||||
|
this case.',
|
||||||
|
'DELSENSOR': 'Remove the selected temperature sensor from the configuration',
|
||||||
|
|
||||||
|
"HEATER_SANITY_CHECK": "check if heater responds to changes in target \
|
||||||
|
temperature, disable\nand spit errors if not. largely untested, please \
|
||||||
|
comment in forum if this works, or doesn't work for you!",
|
||||||
|
|
||||||
|
'ADDHEATER': "Add a heater to the configuration",
|
||||||
|
'DELHEATER': "Remove a heater from the configuration",
|
||||||
|
|
||||||
|
'BAUD': "Baud rate for the serial RS232 protocol connection to the host. \
|
||||||
|
Usually 115200,\nother common values are 19200, 38400 or 57600. Ignored when \
|
||||||
|
USB_SERIAL is checked.",
|
||||||
|
'USB_SERIAL': "Define this for using USB instead of the serial RS232 protocol. \
|
||||||
|
Works on\nUSB-equipped ATmegas, like the ATmega32U4, only",
|
||||||
|
'XONXOFF': "Xon/Xoff flow control. Redundant when using RepRap Host for \
|
||||||
|
sending GCode,\nbut mandatory when sending GCode files with a plain terminal \
|
||||||
|
emulator, like GtkTerm (Linux),\nCoolTerm (Mac) or HyperTerminal (Windows). \
|
||||||
|
Can also be set in Makefile",
|
||||||
|
|
||||||
|
'MOTHERBOARD': "This is the motherboard, as opposed to the extruder.",
|
||||||
|
'F_CPU': "The CPU clock rate",
|
||||||
|
'EECONFIG': "Enable EEPROM configuration storage.\n\n\
|
||||||
|
Enabled by default. Commenting this out makes the binary several hundred\n\
|
||||||
|
bytes smaller, so you might want to disable EEPROM storage on small MCUs,\n\
|
||||||
|
like the ATmega168.",
|
||||||
|
'DEBUG': "enables extra output, and some extra M-codes.\n\n\
|
||||||
|
WARNING: this WILL break most host-side talkers that expect particular \
|
||||||
|
responses\nfrom firmware such as reprap host and replicatorG. Use with serial \
|
||||||
|
terminal\nor other suitable talker only.",
|
||||||
|
'BANG_BANG': "Drops PID loop from heater control, reduces code size\n\
|
||||||
|
significantly (1300 bytes!)",
|
||||||
|
'BANG_BANG_ON': "PWM value for 'on'",
|
||||||
|
'BANG_BANG_OFF': "PWM value for 'off'",
|
||||||
|
'MOVEBUFFER_SIZE': "Move buffer size, in number of moves\n\nnote that each \
|
||||||
|
move takes a fair chunk of ram (~69 bytes) so don't make the buffer too big.\n\
|
||||||
|
A bigger serial readbuffer may help more than increasing this unless your \
|
||||||
|
gcodes are more than\n70 characters long on average. However, a larger \
|
||||||
|
movebuffer will probably help with lots of \nshort consecutive moves, as each \
|
||||||
|
move takes a bunch of math (hence time) to set up, so a longer\nbuffer allows \
|
||||||
|
more of the math to be done during preceding longer moves",
|
||||||
|
'DC_EXTRUDER': 'If you have a DC motor extruder, configure it as a "heater" \
|
||||||
|
on the heater page,\nand choose the name you used there in this field. You \
|
||||||
|
probably also want to comment out E_STEP_PIN\nand E_DIR_PIN on the Pinouts \
|
||||||
|
page.',
|
||||||
|
'DC_EXTRUDER_PWM': "The PWM value at which to operate the DC Extruder motor",
|
||||||
|
'USE_WATCHDOG': "Teacup implements a watchdog, which has to be reset every \
|
||||||
|
250ms or it will\nreboot the controller. As rebooting (and letting the GCode\
|
||||||
|
sending application trying to\ncontinue the build with a then different Home \
|
||||||
|
point) is probably even worse than just hanging,\nand there is no better \
|
||||||
|
restore code in place, this is disabled for now.",
|
||||||
|
'REFERENCE': "which analog reference to use. see analog.h for choices",
|
||||||
|
'STEP_INTERRUPT_INTERRUPTIBLE': "this option makes the step interrupt \
|
||||||
|
interruptible (nested).\nthis should help immensely with dropped serial \
|
||||||
|
characters, but may also make\ndebugging infuriating due to the complexities \
|
||||||
|
arising from nested interrupts.\n\nnote disable this option if you're using a \
|
||||||
|
'168 or for some reason your ram usage\nis above 90%. This option hugely \
|
||||||
|
increases likelihood of stack smashing.",
|
||||||
|
'TH_COUNT': "Temperature history count. This is how many temperature readings \
|
||||||
|
to keep in\norder to calculate derivative in PID loop. Higher values make PID \
|
||||||
|
derivative term more\nstable at the expense of reaction time",
|
||||||
|
'FAST_PWM': "Teacup offers two PWM frequencies, 76(61) Hz and 78000(62500) \
|
||||||
|
Hz on a\n20(16) MHz electronics. The slower one is the default, as it's the \
|
||||||
|
safer choice.\nThe drawback is in a quiet environment you might notice the \
|
||||||
|
heaters and power supply humming.\n\nUncomment this option if you want to get \
|
||||||
|
rid of this humming or want faster PWM for other reasons.",
|
||||||
|
'ENDSTOP_STEPS': "Number of steps to run into the endstops intentionally\n\n\
|
||||||
|
As Endstops trigger false alarm sometimes, Teacup debounces them by counting \
|
||||||
|
a number of\nconsecutive positives. Valid range is 1...255. Use 4 or less for \
|
||||||
|
reliable endstops, 8 or\neven more for flaky ones.",
|
||||||
|
'CANNED_CYCLE': "G-code commands in this string will be executed over and \
|
||||||
|
over again, without\nuser interaction or even a serial connection. It's \
|
||||||
|
purpose is e.g. for\nexhibitions or when using Teacup for other purposes than \
|
||||||
|
printing. You can\nadd any G-code supported by Teacup.",
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue