Positioning of string terminator to truncate checksum from the commands
M23, M28, M30, M32, M928 and M117 was off by one, causing the last
letter of the actual command to be truncated instead of just the
checksum.
In case of the SD commands this caused checksummed commands targeting
existing files to fail since the last letter of the filename was
truncated.
In case of M117 this caused the last given letter not to be displayed.
This patch fixes the off-by-one error and sets the null terminator
on the exact position of the * starting the checksum instead of the
character before that.
FW retraction is extended onto swap retraction invoked by 'G10 S1'.
Bookkeeping of the retract state of all extruders allows for having one
extruder fw standard retracted while another extruder is swap retracted.
An LCD menu item for the swap retract and recover length was added.
some guy find that marlin not working good for dual extruders delta .
when type T0 or T1 to active extruder and E0 or E1 move causing XYZ
motion . so i locales the bugs and fix it , I have dry run the fix.
Firmware retraction now stores the retract and recover speeds in mm/s
instead of mm/min. This makes it match the units of the maximum
feedrate, and fixes problems with modifying the value via LCD control
panel. From gcode, the values are still taken in mm/min to match the
units of G1 and similar, and they are converted to mm/s before they are
stored.
I also lowered the default retract feedrate to make it less likely to
cause problems for geared extruders when the user hasn’t bothered to
set a reasonable maximum feedrate, though users should be setting both
of these values to suit their hardware.
I made these changes previously, but I can’t find the commit now. This
reapplies the changes to get auto retract working again.
Conflicts:
Marlin/Configuration_adv.h
Marlin/Marlin_main.cpp
This should make it safe to enable FWRETRACT by default, with
autoretract (which should now be fixed) only enabled by M209. FWRETRACT
should probably now default to enabled (to make G10/G11 and M207-209
available, without changing functionality when they are not used), but
I’ll save that for another pull request/discussion.
This takes the (now working) G10/G11 code and moves it to a function,
which is called by G10 and G11, and also called by G1 if autoretract is
enabled and a retract/recover move is detected.
Add digipot i2c control for MCP4451
Allow M907 to set i2c digipot currents in amps
Fix Makefile to allow Azteeg motherboards
Fix Makefile to allow Wire libraries only
Add beeper pin for Azteeg X3 Pro
I added #define for LCD_FEEDBACK_FREQUENCY_HZ and
LCD_FEEDBACK_FREQUENCY_DURATION_MS which is used to alter the default
buzzer sound.
When selecting Panelolu2 in configuration.h:
- it automatically sets the correct ENCODER_PULSES_PER_STEP and
ENCODER_STEPS_PER_MENU_ITEM.
- if LCD_USE_I2C_BUZZER is defined it will also set the default
LCD_FEEDBACK_FREQUENCY_HZ and LCD_FEEDBACK_FREQUENCY_DURATION_MS
When selecting the sanguinololu 1284p the following is true:
- its now enables LARGE_FLASH
- It enables the gcode M300 when the panelolu2 LCD_USE_I2C_BUZZER is
defined
This seems to defeat the purpose of previous_millis_cmd, preventing the
time elapsed from previous_millis_cmd from ever reaching
max_inactive_time or stepper_inactive_time while the heat was on.
Fixes a bug in the Extruder Runout Prevention feature that caused the
extruder to move back to “current_position” after a move if it was
activated while the move was in progress. For long home moves (which
are longer than the dimensions of the machine’s working area), this
would cause the machine to crash into the far end of its travel after
homing. This usually occurred on the Z axis, which could result in
damage to the machine if you don’t hit the reset button in time.
Removed the calculation of the inverse matrix since the rotation matrix is orthogonal, therefore inverted == transposed.
Much simpler and mathematically robust.
In some cases the Bed Heater FET heats up more then stepper drivers, so
this change add the bed monitoring to the controller fan. As soon as the
bed heater is turned on, the controller fan will run as well.
Recommended for those who are using the Z Probe for Z Homing (as
Z-Endstop)
This feature has two changes:
1) Allow user to choose where the Z Probe will touch the bed when homing
all axis together (G28) by setting below defines:
Z_SAFE_HOMING_X_POINT
Z_SAFE_HOMING_Y_POINT
2) Prevents the user to perform Z Axis Homing when the Z Probe is
outsite bed.