Scott Lahteine
81aab828e2
Fix a "Heating failed" error
...
Addressing #3085 . If the target_temperature is set directly it never invokes or disables the timer set in `start_watching_heater`, so after _stopping a print_ or turning off _all heaters_ you could get a “Heating failed” error.
2016-03-11 05:07:48 -08:00
Scott Lahteine
27f244ba2c
Support MAX31855 as Temperature Sensor -3
2016-03-10 02:49:54 -08:00
jbrazio
986b508ff7
Print timer now stops when it sees the last extruder temperature being shutdown
2016-03-08 18:11:02 +00:00
Scott Lahteine
ff13070b59
Use _BV macros, patch up others
2016-03-06 05:51:55 -08:00
Scott Lahteine
209f5f21e0
Use macros where possible
...
Apply `constrain`, `NOMORE`, `NOLESS` and `CRITICAL_SECTION` macros
wherever possible.
2016-03-06 05:51:55 -08:00
Scott Lahteine
3a3d358df9
Fix Printrboard with LCD (redo)
...
Based on #2860 - rebased for RCBugFix
2016-03-05 22:13:00 -08:00
Blue-Marlin
0631541166
Fix disable_all_heaters() for MAX6675
2016-03-02 14:17:23 +01:00
AnHardt
57da1b8497
Host parseble output for M109, M190 and M303
...
Make the output of M105 more similar to Repetier.
Make the text-print pert of M105 an extra function to make it reusable. `print_heaterstates()`
Use `print_heaterstates()` in M019, M190 and M303
2015-12-07 15:37:53 -06:00
Richard Wackerbarth
956418c674
Kc is also a multi-PID parameter
2015-11-23 06:08:01 -06:00
Scott Lahteine
dbd4c17096
Init Kp, Ki, Kd to 0
2015-11-12 00:03:22 -06:00
Scott Lahteine
b4af4441c5
Clean up watchdog impl.
2015-11-12 00:03:22 -06:00
Scott Lahteine
9bdab4f3a8
Clean up "else" and other spacing
2015-11-12 00:03:21 -06:00
Richard Wackerbarth
25d636c9e0
Compiler issues (PR#2696)
2015-11-11 23:52:11 -06:00
AnHardt
47401ec97b
MSG_EXTRUDER_SWITCHED_OFF was renamed to MSG_REDUNDANCY
...
in language.h, but was not renamed here. If TEMP_SENSOR_1 is enabled as redundant then
an error is thrown that MSG_EXTRUDER_SWITCHED_OFF is not defined.
Originaly by @12dstring
2015-10-08 10:45:11 -05:00
Scott Lahteine
0c7f7ebcfb
Styling adjustments (PR#2668 & PR#2670)
...
Keep "astyled" reformatting
2015-10-03 22:02:45 -05:00
Scott Lahteine
bc50db9cf6
Implement PID_ADD_EXTRUSION_RATE
2015-09-12 07:53:20 -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
d17f7ebc8a
Multiply WATCH_TEMP_PERIOD by 1000UL (PR#2535)
...
instead of 1000. Else we get errors with times over 32 seconds.
2015-07-27 20:30:53 -05:00
Scott Lahteine
e4c01f1c7e
Simplify init with ARRAY_BY_EXTRUDERS1 macro (PR#2507)
2015-07-26 20:40:27 -05:00
Scott Lahteine
77e80ef367
Require extruders for thermal code
2015-07-16 16:36:30 -05:00
Scott Lahteine
3bde4f4855
Require temp sensor for bed thermal protection
2015-07-16 16:36:30 -05:00
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