Commit Graph

160 Commits

Author SHA1 Message Date
082f6a27de ADAPTIVE_FAN_SLOWING extension to hotend thermal protection (#12853) 2019-01-12 00:41:48 -06:00
459f4fef60 Fix Temperature::init bug with HEATER_4_PIN 2019-01-11 22:54:26 -06:00
60cb36bef3 Misc. improvements (#12747)
* Make ExtUI respect MAXTEMP limits
  - Temperatures are now clamped by MAXTEMP limits rather than arbitrary values.
* Speed up USB init, add status
  - Speed up USB initialization
  - Show status message if init failed
* Enable status messages for EXTENSIBLE_UI
* Adjust max limit to MAX_TEMP - 15
* Misc. tweaks to formatting, const, etc.
2019-01-01 15:17:48 -06:00
9d59a9c840 Followup to #12691 (typo) 2018-12-20 16:38:32 -06:00
4dad489a50 [2.0.x] Limit PID autotune target to maxtemp-15 (#12691) 2018-12-20 15:55:30 -06:00
c986239837 A single SERIAL_ECHO macro type (#12557) 2018-11-29 16:58:58 -06:00
03ef2d6c82 Fix "paused" message and M125 called by M25 (#12551) 2018-11-28 19:28:31 -06:00
09d6db491a Fix wait_for_bed compile error 2018-11-25 18:05:41 -06:00
8a0992d921 Fast PWM for controller fan (#12485) 2018-11-23 16:03:39 -06:00
1f93d2bcf7 Fix LCD compile error, etc. (#12472) 2018-11-18 20:39:49 -06:00
c1e17037e5 Various fixes for MarlinUI and ExtUI (#12439) 2018-11-17 22:21:44 -06:00
d3605cfc26 Don't start watching heaters when target is 0 (#12453) 2018-11-17 21:53:52 -06:00
ca21ac6b9b Support two MAX6675 thermocouples (#8686) 2018-11-16 18:20:33 -06:00
d2bb53702a Optimize target_extruder, ignore T with mixing (#12432)
* Optimize target_extruder, ignore T with mixing
* Give G-code Tn parity with tool_change
2018-11-14 17:33:04 -06:00
d82c350de7 Miscellaneous LCD code renaming, reordering (#12430)
* Move special characters to language.h
* Apply some naming standards
* Clean up menu item draw functions
* Rename some Temperature methods
* UI => ExtUI
2018-11-14 13:13:51 -06:00
a0c795b097 Encapsulate common display code in a singleton (#12395)
* Encapsulate common LCD code in a singleton
* Depend more UBL code on UBL_DEVEL_DEBUGGING
  - Since most users don't need the debugging on at all times, this helps reduce the default build size for UBL by over 2K, a little closer to fitting on 128K boards.
2018-11-11 12:16:24 -06:00
6093df11dc Allow G26 to use the active extruder (#12387)
* Make lcd_quick_feedback argument optional
* Add click_to_cancel option to wait_for_hotend/bed
* Have G26 use the active nozzle and wait_for_hotend/bed
* Use wait_for_release in UBL G29
* Add 'T' parameter to G26 for an initial tool-change
2018-11-10 18:07:38 -06:00
5ba6607181 Fix keypad-related compile error (#12306) 2018-11-02 22:29:32 -05:00
323c088356 Restore LED light color after pid tuning (#12082) 2018-11-01 22:04:19 -05:00
71e19baf69 Fix kill => disable_all_heaters => print_job_timer.stop (#12146)
- Remove `print_job_timer.stop()` from `disable_all_heaters`
- Call `print_job_timer.stop()` for relevant `disable_all_heaters()`.
- Split up `kill()` for watchdog interrupt safety
2018-10-18 21:20:56 -05:00
d43d4e4219 Refactor PRINTER_EVENT_LEDS, apply to M303 (#12038)
Co-Authored-By: Giuliano Zaro <gmagician@users.noreply.github.com>
2018-10-10 21:25:43 -05: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
11ac75edcb Use PGM_P for PSTR pointers (#11977) 2018-09-30 23:44:33 -05:00
d89d8fe852 Fix Busy State in temperature.cpp
Fix #11954
2018-09-29 17:03:35 -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
b220a825a7 Fix raw_filwidth_value error 2018-09-12 04:31:55 -05:00
530a13ab6c [2.0.x] SECURITYFIX missing max temp error when PID is used (#11717) 2018-09-05 01:41:45 -05:00
c64199941e Compile only selected PIO environment (#11519) 2018-08-14 03:28:52 -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
22ebbc091f Tweak some SoftPWM code 2018-07-25 18:09:31 -05:00
1367df2875 Replace double with float, optimize calculation 2018-07-04 22:28:56 -05:00
3fd1f32b73 Fix ADC key and chamber temp 2018-06-10 20:11:40 -05:00
3701869e6c Add HAL_timer_start for AVR, use stepper timer to time pulses 2018-06-09 22:30:13 -05:00
853a9056ac Long thermistor tables need special consideration 2018-05-28 06:28:34 -05:00
1ce97f1f6d Faster (bisect) search in thermistor tables (#10883) 2018-05-27 23:27:51 -05:00
d557c84a71 [2.0.x] Error for FAST_PWM_FAN with 32 bit CPU (#10798) 2018-05-20 11:37:55 -05:00
569df3fc0c Fix interrupt-based endstop detection
- Also implemented real endstop reading on interrupt.
2018-05-20 07:10:24 -05:00
a11eb50a3e Refactor and optimize Stepper/Planner
Better encapsulation and considerably reduce stepper jitter
2018-05-20 06:23:58 -05:00
0566badcef Add memory barrier, optimal interrupt on-off
Disabling an ISR on ARM has 3 instructions of latency. A Memory barrier is REQUIRED to ensure proper and predictable disabling. Memory barriers are expensive, so avoid disabling if already disabled (See https://mcuoneclipse.com/2015/10/16/nvic-disabling-interrupts-on-arm-cortex-m-and-the-need-for-a-memory-barrier-instruction/)
2018-05-20 02:39:34 -05:00
e1d9046efc [2.0.x] Temperature reading fix (#10774) 2018-05-19 15:39:36 -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
083ec9963e Tweaks to heater / lcd conditions 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
a1062eec5b Better handling of DELAY_NS and DELAY_US (#10716)
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-05-12 08:34:04 -05:00
f5aaa2d6c0 Fix some compiler warnings 2018-05-12 05:28:12 -05:00
625035a9ce Fix M301 access to lpq_len (#10714)
Co-Authored-By: Zwaubel
2018-05-12 02:13:40 -05:00
325bbbc8c2 [2.0.x] Enable AD595 and AD8495 in concert (#10693)
* Allow both AD595 and AD8495 in concert
* General temperature code tweaks
2018-05-11 01:01:51 -05:00