Commit Graph

8699 Commits (1af98519cdbb5bcb65321ff9378beb45b133d96a)

Author SHA1 Message Date
Scott Lahteine 1af98519cd Group and adjust LCD buttons code
Scott Lahteine 0c3773d724 Cleanup in stepper_indirection.h
Scott Lahteine 4118199ddd Tweaks to core headers
Scott Lahteine 4b2f6e3b2b
[2.0.x] Add endstop noise filter ()
Scott Lahteine 65a004564c Stepper::set_position needed for some applications
Scott Lahteine 435ecb6b67 Followup to stepper/planner refactor
Bob Kuhn 6dfbb39f83 [LPC1768] Add error-handling to upload script, update autobuild.py ()
Scott Lahteine 68d7fcec83 Simplify and fix Z fade height edit
Fix 
Bob Kuhn d557c84a71 [2.0.x] Error for FAST_PWM_FAN with 32 bit CPU ()
etagle 569df3fc0c Fix interrupt-based endstop detection
- Also implemented real endstop reading on interrupt.
etagle a4af975873 Fix planner block optimization
- Fixed the planner incorrectly avoiding optimization of the block following the active one.
- Added extra conditions to terminate planner early and avoid redundant computations.
etagle e0ca627033 Planner block HOLD flag
Allows the Stepper ISR to wait until a given block is free for use. Allows Planner to plan the first move, which is split into two.
etagle a11eb50a3e Refactor and optimize Stepper/Planner
Better encapsulation and considerably reduce stepper jitter
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/)
Scott Lahteine c2fb2f54a1 Use assembly for AVR ISR vectors
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
Scott Lahteine 206014a957 Fix LPC176x timer functions
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
Scott Lahteine 59f7861bcb
Move backtrace to the HAL folder ()
Scott Lahteine 228139eae6 Tweak some LCD comments
Scott Lahteine 7dc03ce721 Simplified fix for babystep pulse width
Alternative to the apparently superfluous double delay
Scott Lahteine 65270d6a96 Fix LIN_ADVANCE + SWITCHING_EXTRUDER
Followup to 
Bob Kuhn 62e2987488 add AT90USB support & add items to popup menu ()
Bob Kuhn 9ad42d6617 add delay between pulse edges ()
Scott Lahteine 83d42f33e1 Add HAS_HOTEND_OFFSET_Z conditional
GMagician 3c76bda2d8 Fix switching extruder
`DONT_SWITCH` got lost along the way. Replace it with `DO_SWITCH_EXTRUDER` and adjust the code.
Scott Lahteine c173a31060 Fix some compile warnings
Giuliano e1d9046efc [2.0.x] Temperature reading fix ()
Chris Pepper 9b64fdbc3a [LPC176x] HAL: Add missing program space definition ()
Scott Lahteine 50270b53a0 Clear up some more compile warnings
etagle 06fd4d7b28 Improve NOMORE, NOLESS, and LIMIT macros
etagle 40d7e12827 Removing warnings from compilation
Scott Lahteine 0755fe8ba2 Add FAN_MAX_PWM to example configs
Jiri Jaburek 43ddb29f9e Add FAN_MAX_PWM for M106-controlled fans
Scott Lahteine 0ea60d506a Clear up LCD-related compile issues
Scott Lahteine eb2eb72720
Modify UBL mesh_is_valid and use in leveling_is_valid ()
Scott Lahteine b7dfc79988
Disable SERIAL_PORT_2 by default and sanity-check it ()
Scott Lahteine 3f6073e23a Followup tweak to lcdprint_u8g.cpp
Scott Lahteine fb608938f8 Prevent compilation of unused u8g-oriented code
Scott Lahteine 35258dd50b Consistent heating status and status reset
Fix 
Scott Lahteine 37b15fe4cf Reorder HAL timer header items
Scott Lahteine 836b0bbeee Fix MBL line_to_destination
Fix 
Scott Lahteine ba4c32eec5 Followup to _AXIS patch
Scott Lahteine d9154ebdf6 Followup to math patch
Scott Lahteine f07260c33f Don't babystep on long click unless printing
As pointed out in 
Scott Lahteine 883b0c9880
Convert custom maths to inlines ()
Scott Lahteine 08e36e264e Apply _AXIS macro
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>
Scott Lahteine 083ec9963e Tweaks to heater / lcd conditions
etagle 9d98a62699 Followup to HAL optimizations and delays
- Cleanups, fixes for Due HAL code.
- TC_IER is write-only. Use TC_IMR to test ISR state.
Scott Lahteine 8f8c6a9bc4
Move get_axis_position_mm to Planner ()
Scott Lahteine a1062eec5b
Better handling of DELAY_NS and DELAY_US ()
Co-Authored-By: ejtagle <ejtagle@hotmail.com>