159 Commits (a74aad3b4a60a3e69f33afaea7f8680da705e83a)

Author SHA1 Message Date
Scott Lahteine 459f4fef60 Fix Temperature::init bug with HEATER_4_PIN 6 years ago
Marcio Teixeira 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.
6 years ago
Scott Lahteine 9d59a9c840 Followup to #12691 (typo) 6 years ago
Roman Moravčík 4dad489a50 [2.0.x] Limit PID autotune target to maxtemp-15 (#12691) 6 years ago
Scott Lahteine c986239837
A single SERIAL_ECHO macro type (#12557) 6 years ago
Scott Lahteine 03ef2d6c82
Fix "paused" message and M125 called by M25 (#12551) 6 years ago
Scott Lahteine 09d6db491a Fix wait_for_bed compile error 6 years ago
Sinisa Culic 8a0992d921 Fast PWM for controller fan (#12485) 6 years ago
Ludy 1f93d2bcf7 Fix LCD compile error, etc. (#12472) 6 years ago
Marcio Teixeira c1e17037e5 Various fixes for MarlinUI and ExtUI (#12439) 6 years ago
Giuliano Zaro d3605cfc26 Don't start watching heaters when target is 0 (#12453) 6 years ago
Mateusz Krawczuk ca21ac6b9b Support two MAX6675 thermocouples (#8686) 6 years ago
Scott Lahteine d2bb53702a
Optimize target_extruder, ignore T with mixing (#12432)
* Optimize target_extruder, ignore T with mixing
* Give G-code Tn parity with tool_change
6 years ago
Scott Lahteine 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
6 years ago
Scott Lahteine 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.
6 years ago
Scott Lahteine 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
6 years ago
Ludy 5ba6607181 Fix keypad-related compile error (#12306) 6 years ago
Giuliano Zaro 323c088356 Restore LED light color after pid tuning (#12082) 6 years ago
Marcio Teixeira 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
6 years ago
Giuliano Zaro d43d4e4219 Refactor PRINTER_EVENT_LEDS, apply to M303 (#12038)
Co-Authored-By: Giuliano Zaro <gmagician@users.noreply.github.com>
6 years ago
Scott Lahteine 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
6 years ago
InsanityAutomation 74cd6cb4fc Single nozzle filament change (#11994) 6 years ago
Scott Lahteine d6b0fbd771
Use uint8_t for all fan speeds (#12032) 6 years ago
Scott Lahteine 11ac75edcb
Use PGM_P for PSTR pointers (#11977) 6 years ago
Scott Lahteine d89d8fe852 Fix Busy State in temperature.cpp
Fix #11954
6 years ago
Scott Lahteine e4389f7d23
Standard methods to wait for heating (#11949) 6 years ago
Scott Lahteine 1718eff54a Code changes supporting up to 6 extruders 6 years ago
Scott Lahteine b220a825a7 Fix raw_filwidth_value error 6 years ago
AnHardt 530a13ab6c [2.0.x] SECURITYFIX missing max temp error when PID is used (#11717) 6 years ago
Dave Johnson c64199941e Compile only selected PIO environment (#11519) 6 years ago
Andy Shaw 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
7 years ago
Scott Lahteine 22ebbc091f Tweak some SoftPWM code 7 years ago
etagle 1367df2875 Replace double with float, optimize calculation 7 years ago
Scott Lahteine 3fd1f32b73 Fix ADC key and chamber temp 7 years ago
Scott Lahteine 3701869e6c Add HAL_timer_start for AVR, use stepper timer to time pulses 7 years ago
Scott Lahteine 853a9056ac Long thermistor tables need special consideration 7 years ago
Scott Lahteine 1ce97f1f6d
Faster (bisect) search in thermistor tables (#10883) 7 years ago
Bob Kuhn d557c84a71 [2.0.x] Error for FAST_PWM_FAN with 32 bit CPU (#10798) 7 years ago
etagle 569df3fc0c Fix interrupt-based endstop detection
- Also implemented real endstop reading on interrupt.
7 years ago
etagle a11eb50a3e Refactor and optimize Stepper/Planner
Better encapsulation and considerably reduce stepper jitter
7 years ago
etagle 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/)
7 years ago
Giuliano e1d9046efc [2.0.x] Temperature reading fix (#10774) 7 years ago
Scott Lahteine 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>
7 years ago
Scott Lahteine 083ec9963e Tweaks to heater / lcd conditions 7 years ago
Scott Lahteine 8f8c6a9bc4
Move get_axis_position_mm to Planner (#10718) 7 years ago
Scott Lahteine a1062eec5b
Better handling of DELAY_NS and DELAY_US (#10716)
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
7 years ago
Scott Lahteine f5aaa2d6c0 Fix some compiler warnings 7 years ago
Scott Lahteine 625035a9ce
Fix M301 access to lpq_len (#10714)
Co-Authored-By: Zwaubel
7 years ago
Scott Lahteine 325bbbc8c2
[2.0.x] Enable AD595 and AD8495 in concert (#10693)
* Allow both AD595 and AD8495 in concert
* General temperature code tweaks
7 years ago
Scott Lahteine 81b632c255 Additional temp-oriented improvements 7 years ago
nightdemonx e911635fb1 Add thermocouple with AD8495 support 7 years ago
Scott Lahteine 5ac226aa93 Further cleanup of inline delays 7 years ago
Chris Pepper 2242b98248 [LPC176x] Emergency Parser Feature (#10516) 7 years ago
Scott Lahteine 9789c1c719 Fix current_temperature_chamber compile error
Fix #10505
7 years ago
Eduardo José Tagle 0c428a66d9 Proper AVR preemptive interrupt handling (#10496)
Also simplify logic on all ARM-based interrupts. Now, it is REQUIRED to properly configure interrupt priority. USART should have highest priority, followed by Stepper, and then all others.
7 years ago
Scott Lahteine cb46cb8480
Add HAS_HEATED_BED conditional (#10495) 7 years ago
Lenbok 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.
7 years ago
Scott Lahteine 1c36606886 Fix MSG_HEATING_FAILED_LCD_BED macro evaluation 7 years ago
Marcio Teixeira 8bc93c6f2b Improve heating/cooling LCD messages (#10293) 7 years ago
Karl Andersson 7cbbc2af7a [2.0.x] Optional heater signal inversion (#10260) 7 years ago
Eduardo José Tagle 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.
7 years ago
AnHardt 837ac2fdbd [2.0.x] Fix_Autotune_THERMAL_PROTECTION_BED_off (#10166)
- Fix Autotune Thermal Protection
- Make 2 constants in autotune configurable
7 years ago
Scott Lahteine c6ff39cc14 Spacing cleanup 7 years ago
Scott Lahteine ffbf63e6af Add HAS_TEMP_SENSOR conditional 7 years ago
Scott Lahteine 649f375494
Fix: M112 calling kill from interrupt (#9923)
Fix #9906
7 years ago
Scott Lahteine 83d7e95de0
Add MSG_THERMAL_RUNAWAY_BED (#9691) 7 years ago
Scott Lahteine e698998343 More reliable PROBING_HEATERS_OFF with BED_LIMIT_SWITCHING 7 years ago
Scott Lahteine b5e92f4f90
[2.0.x] Enable / disable PSU automatically (#9503) 7 years ago
Scott Lahteine 2bea1bda56 Move more strings to PROGMEM 7 years ago
Scott Lahteine 750cc02b3a
Use delay() in serial temp report 7 years ago
Scott Lahteine a408209d24 More reliable temperature serial report? 7 years ago
Thomas Moore f7efac57b7 Multi-host support 7 years ago
revilor 0e93506985 Fix for issue #9005, #8942 - Bed PID autotuning (#9036) 7 years ago
Scott Lahteine 4af3d436b2 M303 pid autotune cleanup, commentary 7 years ago
Scott Lahteine 5e01ee8adf Temperature updates for parity with 1.1.x 7 years ago
Scott Lahteine fdc5e72720 A single setting to validate filament width 7 years ago
Scott Lahteine de5ca96654 More parity with 1.1.x, plus whitespace 7 years ago
Dave Johnson 0d531d9655 Missing HAS_HEAT_BED conditional
Fixes issue found in #8779
7 years ago
Scott Lahteine cf2193c07f Comment, fix filament width sensor 7 years ago
Scott Lahteine 4fa65a5c25 TCNT0 => HAL_timer_get_current_count
Fix #8710
7 years ago
Richard Wackerbarth c1184552ac Change K1 to required option PID_K1 7 years ago
Scott Lahteine 45c2388a58 Apply const to thermal_runaway_protection args 7 years ago
Scott Lahteine 27c5692b13 Syntax tweaks 7 years ago
Roxy-3D d29cb646e3
Fix erroneous reference to temperature in time calculations
Travis is having problems at:  https://github.com/MarlinFirmware/Marlin/pull/8560   

So...   doing a direct commit to get things correct.   Bugfix_v1.1.x does not have this bug.  Nothing needs to be done to that branch.
7 years ago
Vitaliy Sapyanov e2724c68ab Update pins_RURAMPS4D.h
Add and bugfix pins
7 years ago
Bob-the-Kuhn 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.
7 years ago
Bob-the-Kuhn 7eea000f4b E0 auto fan fixes 7 years ago
Scott Lahteine b2dda096fe Fix FILAMENT_LCD_DISPLAY for disabled state 7 years ago
RowanMeara 6131533157 Change dithering behavior to intended. 7 years ago
Scott Lahteine 91baca6abb Patches for compiler warnings/errors 7 years ago
Scott Lahteine 36426af564
Merge pull request #8356 from tcm0116/2.0.x-M600
[2.0.x] Normalize load/unload length in M600
7 years ago
Scott Lahteine 1ed86adf9c Cleanup around updatePID 7 years ago
Scott Lahteine cba9c1cf9e Add pre-calculated planner.e_factor 7 years ago
Scott Lahteine 8fea26aa9d Fix PID_autotune watch temp increase value 7 years ago
Scott Lahteine 2f9e42feb9 M303 thermal runaway protection 7 years ago
Scott Lahteine eae0aea1e0 Fix M303 thermal protection 7 years ago
Scott Lahteine ca66574062 ADC sensor fix inspired by 'Evgen2' on Twitter 7 years ago
Thomas Moore 0cb00f52d9 Cleanup warnings 7 years ago
Phr3d13 10c1b442ca Fixes for Anet10 and gt2560
Fixes for 2 "... not declared in this scope" compiler errors.
7 years ago
Scott Lahteine 37eb6d1732 Babystepping code tweak 7 years ago