ayberkozgur
7268d46508
Always calculate extruder temperature PID d term (PR#2432)
2015-07-13 13:22:26 -05:00
Scott Lahteine
a274769f4f
Clean up spacing and comments
...
Also clean up some trailing spaces in a few other sources
2015-06-15 20:20:31 -05:00
Scott Lahteine
1d94d098bf
Formatting tweaks as part of fixing issue 1497
2015-06-14 19:57:27 -05:00
Scott Lahteine
e602c28ad9
Set auto fan pins to OUTPUT during init
...
Fixes the problem of these pins being left in INPUT state, as described
in #1497
2015-06-14 19:57:27 -05:00
MagoKimbra
eb81982fcd
Fix error next command in autotune (PR#2274)
...
Now send only temperature for T or B, but not send OK.
Host interprets the line to show the right temperature, but not in
response to M105 then stop and send commands until it ends the autotune.
2015-06-12 07:10:38 -05:00
AnHardt
b1404a0743
fix thermal protection state machine target temp. V2
...
If the target temperature is changed then it would always stay in the reset state.
Thanks to @tonokip.
Replaces #2119
2015-06-02 12:26:21 +02:00
Jonathan Bastien-Filiatrault
e86f2342c0
Separate the maximum integral power for the bed from PID_INTEGRAL_DRIVE_MAX / PID_MAX.
...
My PID_INTEGRAL_DRIVE_MAX was at 96, which was insufficient for my bed
to reach its intended temperature. The head requires a low maximum power since
I run on 24 volts and it has a somewhat low thermal mass.
2015-05-28 11:48:04 -04:00
AnHardt
da246f5cb1
Activate BED_MINTEMP error.
...
And call _temp_error() directly for ERR_MAXTEMP_BED to avoid the only one time use of bed_max_temp_error().
Includes #2156 .
2015-05-25 13:23:19 +02:00
AnHardt
959da98d8e
Call kill() only once when triggered by a temperature error
...
to avoid stack overflow when called from interrupt.
Some clean up for calls of disable_all_heaters().
'disable_all_heaters()' is called in kill() and again when 'killed' is already set inside _temp_error().
2015-05-25 12:44:03 +02:00
Scott Lahteine
063881b5bd
Fix a couple of doubled semicolons
2015-05-21 18:15:29 -07:00
Scott Lahteine
00716d0ca0
Small start_watching_heater adjustment
2015-05-21 16:44:49 -07:00
AnHardt
4422365a53
Merge branch 'Development' of https://github.com/MarlinFirmware/Marlin into _temp_error
2015-05-20 23:34:39 +02:00
AnHardt
4113762062
Merge pull request #2130 from AnHardt/kill2
...
Add a string parameter to kill()
2015-05-20 23:32:51 +02:00
AnHardt
120d4c7a8c
Merge remote-tracking branch 'origin/kill2' into _temp_error
2015-05-20 21:25:32 +02:00
AnHardt
cb6e82dc60
Change from kill() to kill(const char *)
...
in temperature.cpp
2015-05-20 21:22:48 +02:00
AnHardt
9d13942278
Use new kill() with parameter.
2015-05-20 21:18:52 +02:00
AnHardt
2990c6c45f
Use new kill_() for _temp_error()
...
instead of stop(). We really want to require a reset and no chance to set a new temperature.
2015-05-20 14:03:14 +02:00
AnHardt
70163dafb9
Use _temp_error() for all errors thrown by different mechanisms
...
Now ending in an endless loop.
Tidy up the output format.
We now get:
ERRORTEXT ", system stopped! Heater_ID: " HEATERID
Where ERRORTEXT can be:
"Heating failed"
"Thermal Runaway"
"MAXTEMP triggered"
"MINTEMP triggered"
and soon
"Thermal Jump"
HEATERID can be
0, 1, 2 ,3 , "bed"
This messages are always followed by the common:
"Printer stopped due to errors. Fix the error and use M999 to restart. (Temperature is reset. Set it after restarting)"
2015-05-18 20:26:25 +02:00
AnHardt
97ca1b3f4d
Name magic value 20 to MAX_OVERSHOOT_PID_AUTOTUNE
...
to make it better findable.
2015-05-18 14:15:29 +02:00
Scott Lahteine
f65833931d
Formatting tweaks
2015-05-13 02:02:19 -07:00
Scott Lahteine
d693e0f378
Use WATCH_TEMP_INCREASE + TEMP_HYSTERESIS + 1 as difference limit
2015-05-12 18:30:38 -07:00
Scott Lahteine
6697a8f375
Watch the heater a little longer
2015-05-12 18:22:47 -07:00
Scott Lahteine
5693a6e3c9
Fix heating error message
2015-05-12 18:17:13 -07:00
Scott Lahteine
8332a15899
Fix testing of runaway options in temperature.cpp
2015-05-10 23:03:24 -07: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
28c87ec81b
Disable all heaters on temp error
2015-05-08 23:17:25 -07:00
Scott Lahteine
54deb9eea3
Enable WATCH_TEMP_PERIOD by default
2015-05-08 22:36:02 -07:00
Scott Lahteine
deedb00c18
Document WATCH_TEMP_PERIOD
2015-05-08 22:25:51 -07:00
Scott Lahteine
a120bf3fe4
Latest upstream commits
2015-04-27 22:40:19 -07:00
Scott Lahteine
ae53b3cdc3
Fix the M303 S-1 report text
2015-04-27 22:25:00 -07:00
Scott Lahteine
0fca084ea6
Make EEPROM reproducible in GCode
...
With these changes the output of `M503 S0` is all you need to restore
the EEPROM. Building on this it is straightforward to save and restore
the EEPROM state using the SD card or external GCode file.
- Added `M145` to set “heatup states” for the LCD menu
- Added `M420` to toggle Mesh Bed Leveling
- Added `M421` to set a single Mesh coordinate
- Extended `Config_PrintSettings` with added M codes
- Cleaned up some comments here and there
2015-04-26 20:56:33 -07:00
paclema
581685a231
Added new PID autotune info, to make easy copy & paste results to marlin
2015-04-17 11:15:09 +02:00
Scott Lahteine
09d60e0128
Naming and code comments
2015-04-13 17:17:36 -07:00
Scott Lahteine
257a907456
Fix typo in next_bed_check_ms
2015-04-12 23:17:28 -07:00
Scott Lahteine
e4b1e8651b
next_ vars faster than previous_
...
- Change some `previous_` time vars to `next_` so an add only happens
at intervals
- Fix `HEATER_0_USES_MAX6675` polling too frequently, or not at all
2015-04-12 23:06:50 -07:00
Scott Lahteine
ccddc280be
Apply three more commits
2015-04-12 22:47:44 -07:00
Scott Lahteine
27cb90da8b
IsStopped / IsRunning inline
2015-04-08 00:56:19 -07:00
Scott Lahteine
e502144eda
Fixup formatting of last commit
2015-04-06 21:28:14 -07:00
Richard Miles
1a5293c2ce
Prevents MINTEMP / MAXTEMP when no heaters present
...
This commit checks whether or not HEATER_0 is in use, and if not, skips
the MIN / MAX temperature checks.
2015-04-05 22:27:14 +01:00
Scott Lahteine
b0f198c153
heater_index above its use
2015-04-04 06:18:08 -07:00
Scott Lahteine
60f8e0386f
More thermal runaway states
2015-04-04 05:45:36 -07:00
Scott Lahteine
f9dbd73652
Fix tr_target_temperature type - float!
2015-04-04 05:25:53 -07:00
Scott Lahteine
a3e129e091
Merge pull request #1801 from thinkyhead/fixup_probing
...
Minor optimizations
2015-04-03 22:30:01 -07:00
Natealus
a6ba40ae48
Compiling error temperature.cpp with multiple extruders defined
...
It wouldn't compile because of this line in temperature.cpp it turns out
it was just a stray ( that didn't line up with the previous lines so I
just made it in line with the rest and it compiled fine.
2015-04-03 23:09:31 -06:00
Scott Lahteine
fc3c76fc16
Fix #1800
2015-04-03 22:04:42 -07:00
Scott Lahteine
9ba55baa5b
Track target temperature separately for each heater
2015-04-03 19:42:40 -07:00
Scott Lahteine
528e32a1d4
Fix timeout in thermal_runaway when temperature is set higher
2015-04-03 19:34:55 -07:00
Scott Lahteine
b98ebd517e
disable / enable_all_steppers functions
2015-04-03 19:25:22 -07:00
Scott Lahteine
c756b4cf07
Comment tweak
2015-04-02 06:11:03 -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
488666832b
Remove the previously introduced ()
2015-04-01 13:40:05 +02:00
AnHardt
3f2e863206
Improve conditions for HAS_TEMP
...
and use them in temperuture.h
Flattened the if structure - the preprocessor is doing the work - not the Arduino. Arduino.
2015-04-01 02:56:14 +02:00
AnHardt
85f8a26ba4
Fix MIN&MAX temperatures again
...
replaced GE0 with th matching GEX in the second row.
added some ()
2015-04-01 00:48:04 +02:00
Scott Lahteine
571652c49b
Fix LCD click
...
- Make the default LCD click sound more pleasant
- Fix warnings about bed temperature runaway
2015-03-31 01:41:24 -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
ba871e46bf
Fix compiler warnings
...
- Patched up for most included configurations
2015-03-27 20:29:05 -07:00
Scott Lahteine
df02b992b0
Fix redundant_temperatrure_raw setting
2015-03-27 16:37:22 -07:00
Scott Lahteine
ce485175eb
Give all temp arrays 4 indices
2015-03-27 16:11:28 -07:00
Scott Lahteine
410f64782a
Always 4 temp sensors
2015-03-26 16:22:21 -07:00
Scott Lahteine
ad05a726c1
Merge pull request #1691 from AnHardt/PID_dt
...
Move definition of PIDdT back to temperature.h
2015-03-25 21:22:39 -07:00
AnHardt
f680e509c4
Enclosed error-messages for TEMP_SENSOR_1_AS_REDUNDANT in PSTR()
2015-03-25 23:26:06 +01:00
AnHardt
ac81b4084f
Make variables and function static.
2015-03-25 21:37:15 +01:00
AnHardt
01cc97a3c3
Corected condition for PIDdT
2015-03-25 12:08:23 +01:00
AnHardt
94330705c7
Move definition of PIDdT back to temperature.h
...
make it unconditional
remove all definitions in the 'Configuration.h's
remove form 'Conditionals.h'
2015-03-25 11:51:41 +01:00
AnHardt
dd0067afa6
Fix MAX6675 again and introduce set_current_temp_raw()
...
to make the temperature-code work again with Arduino 1.0.6.
Sorry could not make an extra block on base level.
2015-03-25 11:08:24 +01:00
Scott Lahteine
0d81abe1c9
Merge branch 'Development' into config_testing
...
Latest upstream commits
2015-03-23 21:13:04 -07:00
Scott Lahteine
fc53e43de6
Don't test raw temp for MAX6675
...
- Remove test of raw temp for thermistor 0 when using MAX6675
- Longer `raw_temp_value` array for `TEMP_SENSOR_1_AS_REDUNDANT`
2015-03-23 20:55:48 -07:00
Scott Lahteine
1fac388664
Revert measurement loop
2015-03-23 15:18:22 -07:00
Scott Lahteine
6bdee87be3
Cleanup temperature code
...
- Get rid of unused temp states in the ISR, resulting in more frequent
temperature reading with fewer sensors
- Shrink code slightly in min/max testing
2015-03-23 00:27:29 -07:00
Scott Lahteine
15eb5d35a2
Merge branch 'Development' into config_testing
...
Latest upstream commits
2015-03-21 15:42:45 -07:00
Scott Lahteine
3703694e30
Fix temperature min/max test
...
- Base tests on all thermistors/thermocouples, not just heater 0
2015-03-21 14:23:43 -07:00
Scott Lahteine
63d5d28085
Merge branch 'Development' into config_testing
...
Latest upstream changes
2015-03-20 04:15:18 -07:00
Scott Lahteine
670006b919
Remove invariant code from Configurations
...
- Add `Conditionals.h` with calculated configuration values
- Add `SanityCheck.h` with checks for configuration errors
- Remove equivalent code from all configurations
- Move error checks from some sources to `SanityCheck.h` also
- Fix initialization of count_direction in stepper.cpp
2015-03-19 22:22:23 -07:00
AnHardt
47c1ea72af
Merge https://github.com/kieranc/Marlin into PIDdebug
...
Conflicts:
Marlin/temperature.cpp
Cleaned merge conflict.
Codeposition had changed.
Variable pid_input had vanished.
Signed-off-by: AnHardt <github@kitelab.de>
2015-03-20 00:07:36 +01:00
AnHardt
28b1c37dea
Fix for #1612
2015-03-15 21:35:33 +01:00
Scott Lahteine
bb4cb1b15a
Merge pull request #1606 from thinkyhead/cleanup_stepper
...
Cleanup of stepper.cpp
2015-03-15 06:05:08 -07:00
Scott Lahteine
c37f7d15c9
- Rename WRITE_E_STEP for consistency
...
- Add BIT and TEST macros
- Add _APPLY_ macros to stepper.cpp to help with consolidation
- Consolidate code in stepper.cpp using macros
- Apply standards in stepper.cpp
- Use >= 0 instead of > -1 as a better semantic
- Replace DUAL_Y_CARRIAGE with Y_DUAL_STEPPER_DRIVERS
2015-03-14 04:28:22 -07:00
Scott Lahteine
cb57fc727d
Declare pid_output for PIDBEDTEMP
2015-03-13 20:19:51 -07:00
Scott Lahteine
3d6deb9bdf
Simplify manage_heater
...
- Make separate get_pid_output(e) and get_pid_output_bed() function
- Reduce size of manage_heater function
- Hopefully work around linker errors
2015-03-13 19:49:41 -07:00
Scott Lahteine
e3ca9137b5
Fix missing temp_error declarations
...
- Fix for #1591 replacing #1595
2015-03-11 16:38:42 -07:00
AnHardt
3024f6c706
Undubble MSG_MIN &MSG MAX
2015-03-06 00:25:44 +01:00
Scott Lahteine
dfb38874f8
Some suggested changes for #1555
2015-03-03 00:48:20 -08:00
Scott Lahteine
1a7b0d9a37
Redo HAS_* macros to fix define error
2015-02-26 01:14:59 -08:00
Scott Lahteine
864dddc878
Macros to the top, a few HAS_* macros
2015-02-26 00:33:30 -08:00
Scott Lahteine
fd1ea9d56f
Move literal strings to language files
2015-02-24 23:03:08 -08:00
Scott Lahteine
aa9c1f1bed
Better name for ADC macro
2015-02-24 05:38:10 -08: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
Scott Lahteine
e3fd3e8fa4
Fix typos in checkExtruderAutoFans
2015-02-20 00:08:59 -08:00
Natealus
ea9e49b20d
ARRAY_BY_EXTRUDERS 4th hotend PID parameters
2015-02-12 00:56:47 -07:00
kieranc
0a19109476
Enable PID debugging for heated bed
2015-02-10 14:11:44 +01:00
Natealus
f4b0a40abb
Additional fixes to temperature.cpp and found another missing line
...
Looks like INVERT_E3_DIR was missing in the configuration.h also as I
did a test compile with 4 extruders and Azteeg X3 Pro defined. So I also
added those lines too. Additional formatting to make the comments line
up better in that section.
2015-02-08 15:43:58 -07:00
Natealus
697ee2dc50
Compiling errors with 4 Extruders defined
...
Here were a few changes that I had to make/add lines for the 4th hotend.
A compiling problem in the Temperature.cpp and missing lines in
configuration.h and configuration_adv.h. I added these lines in all of
the example configs too.
2015-02-08 01:05:05 -07:00
MagoKimbra
3021f7f743
Fix PID_dT
...
Add PID_dT in temeprature.cpp
2015-01-25 17:56:14 +01:00
MagoKimbra
ef5959a705
Fix Temperature
...
Githun insert this line when i merge with actual Branch development...
2015-01-24 13:49:29 +01:00
MagoKimbra
3d4ee6c868
Merge branch '4th-extruders' of https://github.com/MagoKimbra/Marlin into 4th-extruders
...
Conflicts:
Marlin/temperature.cpp
2015-01-24 13:41:15 +01:00
MagoKimbra
986e723eeb
Add 4th extruder
2015-01-24 13:37:58 +01:00
Scott Lahteine
f16bdd2ff2
Borrow from Ultimaker to fix MAX6675 SPI conflict
...
Changes to temperature.cpp from Ultimaker fork, intended to address
#1226 and #1227
2015-01-24 03:49:15 -08:00
MagoKimbra
0ebf896070
Add 4th extruder
2015-01-23 23:13:06 +01:00
Mark Hindess
0ce252ba7a
This ifdef is for bed code so should use bed constants for testing.
...
Without this fix, the code wont compile with extruder but without bed
runaway protection defined.
2015-01-23 16:30:13 +00:00