Commit Graph

93 Commits

Author SHA1 Message Date
f5eab912ed Apply #pragma once, misc cleanup (#12322)
* Apply #pragma once in headers
* Adjust some thermistors formatting
* Misc cleanup and formatting
2018-11-04 02:25:55 -06:00
d556dc1865 Fix and improve EEPROM storage (#12054)
* Clean up Temperature PID
* Improve EEPROM read/write/validate
* Group `SINGLENOZZLE` saved settings
* Group planner saved settings
* Group filament change saved settings
* Group skew saved settings
* Group `FWRETRACT` saved settings
2018-10-10 09:45:20 -05:00
74cd6cb4fc Single nozzle filament change (#11994) 2018-10-07 17:06:14 -05:00
d6b0fbd771 Use uint8_t for all fan speeds (#12032) 2018-10-07 15:34:41 -05:00
65b8f3821b Suppress temperature.h compile warning 2018-10-06 19:29:41 -05:00
11ac75edcb Use PGM_P for PSTR pointers (#11977) 2018-09-30 23:44:33 -05:00
e4389f7d23 Standard methods to wait for heating (#11949) 2018-09-29 01:44:47 -05:00
1718eff54a Code changes supporting up to 6 extruders 2018-09-16 22:32:53 -05:00
624986d423 Ensure ADC conversion is complete before reading (#11336)
The current Marlin implementation relies on a timer interrupt to start the ADC conversion and read it. However in some circumstances the interrupt can be delayed resulting in insufficient time being available for the ADC conversion. This results in a bad reading and false temperature fluctuations. These changes make sure that the conversion is complete (by checking the ADC hardware via the HAL) before reading a value.

See: https://github.com/MarlinFirmware/Marlin/issues/11323
2018-07-26 03:59:19 -05:00
1367df2875 Replace double with float, optimize calculation 2018-07-04 22:28:56 -05:00
f2c3b0d476 Use bit flags for homed/known 2018-06-11 22:05:16 -05:00
0ca9db7051 Correct HOTENDS for SWITCHING_EXTRUDER 2018-05-27 23:22:48 -05:00
99ecdf59af Smarter MIN, MAX, ABS macros
Use macros that explicitly avoid double-evaluation and can be used for any datatype, replacing `min`, `max`, `abs`, `fabs`, `labs`, and `FABS`.

Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-05-13 04:52:56 -05:00
8f8c6a9bc4 Move get_axis_position_mm to Planner (#10718) 2018-05-12 09:59:11 -05:00
625035a9ce Fix M301 access to lpq_len (#10714)
Co-Authored-By: Zwaubel
2018-05-12 02:13:40 -05:00
81b632c255 Additional temp-oriented improvements 2018-05-02 08:43:22 -05:00
9789c1c719 Fix current_temperature_chamber compile error
Fix #10505
2018-04-24 07:55:58 -05:00
cb46cb8480 Add HAS_HEATED_BED conditional (#10495) 2018-04-23 17:13:01 -05:00
0e8242180d Chamber temperature monitoring and auto fan control.
This is an initial cut for feedback, updated for 2.0.x.

Chamber temperature is currently reported along with hot end and bed
temperatures to serial. The format is just like that used for hot end
and bed temperatures, but using 'C' prefix. As there is no heater,
target is always 0. Is this appropriate, is there a better way to report
chamber temperatures?

Chamber temperatures are not reported on the LCD in any way.

When auto chamber fan is enabled, it currently just uses the same
temperature threshold as the other auto controlled fans.

As the chamber temperature is not connected to any heater, it doesn't
undergo mintemp/maxtemp monitoring. This would need to change in the
future if chamber heating became a feature.
2018-04-06 23:09:06 -05:00
97e8a6ebd9 Various fixes for DUE... (#10152)
- Watchdog reset during SD Card initialization.
- Move `DebugMonitor` to `DebugMonitor_Due.cpp`.
- Since the watchdog is enabled on boot do extra resets during init.
- Have `thermalManager` do watchdog reset before its ISR starts to prevent reset.
- Ensure that timers are stopped before reprogramming them to address tone issues.
- Improve SAM3XE reset when reflashed through the native port.
2018-03-21 19:04:45 -05:00
ffbf63e6af Add HAS_TEMP_SENSOR conditional 2018-03-07 01:53:50 -06:00
2057177184 Make enums into implicit char 2018-03-06 23:39:56 -06:00
7280fa1e31 Patch Power class 2018-02-10 15:41:18 -06:00
b5e92f4f90 [2.0.x] Enable / disable PSU automatically (#9503) 2018-02-06 00:22:30 -06:00
61bf8478a2 Add hotEnough methods 2018-01-22 04:38:37 -06:00
d5bf9e74c4 Merge pull request #8996 from p3p/pr_bf2_more_adc_filter
[2.0.x] PID control fix and more LPC1768 ADC filtering
2018-01-15 05:14:25 -06:00
f7efac57b7 Multi-host support 2018-01-10 00:14:47 -06:00
14dcad6bbc LPC1768: Increase ADC median filter from 3 values to 23
Clarify the HAL_adc_get_result method to make sure correct values enter the filters

HAL: Fix the PID control loop for non-AVR platforms
2018-01-07 22:15:20 +00:00
4af3d436b2 M303 pid autotune cleanup, commentary 2018-01-03 21:30:45 -06:00
5e01ee8adf Temperature updates for parity with 1.1.x 2018-01-01 18:29:08 -06:00
cf2193c07f Comment, fix filament width sensor 2017-12-13 02:32:34 -06:00
c1184552ac Change K1 to required option PID_K1 2017-12-05 19:59:59 -06:00
45c2388a58 Apply const to thermal_runaway_protection args 2017-12-01 19:42:44 -06:00
33912fa7e8 Update Temperature::setPwmFrequency prototype to match source
Introduced with #8446
2017-11-20 01:50:41 -08:00
c14000775b PWM fixes, slow down fan update
include LPC1768 syntax for M42

couple more pin_t changes

consistency

change M42 to R, P format

Revert "change M42 to R, P format"

This reverts commit 01f12f579ec9ccc1bb9126e68d2c86449e9b7edf.
2017-11-18 07:05:50 -06:00
1ed86adf9c Cleanup around updatePID 2017-11-10 19:27:34 -06:00
2f9e42feb9 M303 thermal runaway protection 2017-11-03 03:57:46 -05:00
325233b454 Fix automatic stepper assignment for X/Y/Z dual stepper drivers (#8130) 2017-10-28 19:45:07 -05:00
6cb26c98c8 Fix Baby Stepping on 32-Bit platforms (#8001)
Also, Max7219 debug code was used for this effort.   It has been
improved and hardened.
2017-10-16 16:29:37 -05:00
df0432c7c8 Move M155 to cpp, auto-report to Temperature 2017-09-21 16:26:56 -05:00
71aefc2e22 Move heater output to Temperature class 2017-09-21 16:26:47 -05:00
3d8a0ab4b2 Module updates 2017-09-21 16:26:42 -05:00
0c9231fd04 Move 'module' files 2017-09-12 14:51:05 -05:00