Commit Graph

4759 Commits (9cb596e88c4512da309c580400c4960ff39b0556)

Author SHA1 Message Date
João Brázio 226e74a438 Fixes safe_delay() to be fully compatible with delay()
João Brázio 8e79e8cdb3 Adds types.h
Scott Lahteine 844a4e799e Account for DELTA in Planner::refresh_positioning
AnHardt 7188ce0ad6 double bump probing as a feature
Why double touch probing is not a good thing.

It's widely believed we can get better __probing__ results when using a double touch when probing.

Let's compare to double touch __homing__.
Or better let's begin with single touch __homing__.
We home to find out out position, so our position is unknown.
To find the endstop we have to move into the direction of the endstop.
The maximum way we have to move is a bit longer than the axis length.
When we arrive at the endstop - when it triggers, the stepper pulses are stopped immediately.
It's a sudden stop. No smooth deacceleration is possible.
Depending on the speed and the moving mass we lose steps here.
Only if we approached slow enough (below jerk speed?) we will not lose steps.

Moving a complete axis length, that slow, takes for ever.
To speed up homing, we now make the first approach faster, get a guess about our position,
back up a bit and make a second slower approach to get a exact result without losing steps.

What we do in double touch probing is the same. But the difference here is:
a. we already know where we are
b. if the first approach is to fast we will lose steps here to.
But this time there is no second approach to set the position to 0. We are measuring only.
The lost steps are permanent until we home the next time.

So if you experienced permanently rising values in M48 you now know why. (Too fast, suddenly stopped, first approach)

What can we do to improve probing?
We can use the information about our current position.
We can make a really fast, but deaccelerated, move to a place we know it is a bit before the trigger point.
And then move the rest of the way really slow.
Scott Lahteine c31f56a38c Deprecate EXTRUDER_WATTS and BED_WATTS
Scott Lahteine e1970b4b28 Show power output in same order as temp output
Scott Lahteine 74df828acc Show ADC values inline rather than after
João Brázio 2b5faa61e2 Consolidates Buzzer and Speaker into a single object
João Brázio 8093c5f534 Non-blocking speaker now uses arduino's tone()
João Brázio 8896f08074 Fixes a compilation error introduced by
Scott Lahteine ea5ac94804 Improved MANUAL_[XYZ]_HOME_POS
No need for `MANUAL_HOME_POSITIONS`. Just set each one as-needed to
override the automatic behavior.
Scott Lahteine b40661cb18 Fix output of heater states
Scott Lahteine 9083e5420a Merge pull request from AnHardt/sd2pinmap
Switch Sd2CardLib to fastio
Scott Lahteine 6f59560526 Merge pull request from jbrazio/speaker-followup
A little cleanup at speaker.h
Scott Lahteine c94b6dd3e7 Revert to SanityCheck on every .cpp file
Scott Lahteine 256b03598d Merge pull request from thinkyhead/rc_fix_delta_optimization
Fix DELTA speed calculation
Scott Lahteine 753283e020 inverse_second => inverse_mm_s
Scott Lahteine 83e1d90ca3 Undo errant optimization of block->millimeters
João Brázio 909e98b1af A little cleanup at speaker.h
Scott Lahteine ae1c7bca1b Merge pull request from thinkyhead/rc_fix_rdfgsc_mega3
Fix for R.D.F.G.S.C. with MEGATRONICS 3 board
Scott Lahteine 03fdb26cd2 Wrangle encoder bits, LCD_CLICKED
Scott Lahteine 155def24c6 BLEN_A, B, C are defined in ultralcd headers
Scott Lahteine 42dcc3bf50 Remove "the click" comments
Scott Lahteine 0eba65f96b Fix for R.D.F.G.S.C. with MINITRONICS board
fabtopia 83d0d59303 Fix for R.D.F.G.S.C. with MEGATRONICS 3 board
The support for reprapworld LCD boke the code for the REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER. See Full Grapics Display does not work any more after   
João Brázio 4f191a384b
Moves the font folder into the buildroot
Scott Lahteine 5367d56f87 Merge pull request from thinkyhead/rc_delta_safe_homing
DELTA should ignore Z_SAFE_HOMING
Scott Lahteine 2525528fb2 DELTA should ignore Z_SAFE_HOMING
Scott Lahteine ab4b2a66ff Allow zero Z_RAISE_BETWEEN_PROBINGS
Scott Lahteine 8953e3e984 Allow Z_SAFE_HOMING without a probe
AnHardt e4942d2163 Switch SD2cadrLib to fastio
Replace all fastDigitalRead/Write() with READ/WRITE()

Define SCK_PIN, MISO_PIN, MOSI_PIN in pins.h if not already defined in the pins_*.h files.

Remove these conditional pin definitions from the pin-files. They are now always defined.

Define separate sets of SPI-pins for AT90USB with and without Teensy support in fastio.h.
Likely this was the main reason for all that confusion about the AT90USB-SPI pins.
Scott Lahteine 21e744c454 Allow zero raise for deploy/stow
Scott Lahteine 54084612fd Merge pull request from petrzjunior/transl
[LANGUAGE] Update Czech (Info screen strings)
Scott Lahteine 5597400cda Merge pull request from thinkyhead/rc_split_conditionals
Split up Conditionals.h into two files
Scott Lahteine 4be635ec6e Remove MSG_PRINT_TIME from languages
Scott Lahteine 3be49881c0 Make SanityCheck.h a catch-all for obsolete configs
Scott Lahteine fa647cca23 Do the sanity check just once per build
Scott Lahteine 24a1a16e5d Move versioning to MarlinConfig.h
Scott Lahteine 7e70a0b05d Move pins / Arduino includes to MarlinConfig.h
Scott Lahteine d9f7ed9a3c Move some macros from Marlin.h to macros.h
Scott Lahteine 277899c175 Move include _Bootscreen.h where needed
Scott Lahteine 83c4653c71 Include boards and macros ahead of configs
Scott Lahteine 5f4702ecb2 Make Conditionals.h a catch-all for old configs
Scott Lahteine 8a44928df3 Make Conditionals.h a catch-all for old configs
Petr Zahradník junior 3d9b878cf0 Czech update
Scott Lahteine c6226bb0aa Unify config in a single include without nested includes
Scott Lahteine 2d378fac1b No need to include thermistortables.h in Configuration.h
Scott Lahteine df27d01cd9 Arrange needed includes in Marlin.h
Scott Lahteine 93ea281061 Split up Conditionals.h into two files
Rather than include twice, which is tricky but may confuse
Scott Lahteine 8684570f68 Merge pull request from thinkyhead/rc_followup_4402
Followup  fixing 3-point leveling
Scott Lahteine c55b7d0750 Merge pull request from thinkyhead/rc_theres_always_something
Move HAS_DIGIPOTSS to Conditionals.h
Scott Lahteine 42eebcd518 Merge pull request from thinkyhead/rc_cleanup_comment
Clean up Transfer Buffer Size comment
Scott Lahteine 5272147f7c Followup fixing 3-point leveling
Scott Lahteine fcc39e2b5f Clean up Transfer Buffer Size comment
Scott Lahteine 0c0a63322b Patches to prepare REPRAPWORLD_GRAPHICAL_LCD
brupje a60a668f6b Support for REPRAPWORLD_GRAPHICAL_LCD
Scott Lahteine 4f2ff46ab9 Move HAS_DIGIPOTSS to conditionals
Scott Lahteine 54f4f80077 Merge pull request from thinkyhead/rc_better_stepper_indirection
Arrange stepper_indirection by axis
Scott Lahteine 169c21b477 Merge pull request from thinkyhead/rc_consistent_positioning
Account for coordinate space offsets
Scott Lahteine 750a1e5116 Arrange stepper_indirection by axis
Scott Lahteine 7c27f34996 Merge pull request from thinkyhead/rc_tweak_eeprom
Neaten up EEPROM read/write functions
Scott Lahteine 2595a40a61 Account for coordinate space more in G28 / G29 / M48
Scott Lahteine 060dc6d95a Neaten up EEPROM read/write functions
Scott Lahteine b7b7c90477 Merge pull request from thinkyhead/rc_optimize_planner
Optimize planner with precalculation, etc.
Scott Lahteine 6900bb2286 Merge pull request from tnw513/italian_fix
Update Italian translations. Remove trailing spaces.
Scott Lahteine e4816293a8 serial_echopair_P for uint16_t
Scott Lahteine d8e5af6834 Use RAW_POSITION for MBL in planner.set_position_mm
Scott Lahteine b183442c61 Fix inactive_extruder_x_pos for coordinate space
Scott Lahteine f75b0c2ee1 Make POSITION macros global
Scott Lahteine 101b60ef42 Tweak Dual X Carriage data spacing
Scott Lahteine 1fe60b723f Merge pull request from thinkyhead/rc_sanity_check_temp_sensor
Sanity check for too many temp sensors
Scott Lahteine bedda3be61 Patch generic delta error caught by sanity check
Scott Lahteine a5212bf277 Sanity check for too many temp sensors
Scott Lahteine d8f2876753 Replace some float division with multiplication
Scott Lahteine ddde785b37 Code formatting in planner.cpp
Scott Lahteine f8b5749235 Replace division in planner with multiplication
Scott Lahteine b921f6b69d Optimize calculation of block->millimeters for DELTA
Scott Lahteine db5df9500b Move sync_plan_position closer to the top
Scott Lahteine 2839c56f5a Merge pull request from jbrazio/duration_t
Renamed timestamp_t to duration_t
Scott Lahteine d6c50671d3 Sanitycheck: Z_SAFE_HOMING points are reachable
Scott Lahteine a6203366b6 Sanitycheck: Z_SAFE_HOMING requires a probe
Scott Lahteine bbe5b80492 Always define probe limits if there is a probe
Silvio Didonna 950397f2a0 Added missing translations. Removed trailing spaces for consistency ()
João Brázio 50fb0f7cec M31 serial output is now always in EN
João Brázio 62d96d72f3 Renamed timestamp_t to duration_t
Scott Lahteine 3e2b3353b0 Fix axis indices for COREYZ
Scott Lahteine c287846f46 Merge pull request from thinkyhead/rc_anhardt_more_4370
Update Z in a unified way in run_z_probe
Scott Lahteine 22d0654fe6 Merge pull request from esenapaj/Update-Japanese-translation
Update Japanese translation
Scott Lahteine bb93b6822a Use set_current_from_steppers_for_axis
AnHardt 96a162beda Use implications from in run_z_probe()
See also https://github.com/MarlinFirmware/Marlin/pull/4370#issuecomment-234713680
Scott Lahteine 4e67a85a5d Macros to loop over axes
esenapaj 784be56e99 Follow-up the PR (General cleanup: enum)
・Update description of M111
esenapaj 3c11977558 Update Japanese translation
・Add translation
・Change translation
・Remove translation
Scott Lahteine 08459a003f Undo the self-sabotage that is do_blocking_move_to_axis_pos
esenapaj d32c4056ad Fix for the PR (Additional logging of do_blocking_move_to)
・Remove unneeded PSTR()
Scott Lahteine 8099ee51a5 Merge pull request from thinkyhead/rc_blocking_move_logging
Additional logging of do_blocking_move_to
Scott Lahteine 8633b644cf Merge pull request from thinkyhead/rc_debug_leveling_docs
Document DEBUG_LEVELING_FEATURE
Scott Lahteine ad16d5019e Additional logging of do_blocking_move_to
Scott Lahteine bb9da6ebdd Document DEBUG_LEVELING_FEATURE
Scott Lahteine 652fd8a826 Merge pull request from thinkyhead/rc_duplication_mode
DUAL_NOZZLE_DUPLICATION_MODE