Commit graph

91 commits

Author SHA1 Message Date
Scott Lahteine 809da999dc Apply HOTEND_INDEX in preheat methods 2016-07-11 22:27:25 -07:00
Scott Lahteine 3d78b690e5 Single PID dataset with HOTENDS == 1 2016-07-11 22:27:24 -07:00
Scott Lahteine bf9967c65d Apply HOTEND_INDEX in MILLISECONDS_PREHEAT_TIME 2016-07-11 22:27:24 -07:00
Scott Lahteine 11dcbae7a2 Only a single E axis. Can tool-change reseed position[E_AXIS]? 2016-07-11 22:27:24 -07:00
Scott Lahteine 182c8d7f8f Dyze High Temp Thermistor Support 2016-07-10 17:59:05 -07:00
Scott Lahteine ee0983ab57 Further reduction when HOTENDS == 1 2016-07-10 16:54:30 -07:00
Scott Lahteine b72238f406 Invariant get_pid_output with HOTENDS < 2 2016-07-10 16:33:51 -07:00
Scott Lahteine dcb8ec32ee Fix compile error with watch_bed_next_ms 2016-06-21 02:13:41 -07:00
Scott Lahteine cd441ce652 SINGLENOZZLE: EXTRUDERS versus HOTENDS 2016-06-03 17:38:03 -07:00
Scott Lahteine 85512e9372 Drop FORCE_INLINE from temperature.h
`FORCE_INLINE` seems to have no effect on code generation with standard
optimization.
2016-05-30 17:06:50 -07:00
Scott Lahteine 78fb02a5ad Apply static to Temperature class 2016-05-30 16:50:51 -07:00
Scott Lahteine 0e55c06f7d Rename CORE_AXIS_3 to NORMAL_AXIS 2016-05-23 13:58:40 -07:00
Scott Lahteine 5172d4ba40 COREYZ stepper, planner, endstop, babysteps 2016-05-23 13:58:40 -07:00
Scott Lahteine 6b13c430ae The TRReset state is not needed with fall-through 2016-05-08 17:01:46 -07:00
Scott Lahteine b65ea98d6b Localize babystepping in the Temperature class
So that `ultralcd.cpp` doesn’t need to worry about the details.
2016-05-05 15:00:31 -07:00
esenapaj 1a97442d19 Follow-up the PR #3643(Temperature singleton)
Follow-up the PR #3643(Temperature singleton)

・Change from fanSpeedSoftPwm[0] to thermalManager.fanSpeedSoftPwm[0] in planner.cpp
It fix compilation error when FAN_SOFT_PWM is enabled.

・Remove declaration of setExtruderAutoFanState() in temperature.h
Because that function was abolished.

・Change from babystepsTodo to thermalManager.babystepsTodo in ultralcd.cpp
It fix compilation errors when BABYSTEPPING is enabled.
2016-05-05 18:01:39 +09:00
Scott Lahteine 084f6b5b44 Temperature singleton class 2016-05-04 19:42:12 -07:00
Scott Lahteine 60c6efb75c Merge pull request #3653 from thinkyhead/rc_bed_temp_watch_merge
Introduce temp watch protection for the bed
2016-05-01 13:58:28 -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
Scott Lahteine 96f51f400f Planner singleton class 2016-04-30 17:26:50 -07:00
Scott Lahteine ba66336503 Output error for disabled M303 2016-04-18 19:03:45 -07:00
Scott Lahteine d4a848c72a Fix broken PID_PARAMS_PER_EXTRUDER
As noted by @FalloutBe in #3519
2016-04-16 19:19:40 -07:00
esenapaj f9e1a0ee6c suppress warnings 2016-04-04 06:48:53 +09:00
Scott Lahteine 1a79b13b7a FILAMENT_SENSOR -> FILAMENT_WIDTH_SENSOR 2016-03-29 20:54: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
Scott Lahteine 04fa9d4f47 Make Autotune options into Menu Edit Items 2016-03-24 02:00:08 -07:00
WPBack e3f583a3be Fixes for PID AutoTune from menu
Fixes for #3189

Setting a temp is still missing
2016-03-24 01:47:30 -07:00
WPBack 3b3e8a02b5 Initial implementation of PID Autotune Menu Items
Adds the parameter U to M303. If U1 is included , it will use the
PID-values from the auto-tune.
2016-03-24 01:46:37 -07:00
Scott Lahteine 0c7f7ebcfb Styling adjustments (PR#2668 & PR#2670)
Keep "astyled" reformatting
2015-10-03 22:02:45 -05:00
Scott Lahteine 51e89a269c Overridable Options - Part 9 (PR#2561)
Apply `ENABLED` / `DISABLED` macros to temperature-related files.
2015-07-31 01:05:55 -05:00
AnHardt 9b0fa9c309 Changed dependency of start_watching_heater() in setTargetHotend() to THERMAL_PROTECTION_HOTENDS 2015-05-21 21:07:37 +02:00
AnHardt bc0764894a Shift call of start_watching_heater() into setTargetHotend()
to warrant watching is set or reset.

Make setTargetBed() in _lcd_preheat() dependant of TEMP_SENSOR_BED.
Use disable_all_heaters() in lcd_cooldown() and abort_on_endstop_hit.
2015-05-21 20:36:11 +02:00
Scott Lahteine 2445ae3d3a Combine thermal runaway and watch-period
- Make thermal protection for all hotends and/or bed into simple
switches
- Now enable `WATCH_TEMP_PERIOD` when `THERMAL_PROTECTION_HOTENDS` is
enabled
- Move detailed thermal parameters to `Configuration_adv.h`
- Add sanity checks to warn about old configurations
- Change `WATCH_TEMP_PERIOD` to seconds instead of milliseconds
2015-05-10 22:52:01 -07:00
Scott Lahteine 9b3d4380d3 Only watch the heater that was set 2015-05-10 20:26:45 -07:00
Scott Lahteine 54deb9eea3 Enable WATCH_TEMP_PERIOD by default 2015-05-08 22:36:02 -07:00
Scott Lahteine 09d60e0128 Naming and code comments 2015-04-13 17:17:36 -07:00
Scott Lahteine 4c7af484f8 Merge pull request #1787 from thinkyhead/fixup_tr
Fix: thermal_runaway_protection triggered by target temperature increase
2015-04-03 20:06:56 -07:00
Scott Lahteine c747becec1 Merge pull request #1796 from thinkyhead/pidbed_temp_eeprom
Add PIDTEMPBED to EEPROM
2015-04-03 20:03:38 -07:00
Scott Lahteine 713953d8c1 Upstream commits, allow no extruder in M105 2015-04-03 19:16:38 -07:00
Scott Lahteine 424d5495e4 Add PIDTEMPBED to EEPROM 2015-04-03 16:38:05 -07:00
Scott Lahteine 0e8182bbf2 Additional pin tests, cleanup 2015-04-03 15:31:35 -07:00
Scott Lahteine e96df67630 Clarify thermal_runaway_protection
- Add comments documenting `thermal_runaway_protection`
- Add an enum for the thermal runaway states
- Add macros for temperature helper functions
- Fix a glitch with the z probe sled in homeaxis
2015-04-02 05:10:14 -07:00
AnHardt 7b2550a604 Times can't be negative.
cardreader.cpp needs temperature.h for autotempShutdown() when
AUTOTEMP is defined but warns about unused variables.
Unpublished variables by putting them in to temperature.cpp.
2015-03-30 01:58:46 +02:00
Scott Lahteine fe29bdd72b Also fix temperature externs 2015-03-27 16:26:07 -07:00
Scott Lahteine 9c9726d469 Cleanup of temperature code
- Reduce calls to millis()
- General cleanup of manage_heaters
- General cleanup of pid autotune
- Formatting here & there
- Macros to clean up and shrink ISR code (reduced by ~364 lines)
2015-02-24 04:46:11 -08:00
MagoKimbra 986e723eeb Add 4th extruder 2015-01-24 13:37:58 +01:00
grob6000 bf2c923db5 Make multiple PID parameters a config option
* Adds config parameter `PID_PARAMS_PER_EXTRUDER` - allows single PID
parameters to be used where this would be preferable (e.g. dual
identical extruders)
* When disabled, will use `float Kp, Ki, Kd, Kc;` as before.
Preprocessor macros used to switch between.
* ultralcd.cpp defines extra menus for extra parameters only where
required
* M301 reports `e:xx` only if independent pid parameters enabled
* EEPROM structure still leaves space for 3 extruders worth, when undef
will save single parameter to all extruder positions, but only read the
first
* Switching off saves approx 330 B with no LCD enabled, 2634B with LCD
(RRD) enabled: this is significant.
* LCD modifications should be tested.
2015-01-11 13:50:17 +11:00
grob6000 37c7e8300f Independent PID parameters for each extruder
* Variables Kp, Ki, Kd, Kc now arrays of size EXTRUDERS
* M301 gains (optional, default=0) E parameter to define which
extruder's settings to modify. Tested, works with Repetier Host's EEPROM
config window, albeit only reads/updates settings for E0.
* All Kp, Ki, Kd, Kc parameters saved in EEPROM (version now v14), up to
3 extruders supported (same as Marlin in general)
2015-01-10 16:35:12 +11:00
Greg Rebholz 7ecb7cbd46 Added "auto fan" checks to PID_autotune 2014-12-23 23:50:00 -05:00