Commit Graph

274 Commits

Author SHA1 Message Date
Scott Lahteine
18ba31e9b5 Add Debug Menu with LCD_PROGRESS_BAR_TEST as an example 2016-12-19 22:57:14 -08:00
esenapaj
6854f44bf2 Add description for choice of DEFAULT_DUAL_X_CARRIAGE_MODE 2016-12-19 02:21:10 +09:00
esenapaj
069c6b38dd Remove unnecessary tabs and spaces 2016-12-16 00:21:32 +09:00
Scott Lahteine
06af3b62ba Move HOLLOW_FRAME options to config_adv 2016-12-14 04:31:27 -08:00
AnHardt
d0e24e0876 Adaptive screen updates for all kinds of displays
The target here is to update the screens of graphical and char base
displays as fast as possible, without draining the planner buffer too much.

For that measure the time it takes to draw and transfer one
(partial) screen to the display. Build a max. value from that.
Because ther can be large differences, depending on how much the display
updates are interrupted, the max value is decreased by one ms/s. This way
it can shrink again.
On the other side we keep track on how much time it takes to empty the
planner buffer.
Now we draw the next (partial) display update only then, when we do not
drain the planner buffer to much. We draw only when the time in the
buffer is two times larger than a update takes, or the buffer is empty anyway.

When we have begun to draw a screen we do not wait until the next 100ms
time slot comes. We draw the next partial screen as fast as possible, but
give the system a chance to refill the buffers a bit.

When we see, during drawing a screen, the screen contend has changed,
we stop the current draw and begin to draw the new content from the top.
2016-12-13 18:44:34 +01:00
Scott Lahteine
f882355994 Merge pull request #5318 from Sebastianv650/Account_for_LCD_improvements
Account for LCD improvements in ENSURE_SMOOTH_MOVES
2016-12-05 11:23:58 -06:00
Scott Lahteine
d5bf1684fe Implement as optional feature LCD_DECIMAL_SMALL_XY
And reduce the function size to simplify
2016-12-05 09:26:05 -06:00
Scott Lahteine
f60b4f8659 Allow case light pin to be active low 2016-12-01 23:32:34 -06:00
Sebastianv650
f62f4006af Account for LCD improvements in ENSURE_SMOOTH_MOVES
.. and give the hint to try lower values if possible.
2016-11-28 17:44:19 +01:00
Scott Lahteine
5460a529da Add option DOGM_SPI_DELAY_US 2016-11-26 06:53:52 -06:00
esenapaj
ef97645002 Follow-up the PR #5255 (Case light menu (3rd attempt)) 2016-11-24 19:42:05 +09:00
Scott Lahteine
4e4f37b6c2 Code formatting for TMC and L6470 config options 2016-11-21 00:52:18 -06:00
Scott Lahteine
bf5f5f44cc Make TMC2130 init code auto-configure
Simply apply enabled settings instead of requiring users to edit
stepper_indirection.cpp
2016-11-21 00:52:17 -06:00
Moritz
d67c1d825f Add TMC2130 support 2016-11-21 00:17:45 -06:00
Scott Lahteine
072541f286 Update ENSURE_SMOOTH_MOVES in all configs 2016-11-19 01:28:47 -06:00
Sebastianv650
de89dc9f04 Ensure smooth print moves even with LCD enabled
lcd_update can take so much time that the block buffer gets drained if
there are only short segments. This leads to jerky printer movements for
example in circles and a bad print quality.

This change implements a simple check: Only if the block currently
executed is long enough, run lcd_update.
This also means the printer will not show actual values on the LCD nor
will it respond to buttons pressed. A option that keeps the menu
accessible is also available.
Aditionaly, slow down if a block would be so fast that adding a new
block to the buffer would take more time. In this case, the buffer would
drain until it's empty in worst case.
2016-11-19 01:28:47 -06:00
Scott Lahteine
60cc9342a4 Merge pull request #5188 from thinkyhead/rc_extended_host_support
Extended host support: M155 Auto temp report, M115 capabilities
2016-11-12 15:38:06 -06:00
Scott Lahteine
3c9a838651 Extended capabilities report in M115 2016-11-09 02:32:58 -06:00
Scott Lahteine
68b866b5dd Add M155 - Auto-report temperature with interval 2016-11-09 02:32:58 -06:00
Scott Lahteine
75bfde9945 M155=>M260, M156=>M261 2016-11-08 17:54:54 -06:00
esenapaj
2ae72b0491 Follow up the PR #5167 (Add Turkish Language) again, etc
・Update forgotten K8400\Dual-head\Configuration.h
・Adjust spacing
2016-11-09 06:31:21 +09:00
Scott Lahteine
2495ab7af2 Make dual_x_carriage_mode an enumeration 2016-11-02 21:38:49 -05:00
Stanley
ab3f966f5f Case light G-code M355
implemented G-Code M355 into Marlin
2016-11-01 06:30:14 -05:00
Scott Lahteine
b6aa894893 Rename auto fan pins and add auto fan flags 2016-10-26 17:51:26 -05:00
Scott Lahteine
b9109b2875 Improve LIN_ADVANCE commentary (all configs) 2016-10-22 05:03:09 -05:00
Sebastianv650
599649e45d Add formula for LIN_ADVANCE_K
With this formula, a start value for K for further fine-calibration can be calculated.
2016-10-22 04:54:59 -05:00
Scott Lahteine
a0df34fd4c Add PINS_DEBUGGING advanced config option 2016-10-07 14:20:13 -05:00
Scott Lahteine
919fe3e4b8 Rename feature to G38_PROBE_TARGET 2016-10-01 05:00:53 -05:00
Scott Lahteine
a2864ab7fe Patched up, cleaned up 2016-10-01 05:00:53 -05:00
Bob-the-Kuhn
2911aa7ffa code changes to implement G38 commands
1) modified 3 code files
Marlin.h
Marlin_main.cpp
endstops.cpp

2) modified config files so I could test on my machine

Testing was done on an AzteegX3pro based machine.

The probe was hooked to the Z_MIN endstop.

My controller doesn't have a dedicated Z_PROBE input so I couldn't test
that functionality.

Verified that a large file (without any G38 commands) executed the same
before and after the changes.

Verified that the head moves as expected when G38.2 and G38.3 commands
are issued. Single & multiple axis moves were tested along with + and -
directions.

Code was added to the main ISR. In normal operation only one extra IF
statement is evaluated. I didn't notice any performance degradation
because of the added code.

The G38 commands are expected to be issued manually by the operator
during machine setup. The G38 commands wait until the machine is idle
before proceeding. That way the other commands are minimally impacted
by the extra ISR overhead when a G38 command is in the queue.

The G38 commands are very similar to the G28 commands except 1) only the
Z_PROBE is used and movement can be in the + or - direction.

See issue 4677 for a discussion on adding G38 commands to Marlin.
Feature request: add ability to use G38.2 command (CNC)
MarlinFirmware/Marlin#4677
2016-10-01 05:00:53 -05:00
esenapaj
92c03a44a9 Fix the PR #4899 (ABL: Enable by type. Bilinear for all.) etc.
About Configuration.h:
・Fix the PR #4899 (ABL: Enable by type. Bilinear for all.)
Remove Duplicated contents

・Fix the PR #4305 (Custom boot screen feature improvement)
Revert from "during boot" to "during bootup" in all the example
Configuration.h

・Fix the PR #4207 (Clean up, simplify and generalize the Allen-key-probe
code.)
Resolve and relocate the duplicated definitions in Z_PROBE_ALLEN_KEY
section

・Follow-up the PR #4805 (Additional documentation of Configuration.h)
Add forgotten changes to all the example Configuration.h

Adjust spacing

About Configuration_adv.h:
Add missing description of SLOWDOWN for DELTA

Adjust spacing
2016-09-28 14:14:04 -05:00
Scott Lahteine
9b0931ef74 Apply fixed EXTRUDER_RUNOUT_PREVENT 2016-09-13 03:33:04 -05:00
Scott Lahteine
759234af60 MINIMUM_STEPPER_PULSE option 2016-08-27 23:58:40 -05:00
Scott Lahteine
ab59280075 MIN_SEGMENTS_FOR_MOVE => MIN_STEPS_PER_SEGMENT
Follow-up to #4666
2016-08-21 08:56:03 -05:00
Scott Lahteine
374f8d2014 dropsegments => MIN_SEGMENTS_FOR_MOVE 2016-08-20 18:52:15 -05:00
Scott Lahteine
d63b8e2b2b Additional details for I2C_SLAVE_ADDRESS 2016-08-15 19:27:53 -07:00
Scott Lahteine
a99ecf71d8 Add support for i2c slave address 2016-08-10 23:30:35 -07:00
Scott Lahteine
63fd1f49a6 PID_EXTRUSION_SCALING, disabled by default 2016-07-31 17:49:34 -07:00
Scott Lahteine
c6226bb0aa Unify config in a single include without nested includes 2016-07-25 23:04:19 -07:00
Scott Lahteine
93ea281061 Split up Conditionals.h into two files
Rather than include twice, which is tricky but may confuse
2016-07-25 20:30:45 -07:00
Scott Lahteine
fcc39e2b5f Clean up Transfer Buffer Size comment 2016-07-25 12:54:55 -07:00
Scott Lahteine
91777dd76c Add DUAL_NOZZLE_DUPLICATION_MODE option 2016-07-22 16:22:56 -07:00
Scott Lahteine
0fcd3706dd Replace ENDSTOPS_ONLY_FOR_HOMING with ENDSTOPS_ALWAYS_ON_DEFAULT 2016-07-17 13:35:21 -07:00
Scott Lahteine
91bd6eade7 X_DUAL_STEPPER_DRIVERS configuration option 2016-07-11 10:22:19 -07:00
Scott Lahteine
182c8d7f8f Dyze High Temp Thermistor Support 2016-07-10 17:59:05 -07:00
AnHardt
4b44a23a36 Add TX-buffer for MarlinSerial
Similar to the current Arduino HardwareSerial
but with max. 256 byte buffer-size.

Deactivated by default.

The boards with AT90USB processor (USBCON) already use a TX-buffer.
2016-07-08 17:25:21 +02:00
AnHardt
a129078927 Add an emergency-command parser to MarlinSerial (supporting M108)
Add an emergency-command parser to MarlinSerial's RX interrupt.

The parser tries to find and execute M108,M112,M410 before the commands disappear in the RX-buffer.

To avoid false positives for M117, comments and commands followed by filenames (M23, M28, M30, M32, M33) are filtered.

This enables Marlin to receive and react on the Emergency command at all times - regardless of whether the buffers are full or not. It remains to convince hosts to send the commands. To inform the hosts about the new feature a new entry in the M115-report was made. "`EMERGENCY_CODES:M112,M108,M410;`".

The parser is fast. It only ever needs two switch decisions and one assignment of the new state for every character.

One problem remains. If the host has sent an incomplete line before sending an emergency command the emergency command could be omitted when the parser is in `state_IGNORE`.
In that case the host should send "\ncommand\n"

Also introduces M108 to break the waiting for the heaters in M109, M190 and M303.

Rename `cancel_heatup` to `wait_for_heatup` to better see the purpose.
2016-07-07 16:37:22 -07:00
Petr Zahradnik
43ff0ce35f Rewritten FILAMENT_CHANGE_ENABLE feature 2016-07-02 15:34:33 -07:00
Anthony Birkett
7a377c1d75 Add "About Printer" information menu.
Includes:
  *firmware version / branch / date.
  *extruder count
  *board information (name, serial details, power supply type)
  *thermistors (names, min/max temperatures)
  *printer statistics (PRINTCOUNTER details)

Thanks to @thinkyhead for contributions.
2016-07-02 15:22:26 -07:00
Scott Lahteine
f84d85f761 Cleanup extruder runout configs 2016-06-30 01:40:41 -07:00
Scott Lahteine
40cd20a236 Fix comments on EXPERIMENTAL_I2CBUS 2016-06-21 17:58:44 -07:00
Scott Lahteine
eab44b30d4 Safety and serial sections 2016-06-17 15:19:43 -07:00
Scott Lahteine
f639044c24 Merge pull request #3609 from jbrazio/feature/config-version
Adds versioning for Configuration.h & Configuration_adv.h
2016-06-15 22:09:47 -07:00
João Brázio
8ccd97e7cc
Updated all example configuration files 2016-06-12 00:36:15 +01:00
João Brázio
de8108648f
Added a versioning system to the config files 2016-06-11 23:48:10 +01:00
Scott Lahteine
6d62a4ffc8 Patch LIN_ADVANCE for style and forward-compatibility 2016-06-09 21:03:27 -07:00
Sebastianv650
fb8e880734 Add LIN_ADVANCE 2016-06-09 21:03:27 -07:00
Scott Lahteine
cd441ce652 SINGLENOZZLE: EXTRUDERS versus HOTENDS 2016-06-03 17:38:03 -07:00
Edward Patel
06593833ff MBL: Move border macros to Configuration_adv.h 2016-05-30 20:50:16 +02:00
Scott Lahteine
8218558953 Update comments, rename next_ping_ms, followup to #3797 2016-05-19 16:44:57 -07:00
AnHardt
2207001333 No compromises for the manage_heater()
No compromises for the manage_heater(). manage_heater() will return immediately when there is nothing to do, but needs a constant detaT to work proper.
Calling idle() only every 200ms results in a display update every ~2 seconds - that should be enough.
For the other functionalities in idle() and manage_inactivity() 200ms is a lot but hopefully works.
2016-05-19 20:52:11 +02:00
Scott Lahteine
07c9a11c3c Automatically set X2 stepper pins 2016-05-18 19:09:09 -07:00
Scott Lahteine
ddac17a195 Add BEZIER_CURVE_SUPPORT (G5 XYZEFIJPQ) 2016-05-14 14:52:08 -07:00
Scott Lahteine
9f6b8f7d5b Remove extra @section directive from configs 2016-05-14 14:51:09 -07:00
AnHardt
b74af78736 Make arc support (G2/G3) configurable
Saves about 2669 bytes when deactivated. (About 1% for a AT2560, about __4%__ for a AT644!)
2016-05-13 13:27:45 +02:00
Scott Lahteine
fbf69081b4 Updated comment for THERMAL_PROTECTION_BED 2016-05-01 13:12:51 -07:00
gralco
908229dbb3 Introduce temp watch protection for the bed
When setting the bed temp via M140/M190 if the thermistor does not read an increase of WATCH_BED_TEMP_INCREASE degrees by WATCH_BED_TEMP_PERIOD seconds then it will throw "Error:Heating failed, system stopped! Heater_ID: bed" and call the kill() function.

Conflicts:
	Marlin/Configuration_adv.h
2016-05-01 13:12:51 -07:00
jbrazio
dd3a06a95a Implemented M155 and M156, a generic TWI/I2C interface for Marlin 2016-04-08 20:14:37 -07:00
Scott Lahteine
868eebfdee Simplify configuration of Z2 endstops 2016-04-02 16:39:23 -07:00
Scott Lahteine
3b2d159abd Relax the test for "Heating failed" errors 2016-03-27 07:02:10 -07:00
Scott Lahteine
53cc6cca46 Formalize some dependencies on PIDTEMPBED 2016-03-25 23:50:28 -07:00
Scott Lahteine
e08915a723 Fix comments in Configuration_adv.h 2016-03-25 19:31:31 -07:00
Scott Lahteine
0da744b7b0 Further cleanup of comments, partial Doxygen-style
Following up on #3231
2016-03-25 00:45:56 -07:00
jbrazio
5e5d250832 Added gplv3 header to all Marlin files 2016-03-24 18:01:20 +00:00
Blue-Marlin
3166aed087 Improve the descriptions for THERMAL_PROTECTION 2016-03-19 14:08:59 +01:00
Scott Lahteine
e5fd43f343 Implement BABYSTEPPING for COREXY and COREXZ 2016-03-18 18:22:53 -07:00
esenapaj2
236a44c83b follow-up the PR #3131
follow-up the commit 7326d63ce0
update Configration_adv.h of Hephestos2
delete unnecessary spaces
2016-03-13 19:12:39 +09:00
Scott Lahteine
0c48eaf3de Expose motor current in more configs, disable by default 2016-03-11 02:25:36 -08:00
Elijah Snyder
e8b10d2836 Adding PWM_MOTOR_CURRENT flag to help expose PWM_MOTOR_CURRENTS in Configuration_adv.h similar to DIGIPOT_MOTOR_CURRENT 2016-03-11 02:25:36 -08:00
Scott Lahteine
eb85342fd9 Merge pull request #2989 from AnHardt/fix2661
Pre home display - Stepper release
2016-03-05 21:30:17 -08:00
Scott Lahteine
772460a7b8 Various minor spelling corrections
Redo of #2939 rebased against RCBugFix
2016-03-05 20:41:15 -08:00
Scott Lahteine
9eb4aceee4 Merge pull request #2986 from thinkyhead/enable_watchdog
Enable USE_WATCHDOG by default
2016-03-02 05:29:42 -08:00
AnHardt
4b02f33e69 Distribute config-changes to the other configurations 2016-02-28 23:20:04 +01:00
AnHardt
b6e69e71ce Make stepper shutdown after inactivity dependent
Make stepper shutdown after inactivity dependent on a new set of
#defines.
DISABLE_INACTIV_X
DISABLE_INACTIV_Y
DISABLE_INACTIV_Z
DISABLE_INACTIV_E

And make exemplaric Configuration.
Names can be discussed.

This makes the disabling of the steppers independent from the DISABLE_?
settings witch shut down the steppers immediately.
2016-02-28 16:58:42 +01:00
Scott Lahteine
1093c780c8 Remove obsolete STEPS_MM_E setting 2016-02-23 01:11:58 -08:00
Scott Lahteine
fbfbc5e330 Enable USE_WATCHDOG by default 2016-02-17 17:14:57 -08:00
Richard Wackerbarth
0cebe85e65 Clean up spacing and duplicate entries
• Removing trailing whitespace
• Adjusting indention for better readability
• Removing duplicated entries
2015-12-10 07:20:52 -06:00
AnHardt
c956b52c4a Babystep Multiplier
Analog to https://github.com/MarlinFirmware/MarlinDev/pull/250 by
@RicardoGA

Restore the Babystep Multiplicator functionality and now it's available
for X/Y/Z
2015-11-30 05:43:10 -06:00
Richard Wackerbarth
e01f5e1ef7 Cleanup 2015-09-17 10:44:23 -05:00
Scott Lahteine
bc50db9cf6 Implement PID_ADD_EXTRUSION_RATE 2015-09-12 07:53:20 -05:00
Scott Lahteine
28599c51c7 Wrap Dual Y options in a conditional 2015-09-07 09:41:05 -05:00
Scott Lahteine
11a065c0ca Remove Z2 pins overrides from Configuration_adv.h 2015-09-07 09:41:05 -05:00
wurstnase
f3ab1dba54 Z babystepping for coreXY (PR#47)
only X and Y were not implemented
2015-08-04 20:10:09 -05:00
Scott Lahteine
270c766de2 SDCARDDETECT -> SD_DETECT, added docs
- `SD_DETECT_PIN` replaces `SDCARDDETECT`
- `SD_DETECT_INVERTED` replaces `SDCARDDETECTINVERTED`
- Revise the description of `SD_DETECT_INVERTED`
- Add a note about the override of `SD_DETECT_INVERTED` in
`Conditionals.h`
2015-08-02 21:59:41 -05:00
Scott Lahteine
37d1879386 Apply overridables to Configuration files 2015-07-31 00:03:36 -05:00
Scott Lahteine
ab6f1fdf8b Move & document ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED (PR#2528)
As suggested in #2521
- Move `ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED` because `SDSUPPORT` is
also required.
- Add a note that endstops must be enabled for the feature to have any
effect
2015-07-26 20:36:37 -05:00
wurstnase
c85a486445 make the dual z-endstop optional (PR#2277)
it's disabled by default
2015-06-10 15:45:59 -05:00
CONSULitAS
3a5963c0e7 Configuration_adv.h: Add FAN_MIN_PWM for slow fan stopping issue …
* all Configuration_adv.h: Add #define FAN_MIN_PWM for slow fan stopping
issue
* for K8200: uncommented with tested (and working) values
2015-06-06 20:13:56 -05:00
paclema
8d295547be * Auto filament change on CHANGEFILAMENT feature. Now you can activate this option that extrude filament until you press the button. 2015-06-06 19:45:45 -05:00
Ed Boston
bc205c76a3 SDCARDDETECTINVERTED problems
Fixed an error where SDCARDDETECTINVERTED was being defined/undefined
improperly
2015-06-06 16:40:31 -05:00