Commit Graph

107 Commits

Author SHA1 Message Date
Yuri D'Elia
1435e4a68d Use the computed direction in fsensor_st_block_begin 2019-08-04 16:53:48 +02:00
Yuri D'Elia
b6bcb901f3 Correct initialization of eISR_Err
Further tweak the initial term to improve the linearity of the resulting
speed after BW filtering.
2019-06-27 13:21:39 +02:00
Yuri D'Elia
2e073527fb Also avoid E direction inversions while coasting 2019-06-19 14:28:04 +02:00
Yuri D'Elia
4b3af0d2df Respect minimum direction change delay 2019-06-19 13:22:44 +02:00
Yuri D'Elia
0239f4bce1 Update/compute advance steps inside calculate_trapezoid_for_block
Do not store the block e_D ratio, store directly the computed
compression factor so that we can recompute the advance steps
quickly and update them in sync with the acceleration rates.
2019-06-05 20:25:26 +02:00
Yuri D'Elia
048628083a Remove clear_current_adv_vars()
The pressure state is already reset implicitly at the end of each block,
meaning an extruder switch will never have to reset the internal state
anyway.

We clear the internal backpressure in the following conditions:

- when switching to a non-LA block
- when quickStop is called
- when the scheduler is idling (losing pressure)
2019-06-05 20:25:19 +02:00
Yuri D'Elia
7d33089d9a Remove use_advance_lead
The per-step state is kept implicitly using nextAdvanceISR,
while the current pressure is decoupled anyway.
2019-06-05 20:25:12 +02:00
Yuri D'Elia
cda9ed4a1d Reset LA state more carefully during stop conditions 2019-06-04 16:22:40 +02:00
Yuri D'Elia
1bed8cfa94 Don't call fsensor_st_next_block repeatedly during the last step
Rely on st_block_begin to perform a single call instead of calling
block_chunk for each advance tick in the last step
2019-06-04 16:22:33 +02:00
Yuri D'Elia
c50b1c0351 Rework the filament counter logic
- Move direction checks out of fsensor: fsensor_counter is now
  always in the same direction as e_steps
- Check the filament chunk after e_steps have been physically done,
  using the real e_step count so far
2019-06-01 22:08:00 +02:00
Yuri D'Elia
47d2562510 Typos 2019-05-26 21:06:29 +02:00
Yuri D'Elia
823f7b069c Fix filament sensor direction again 2019-05-26 21:06:22 +02:00
Yuri D'Elia
9d834925c0 Recalculate LA_phase correctly 2019-05-26 17:06:21 +02:00
Yuri D'Elia
3abb2188df Fixup initial error by defect 2019-05-26 16:59:45 +02:00
Yuri D'Elia
20694aeabc Save 316 bytes by avoiding advance_spread copies 2019-05-26 16:41:56 +02:00
Yuri D'Elia
a28fb65bb2 Optimize advance_spread further 2019-05-26 16:41:50 +02:00
Yuri D'Elia
6f6cef65b5 Revert "Correctly handle direction for the filament sensor"
This reverts commit aae03ad83e.
2019-05-26 16:41:37 +02:00
Yuri D'Elia
bddc3e84ab Use WRITE_NC directly in the isr 2019-05-25 21:52:06 +02:00
Yuri D'Elia
aae03ad83e Correctly handle direction for the filament sensor 2019-05-25 21:51:59 +02:00
Yuri D'Elia
935a798236 Speedup advance_spread for common divisors 2019-05-25 21:51:52 +02:00
Yuri D'Elia
fa7ecfc38e Check for serial roughtly in the middle of the stepper isr 2019-05-25 18:41:28 +02:00
Yuri D'Elia
282b502393 Improve the distribution of the advance steps 2019-05-24 17:08:32 +02:00
Yuri D'Elia
aae5cce28f Use the nominal frequency to merge ticks 2019-05-24 17:08:32 +02:00
Yuri D'Elia
c6dbcc494f Typo 2019-05-24 17:08:32 +02:00
Yuri D'Elia
a1be8b6784 Initialize current_adv_steps correctly
Initialize at 0 both on startup and on reset on regular (non-LA)
segments to avoid cumulating errors.
2019-05-24 17:08:32 +02:00
Yuri D'Elia
707849e6c4 Use a define instead of hard-coding a divider 2019-05-24 17:08:32 +02:00
Yuri D'Elia
a2fa8e5313 Rewrite the advance_isr scheduler 2019-05-24 17:08:32 +02:00
Yuri D'Elia
2d3fe3197c Move calc_timer into speed_lookup_table for planner reuse 2019-05-24 17:08:32 +02:00
Yuri D'Elia
520cb491b2 Move speed lookup defs into a separate source 2019-05-24 17:08:32 +02:00
Yuri D'Elia
ebdc5e35e7 Remove two more OCR1A direct manipulations
Use _NEXT_ISR and st_reset_timer to correctly reinitialize and
re-schedule the advance ticks.
2019-05-24 17:08:32 +02:00
Yuri D'Elia
cbf1a85ec3 Switch original LA implementation with LA1.5
This discards several Prusa optimizations for LA1.0.
We'll re-implement those later if needed.

Debugging is turned on.
2019-05-24 17:08:32 +02:00
Yuri D'Elia
bf0c60dd45 Factor-out some repetition into fsensor_step 2019-05-24 17:08:32 +02:00
Ondrej Tuma
b7fe43bf68 Deleted bad cols/rows definitions for translation. 2019-05-07 12:52:23 +02:00
Marek Bel
28f1e309a2 Fix compiler warning: 'old_x_max_endstop' defined but not used
Fix compiler warning: 'old_y_max_endstop' defined but not used
2019-03-05 17:44:47 +01:00
Robert Pelnar
eea755496b Conditional translation for SYSTEM_TIMER_2 because we want to have posibility to switch between old/new implementation.
Timing functions (millis, micros and delay) replaced in whole source, defined in Marlin.h.
This commit enables original implementation (SYSTEM_TIMER_2 undefined)
Verified with passed complete wizard process.
2019-01-27 22:48:51 +01:00
Robert Pelnar
434a723151 Timing functions 'micros' and 'delay' replaced in whole source with 'micros2' and 'delay2' 2019-01-27 17:37:27 +01:00
Robert Pelnar
9f86a334c6 Lang - text "endstops hit: " removed from dictionary 2018-11-22 17:53:51 +01:00
Robert Pelnar
a0e4acead3 lang - removed unused code and some service messages changed to "not translated" 2018-11-01 14:07:16 +01:00
PavelSindler
940f436a5f merge MK3_dev into MK3 2018-10-22 20:25:29 +02:00
Marek Bel
1585dc66b0 Merge remote-tracking branch 'prusa3d/MK3_dev' into simplify_EEPROM_M500
Known limitation: Unable to compile.
2018-10-08 15:58:49 +02:00
Robert Pelnar
c2f535b619 Filament sensor - fix invalid calculation of fsensor_counter in LA stepper.
+decreased additional check sensitivity/sctrictness
2018-09-26 18:59:07 +02:00
Marek Bel
3f28632443 Use cs.axis_steps_per_unit from ConfigurationStore. 2018-09-24 14:54:41 +02:00
PavelSindler
03fffae4c3 finda runout sensor can be turned on/off from menu 2018-08-27 05:20:42 +02:00
Robert Pelnar
c4281b0b36 Status screen redesign - fix of flickering and text wraping on status screen
printf formating, saved flash, reduced code size
2018-08-20 00:27:45 +02:00
Robert Pelnar
71f1a1f6db MMU - communication, check after start, code cleaning 2018-08-07 20:37:59 +02:00
Robert Pelnar
60b4db15e0 FSensor - M600 fix + cond. translation + tunning filter and params 2018-07-22 16:14:13 +02:00
Robert Pelnar
268d2634f0 LCD menu optimalization - lcd and menu
removed unused code and conditional translation
2018-07-16 02:13:52 +02:00
Robert Pelnar
066c044396 fixed tmc2130_wr_CHOPCONF
backlash - initial implementation (disabled by default)
removed menu "W25x20CL init"
splashscreen displayed before entering optiboot
2018-07-11 20:02:46 +02:00
Robert Pelnar
fcfb4cdcae New ML support - menu tunning, startup
+config headers (bool - true/false replaced with 0/1)
+fixed include hierarchy
+removed comments
2018-06-10 16:04:32 +02:00
Robert Pelnar
2cf20c8c99 New ML support - migration - fix_source_1.sh script (replace 'MSG_xx' with '_T(MSG_xx)')
+ output + fixed source
2018-05-23 16:37:08 +02:00