325 Commits (4067d15c92b6acbe0da3f87fce1b33ccf2d56ce8)

Author SHA1 Message Date
esenapaj f8df88f271 Move routine of direction signal of ADVANCE and LIN_ADVANCE from Stepper::isr() to Stepper::advance_isr() 8 years ago
Scott Lahteine ecf7cdde65 Augment planner/stepper getters/setters 8 years ago
Scott Lahteine 5fff8d148b Clean up digital pots and microsteps 8 years ago
Scott Lahteine cb48292338 Use fastio for literal pins 8 years ago
Scott Lahteine eabff30e75 Improve MINIMUM_STEPPER_PULSE 8 years ago
Scott Lahteine cc639d7d9c Less indentation in Stepper::isr 8 years ago
Scott Lahteine 7dec8071b2 Always synchronize in Stepper::set_position 8 years ago
esenapaj 954563d603 Adjust spacing 8 years ago
esenapaj 7e9576dc5b Extend the e_steps[] from int to long for allowing more than 32,767 E steps
Probably needed for long straight lines when using high microstepping
8 years ago
esenapaj b04ed8f9c3 Fix inverted stepper signal of ADVANCED and LIN_ADVANCED 8 years ago
esenapaj 8692748ecd Fix broken direction signal of ADVANCED and LIN_ADVANCED
Remove a setting proccess of E direction in advance_isr()
8 years ago
Scott Lahteine edfaf1c582 Stepper::report_positions patch 8 years ago
Scott Lahteine 6f71bd7372 Merge pull request #4754 from thinkyhead/rc_mixing_regression
Unify counter_m and counter_M
8 years ago
Scott Lahteine 9bf78ef465 Fix capitalization of counter_m 8 years ago
Scott Lahteine 42b5616327 Try bool for direction instead of long 8 years ago
Scott Lahteine d07a913f21 Tweak to stepper advance e_steps update 8 years ago
Scott Lahteine 426f662586 Apply MINIMUM_STEPPER_PULSE in stepper advance_isr 8 years ago
Scott Lahteine 8c7ee4599e Optimize stepper advance_isr 8 years ago
Scott Lahteine 9725bcd099 Minor "optimizations" in stepper ISR 8 years ago
Scott Lahteine 4ec3d1ea58 Add some commentary to stepper ISR 8 years ago
Scott Lahteine d9bcc7bb45 Set a bool when a stepper block is done 8 years ago
Scott Lahteine 08f717e5f7 Use bit-size typedefs for some stepper vars 8 years ago
Scott Lahteine 759234af60 MINIMUM_STEPPER_PULSE option 8 years ago
Scott Lahteine a28e15399f Patch stepper.cpp to allow omitting steppers 8 years ago
Scott Lahteine 2f223b8c79 Use ABC and XYZ for "3" 8 years ago
Scott Lahteine d8f2876753 Replace some float division with multiplication 9 years ago
Scott Lahteine f8b5749235 Replace division in planner with multiplication 9 years ago
Scott Lahteine 176b9627c7 Some cleanup ahead of BLTOUCH support 9 years ago
Scott Lahteine 05da02f0a2 Implement MIXING_EXTRUDER and SWITCHING_EXTRUDER 9 years ago
Scott Lahteine 4b4a582c4f X_DUAL_STEPPER_DRIVERS implementation 9 years ago
Scott Lahteine bd491818d6 Reduce storage requirements for strings, make some PGM 9 years ago
Scott Lahteine 61f34eec03 Merge pull request #4125 from jbrazio/bugfix/planner-warning
Fixes some compiler warnings
9 years ago
João Brázio 664232140d
Fixes somes compiler warnings 9 years ago
Sebastianv650 0c5192b288 Patch LIN_ADVANCE timing issue
Also the extruder stepper ISR has to keep an eye on step_loops count.
9 years ago
Scott Lahteine 8d8180e028 Parse M905 args in Marlin_main.cpp 9 years ago
Scott Lahteine 2b340f5acb patch LIN_ADVANCE to use code_value_float 9 years ago
Scott Lahteine aad9c0ed8d Apply updated ISR timing code 9 years ago
Scott Lahteine 506d78b2f8 Run the advance_isr faster instead of doing multiple e-steps per interrupt 9 years ago
Scott Lahteine 6d62a4ffc8 Patch LIN_ADVANCE for style and forward-compatibility 9 years ago
Sebastianv650 fb8e880734 Add LIN_ADVANCE 9 years ago
Scott Lahteine 72c6f2923f axis_steps_per_unit => axis_steps_per_mm 9 years ago
Scott Lahteine e2a8961635 Use e_steps[EXTRUDERS] instead of e_steps[4] 9 years ago
Scott Lahteine 668d50f68e Keep Stepper encapsulation, use static data and methods 9 years ago
Scott Lahteine 5172d4ba40 COREYZ stepper, planner, endstop, babysteps 9 years ago
Scott Lahteine 07c9a11c3c Automatically set X2 stepper pins 9 years ago
Scott Lahteine 15fc93d742 Cleanup and consolidate probe conditionals for clarity 9 years ago
Scott Lahteine 6398d497b3 Ultimate followup to Stepper/Planner patch
- Search all symbols and apply prefixes where needed
- Encapsulate some private methods
- Inline some setters
- Make `microstep_mode` a public method
9 years ago
Scott Lahteine 96f51f400f Planner singleton class 9 years ago
Scott Lahteine 5e4e535ce8 Stepper and Endstops as singleton objects 9 years ago
João Brázio bcf1e027bb
Fix the redeclaration of _ENDSTOP_HIT 9 years ago
Scott Lahteine 7c16e774ca Show all endstops on LCD in checkHitEndstops 9 years ago
Scott Lahteine 3e5312f116 CORE support for st_set_position & plan_set_position 9 years ago
Scott Lahteine e087a99a10 Some cleanup of st_get_pos functions 9 years ago
Scott Lahteine dc19b69697 No casting needed for SERIAL_ECHOPAIR 9 years ago
esenapaj 7950b5268a Use SBI macro 9 years ago
Scott Lahteine 5d8036e554 Code cleanup around MOTOR_CURRENT_PWM options 9 years ago
Scott Lahteine 0da744b7b0 Further cleanup of comments, partial Doxygen-style
Following up on #3231
9 years ago
jbrazio 5e5d250832 Added gplv3 header to all Marlin files 9 years ago
Scott Lahteine af32a7d5d6 M120/M121 also set endstops non-homing state 9 years ago
Scott Lahteine c5857f96c8 Merge pull request #3182 from thinkyhead/rcbugfix_printrboard_revf
Add support for Printrboard RevF
9 years ago
Scott Lahteine 59483221d5 Move stepper DAC to a separate file 9 years ago
Scott Lahteine 5d0570cea0 Make digitalPotWrite depend on HAS_DIGIPOTSS 9 years ago
Stephanie 6843b78f99 Add support for Printrboard RevF
The PrintrBoard Rev F utilizes a mcp4728 DAC to set motor current. Printrbot's implementation utilizes 2 new M-codes to set and write the DAC settings to the DAC EEPROM: `M909` (Read DAC) and `M910` (Write DAC). `M907` is re-used to set value, `M908` for direct control.

The Pins file for the RevF board is included.
9 years ago
AnHardt 3f45a1acf9 Check probes only when deployed
Aim: Test probes in update_endstops only when activated

Changes:
Configurations
 Add define for FIX_MOUNTED_PROBE to handle the situation where formerly ENDSTOPS_ONLY_FOR_HOMING had to be set, or lowering the nozzle below Z_PROBE_OFFSET_FROM_EXTRUDER could give an "endstop hit" message.
 Add define for Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN to indicate a common situation, that we have a probe but it is connected to an endstop pin
 Add some comments
 Shift some entries to have related things together.

Conditionals.h
 We have a probe (HAS_Z_MIN_PROBE) if one of the pins is defined AND one of the probes is defined.

SanityCheck.h
 Add some tests if the probe is connected and if we have defined a probe.

stepper.cpp
 Changes to test the probe only when it is deployed (z_probe_is_active).
 Test update_endstops() when the probe is deployed.

MarlinMain.cpp
 a. set and reset z_probe_is_active in deploy_z_probe(), stow_z_probe() and dock_sled()
 b. set and reset z_probe_is_active in the case a z-servo is moved to a defined position. The only remaining unhandled servo move is in M280 where we do not end in a defined position. If you want to handle a probe use M401/402
 c. skip deploying/stowing when already deployed/stowed in the dedicated deploy/stow functions.
 d. Handle the new FIX_MOUNTED_PROBE in parallel to a servo driven probe/endstop.

 To do: In another PR. handle all probes in deploy/stow_z_probe.
 Sort out SERVO_LEVELING vs. HAS_SERVO_ENDSTOPS.
9 years ago
Scott Lahteine 4634feaeab Merge pull request #3012 from thinkyhead/fix_command_injection
Use a serial line buffer to prevent queue corruption
9 years ago
Scott Lahteine e5fd43f343 Implement BABYSTEPPING for COREXY and COREXZ 9 years ago
Scott Lahteine 8fe7420310 Use a separate serial line buffer 9 years ago
Alexander Leisentritt 4338813814 save last extruder and set stepper directions too in case the extruder changed
fixes MarlinFirmware/Marlin#3144 and MarlinFirmware/Marlin#3083
9 years ago
Scott Lahteine 6e1bc03d3b Additional wrapping for #3140 9 years ago
Scott Lahteine 0c48eaf3de Expose motor current in more configs, disable by default 9 years ago
Elijah Snyder e8b10d2836 Adding PWM_MOTOR_CURRENT flag to help expose PWM_MOTOR_CURRENTS in Configuration_adv.h similar to DIGIPOT_MOTOR_CURRENT 9 years ago
Scott Lahteine 3fd31976c3 Reduce code in stepper.cpp with macros 9 years ago
Scott Lahteine ff13070b59 Use _BV macros, patch up others 9 years ago
Scott Lahteine 373e8a1ad4 Fixes for COREXY and COREXZ coordinates 9 years ago
Naruto-kyun 2932602643 Update stepper.cpp
Forgot Z2_MIN_PIN
9 years ago
Richard Wackerbarth 7a670e3911 Improve planner & stepper PR #263 9 years ago
Scott Lahteine 644c376e84 Use binary OR with endstop bits 9 years ago
Scott Lahteine 9bdab4f3a8 Clean up "else" and other spacing 9 years ago
Scott Lahteine 0c7f7ebcfb Styling adjustments (PR#2668 & PR#2670)
Keep "astyled" reformatting
9 years ago
Scott Lahteine 9f462f0cf5 Hack to address stuttering caused by ISR not finishing in time
(PR #138)

When the ISR does not finish in time, the timer will
wrap in the computation of the next interrupt time.

This hack replaces the correct (past) time with a time not far in the future.
9 years ago
Christian Lefrançois a7822e3ff7 Some renaming of Z_PROBE to Z_MIN_PROBE (PR#91)
* Fix a couple of renames omission and macro expansion errors.
9 years ago
Richard Wackerbarth 29b456ae07 Suppress some compiler warnings 9 years ago
AnHardt e2d69f66b2 Make Z_PROBE a Z_MIN_PROBE (PR#65)
Currently we use the probe exclusively as a device to find the build platform(bed).
For the currently supported setups this means, we use it as a additional min-endstop.
A triggered when not deployed probe disturbs the homing process for max-endstops.

Rename ENDSTOPPULLUP_ZPROBE to ENDSTOPPULLUP_ZMIN_PROBE
Rename Z_PROBE_ENDSTOP_INVERTING to Z_MIN_PROBE_ENDSTOP_INVERTING
Rename Z_PROBE_ENDSTOP to Z_MIN_PROBE_ENDSTOP
Rename DISABLE_Z_PROBE_ENDSTOP to DISABLE_Z_MIN_PROBE_ENDSTOP
Rename Z_PROBE_REPEATABILITY_TEST to Z_MIN_PROBE_REPEATABILITY_TEST
Rename Z_PROBE_ENDSTOP to Z_MIN_PROBE_ENDSTOP
Adjust comments accordingly
Remove Z_MAX  check for the probe in update_endstops().

Using an delta related idea of @clefranc from #61,
extended to the general change for all setups.

Tested with Prusa i3, max-z-endstop and permanently triggered z-probe.
Worked for @clefranc's delta.
10 years ago
AnHardt 6a6e863a47 Resolve #2581 by adding a missed ';' (PR#67) 10 years ago
Scott Lahteine 46453905d6 Apply remaining ENABLED/DISABLED conditionals 10 years ago
Richard Wackerbarth 4b9d5cd352 Use lowercase names for serial instances 10 years ago
Scott Lahteine c35fb88094 Overridable Options - Part 8 (PR#2560)
Apply `ENABLED` / `DISABLED` macros to stepper-related files.
10 years ago
AnHardt 27d7d2ccab Correct bracketing for COREXY-XZ 10 years ago
Scott Lahteine 278aa15301 Add COUNT macro and apply 10 years ago
Scott Lahteine 000a6fce46 Extract update_endstops from stepper ISR (PR#2474) 10 years ago
Scott Lahteine 9f53e2f0c9 Implement COREXZ in stepper.cpp and planner.cpp 10 years ago
Richard Wackerbarth e83575537a Compiler defines USBCON for USB devices (PR#2433) 10 years ago
Scott Lahteine 87a872e103 Use st_get_position_mm where possible (PR#2411) 10 years ago
Scott Lahteine d135b15bb8 Init all endstop bits to 0 (PR#2332) 10 years ago
AnHardt 0d9d21d15f Add a semicolon to make Z_DUAL_STEPPER_DRIVERS compile again. 10 years ago
Wurstnase 9c09967803 Merge pull request #2149 from Wurstnase/enstop_bits
faster compare
10 years ago
wurstnase 0f3f7d6835 clean up double endstops 10 years ago
Scott Lahteine d76a01194d Slight size reduction by adding idle() 10 years ago
wurstnase 94120740d8 faster compare
!(~(ab)&0x3) and ab == 0x3 are equal
10 years ago
Scott Lahteine f919a2fed1 Merge pull request #2134 from AnHardt/preheat-all
Shift call of start_watching_heater() into setTargetHotend()
10 years ago