Robert F-C
372e12f83f
Implement automatic extruder/cold-end fan control based on temperature
This change allows fan outputs to automatically turn on/off when the
associated nozzle temperature of an extruder is above/below a threshold
temperature.
Multiple extruders can be assigned to the same pin in which case the fan
will turn on when any selected extruder is above the threshold.
It also makes the M42 command compatible with the M106/M107 command.
The majority of the logic in this change will be evaluated by the
compiler at build time (i.e, low code space requirements).
12 years ago
Erik vd Zalm
6752cb2d9c
PID now per extruder. Fixed typo
12 years ago
daid303
38ee395ac7
Replace the 1ms delay for 2 nops to get a 100ns delay. #259
12 years ago
oni303
ab09fa4bbf
fixed pwm generation at pin D12 and D13 when one of them is used as FAN_PIN on Sanguino, added soft pwm entry for FAN_PIN in temperature.cpp
12 years ago
daid303
08356361ac
Fixing a problem with heated beds not working without PID and BED_LIMIT_SWITCHING
12 years ago
daid303
f30b46b2a8
One more fix for #338 , I really should get a heated bed to test with.
12 years ago
daid303
65c3f1ffcd
Most likely fixing #338
12 years ago
daid303
55ba90ac19
Add PID functional range setting. With high powered heaters the current functional range of 10 degrees causes high overshoots as the PID needs to kick in before the temperature hits 10 degrees below target.
12 years ago
daid303
5ff5cee8ce
Fix the sensitive pin definitions, there where analogue numbers in the digital pin list. Also made M42 without a P function on the LED_PIN (which was otherwise a useless pin definition)
12 years ago
daid303
3fb07d9b8d
Add MINTEMP/MAXTEMP error to LCD, and fix temperature bug with more then 1 extruder.
12 years ago
daid303
82c8724b33
Fix compile with PID_DEBUG
12 years ago
daid303
52158dffcc
Big temperature code update. No longer converts back and forwards between temperature and raw sample value. Reducing complexity, removing code. Also named some variables better. While keeping the safety intact and functionality the same.
12 years ago
daid303
587154c01b
Fix the WATCHPERIOD implementation. It did not work correctly in a multi extruder setup, it did not work after 32 seconds after startup (int16 used as millies timestamp). And it did not work if you gave an M104 or M109 when the target was already around the target setpoint. So on average, it did not work at all. The new implementation should be robust in detecting a failure to heat up.
12 years ago
daid303
529748894c
Minor changes in the temperature code for some cleanup.
12 years ago
daid303
6a9bee27cc
Changed the naming of some LCD functions, so the names match better what the function does. Also moved around some prototypes for general cleanup.
12 years ago
daid303
94ea26ff46
Some minor changes on code style. And a bugfix where the counters for positioning in the stepper where wrong depending on compiler settings. (Caused strange values to reported back with M114 and endstop triggers). Also fixed compiling with FWRETRACT enabled.
12 years ago
daid303
72586eb30a
Solved few warnings.
12 years ago
daid303
06b58a9c4f
First cleanup. Moved all code to cpp files, so there are no dependencies on pde files. And no more odd requirement to cat files together. (Still need to fix the Makefile). Also cleaned up some defines and made defines upper case as by C coding conventions.
12 years ago
Mark Finn
d197f8504b
clean up and changes from testing
12 years ago
Mark Finn
eb06a886c4
missed
12 years ago
Mark Finn
04631d2250
cleanup for pull
12 years ago
Mark Finn
9698f4ea64
bed pid
Conflicts:
Marlin/Configuration.h
12 years ago
ZetaPhoenix
e8c92e0a95
Missing #else in temperature.cpp prevented reading bed temp when TEMP_BED_PIN <7. Thanks to Leland Wallace for helping me track this down via "Sesame Street" coding (what is not like the other)
12 years ago
Dabble63
6b45e9f167
Add Duty Cycling to the Heater Bed
13 years ago
Erik van der Zalm
e31bef31ad
Limit PID autotune PWM to PID_MAX
13 years ago
Erik van der Zalm
1874cb71a6
Added option to increase the FAN PWM frequency.
13 years ago
Logan Bowers
3eacb4c16d
Wrap the call to turn off the bed heater in a #if to prevent a compile error on boards that do not have a bed heater
13 years ago
Bernhard
33bb044d7c
fixed catsting to (int)e in serial error messages.
see https://github.com/ErikZalm/Marlin/issues/148
13 years ago
Erik van der Zalm
67cf105bc6
Fixed AUTOTEMP (M109 S215 B260 F1 starts autotemp)
Changed SLOWDOWN. IF this does not work ok OLD_SLOWDOWN is the old algo.
13 years ago
Erik van der Zalm
8aee9d51b6
Disabled disable_heater in PID_autotune.
13 years ago
Daid
414408b2d0
Fix for wrong systax in #ifdef.
13 years ago
Erik van der Zalm
cf7c8c458f
Fixed MAX6675
13 years ago
Erik van der Zalm
63aec3c56e
Replaced Kill by Stop. If the printer is stopped. Fix the error and use M999 to restart.
Moved the PID_dT in the Ki and Kd calculation from the configuration.h to temperature.cpp
13 years ago
Erik van der Zalm
33f5697888
PPID tune exports more constants.
13 years ago
Erik van der Zalm
15ad923310
Removed !!!. Stupid arduino bootloader can't handle this.
13 years ago
Erik van der Zalm
c077316b2b
Added PID autotune. (experimental)
M303 Starts autotune. Wait till the Kp Ki and Kd constants are printed.
Put these values in Configuration.h
13 years ago
haxar
79a466ca26
make analog2tempBed return a precise celsius reading for BED_USES_THERMISTOR, complementing changes to analog2temp in d15f01e
13 years ago
Erik van der Zalm
b48d67ce10
Fixed homing
13 years ago
Phil Hord
740f0c7690
Add explicit #define for bogus temp override
The code to ignore the "bad thermistor reading failsafe"
suicide function depends on the existing of the PS_ON pin
feature. But in some boards this shouldn't be the case
Fix this by adding an explicit definition to make our
intentions more clear and separable.
13 years ago
Daid
73344e69c1
Added temperature offset/gain settings for AD595.
13 years ago
Christian Thalhammer
14702089ee
-disable TEMP Min MAX Kill while using PS_ON Pin
ON GEN7 there is no temperature reading when power is off.. so Marlin
would kill itself. There seems to be an update from "Traumflug" on GEN7
using standby VCC for thermistors.
13 years ago
Erik van der Zalm
9f139d6e0e
Added MAX6675 support. (Thanks to gregfrost)
Needs some work to remove the blocking in read max6675.
13 years ago
Michael Moon
8d0916af13
allow Marlin to actually compile with Makefile pulled from Sprinter and a few other modifications
13 years ago
Bernhard
3c1a4aac2b
header file simplification
13 years ago
Bernhard
415aadf704
lcd panel bed support
advance and ultipanel not any more in default config
13 years ago
Bernhard
f312216e97
Revert "untestest commit, so I don't loose code.. features runout prevention addons"
This reverts commit 651cde8b98
.
13 years ago
Bernhard
651cde8b98
untestest commit, so I don't loose code.. features runout prevention addons
13 years ago
Erik van der Zalm
e017228569
Merged multiple extruder support.
Soft PWM. (Sanguinololu can also have PID temperature control)
Interrupt save WRITE for addresses > 0x0FF
13 years ago
Bernhard
88ee053af0
heating up santity, formarly knows as "watchdog", but renamed due to the existance of the real watchdog, works now.
13 years ago
Denis B
4fd75dc813
Working version of multiple extruders (up to 3)
- The temperature control is pretty much complete
(not sure what to do w/ autotemp though)
Changed the pins assignment to clearly separate bed and extruder heaters
and temp sensors, changed a bit how termistor tables are handled.
- The steppers control is rudimentary
(only chanages what pins it uses depending on the active_extruder var,
but that's enough for switching extruder in the start.gcode in the
the profiles)
- Tested only w/ RAMPS 1.4
13 years ago