The compiler does not support comparing float values: "error: floating constant in preprocessor expression"
The loss in X/Y precision shouldn't matter for Z probes, as most microswitches or inductive sensors are larger than 1mm square anyway.
Somehow the pin definitions for the MAX6675 Slave Select/Chip Select got changed back to the hardware SPI SS/CS.
Pin 49 cannot be used as that is used by the SD card socket to detect if an SD card is present.
Pin 53 is the Hardware SPI SS, which is dedicated, nicely, to the SD card SS and therefore cannot be used as the MAX6675 SS
Pin 66 is in Aux2 port adjacent to the Hardware SPI interface port on RAMPS 1.4, and is currently not used for anything.
This is the optimal code for a self-contained formatter, although the
original code is crafty in being smaller and simpler, and can be
evaluated as using the original output as a scratch pad for state,
making the final formatter more straightforward. While this code is
longer, all code-paths are minimal.
This is the optimal code for a self-contained formatter, although the
original code is crafty in being smaller and simpler, and can be
evaluated as using the original output as a scratch pad for state,
making the final formatter more straightforward. While this code is
longer, all code-paths are minimal.
No matter what LANGUAGE_CHOICE was set to it would always take the en branch.
I revamped it a bit to use a macro to create the language include file name. This required a slight tweak to the RU declaration since it's special-cased in a couple places in code.
This is an attempt to pull my changes from #1222 over.
void manage_inactivity(bool ignore_stepper_queue=false)
standard is false so it is not necessary to change additional code. this
change should be better, hopefully nophead like this :)
- Fixed issue when BAL area probing is shorter than it should be for
grid probing
- Warning when BAL activated with Delta Kinematics
- Fix XY_TRAVEL_SPEED when homing Z axis
Current defaults are all 255. If it makes sense to reduce them, they should come down together, and
be in a PID_INTEGRAL_DRIVE_MAX <= PID_MAX <- BANG_MAX relationship.
Moved PSTR() macro to correct place which was causing the " initializer fails to determine size of '__c' " when attempting to compile with BABYSTEPPING enabled.
in
G0 to G3 were previously acknowledged in the get_command method, causing
them to be possibly acknowledged before commands coming after them that
were acknowledged in process_commands.
This patch fixes this, moving the acknowledgement of G0 to G3 to the
process_commands method as well. These commands are therefore no
longer acknowledged when the enter the cmd_buffer but instead only
acknowledged when the enter the plan_buffer.
Guaranteeing that commands are acknowledged in the same order in which
they were received by the firmware allows host software to be able to
track the life cycle of commands and such a better management of the
firmware's serial buffers as well as better internal command processing
and response parsing without having to depend on throwing an epic
amount of regular expressions against each line received back from the
firmware.
FixesErikZalm/Marlin#1147
For the MORE_RAM option we need to buffer both the short and long
names, even though long names are sometimes redundant. Worst case, all
the names are max length. We can save some RAM by not storing these. We
could save more RAM by only storing the visible part of the long name.
For the MORE_RAM option we need to buffer both the short and long
names, even though long names are sometimes redundant. Worst case, all
the names are max length. We can save some RAM by not storing these. We
could save more RAM by only storing the visible part of the long name.
Tosh stepper drivers need to be driven slower, so the stepper code
was interleaved to separate the pin HIGH from the pin LOW. This adds
enough instructions to make it work, without needing nops.
Tosh stepper drivers need to be driven slower, so the stepper code
was interleaved to separate the pin HIGH from the pin LOW. This adds
enough instructions to make it work, without needing nops.
Here comes a compile-time operation to match the extruder symbols on the
info screen to the set number of extruders in configuration.h.
When only one extruder is selected, the "1" on the symbol will not be
displayed.
Added support to show the filament width on the status line of the
graphic LCD. The status will show for 5 sec and then switch over to
data. Status can be seen by clicking the button.
Changes to support displaying the real-time filament width and the
volume factor on a 20x4 LCD. The data is displayed on the 4th line.
First the status message is displayed for 5 seconds, and then the
filament data is displayed. The status message can be seen by
re-selecting the info screen in the menu.
Add another comment on configuration.h for the value of thermistor.
I make a pull request on thermistortables.h with my thermistor (12),but y see there is a comment on configuration with number 12 but it's not present on thermistortables.h ?
Thx
The serial protocol has to stay machine readable, without having
to cope with a ton of different human language variants. So
just leave it at the original english version.
Should fixErikZalm/Marlin#1052
Improvement to avoid reinitializing delay buffer with every print. Fixed
issues in buffer indexing and memory out of bounds due to floating point
imprecision. Simplified the code by avoiding conversion to standard
diameter and 1cu mm extrusion, which caused complications in determining
mm extruded.
chdkActive was set to false regardless of (millis() - chdkHigh) being bigger than the CHDK_DELAY or not. So if (millis() - chdkHigh) wasn't bigger than the delay the first time, the CHDK would never be set back to LOW.
Also, don't return from the function, as there might be other stuff to do, after the CHDK check.
This feature allows the printer to read the filament diameter
automatically and adjust the printer in real time. Added code to read
an analog voltage that represents a filament diameter measurement. This
measurement is delayed in a ring buffer to compensate for sensors that
are a distance away from the extruder. The measurement is used to
adjust the volumetric_multiplier for the extruder. Some additional g
codes (M404, M405, M406, M407) are used to set parameters and turn
on/off the control. g code M221 is updated. Pins for RAMPS1.4, RAMBO,
and Printrboard are identified for analog input. The configuration file
is updated with relevant user parameters.
Original code is using WRITE from fastio, but original used pinMode to
set pin direction and did not use the fastio SET_INPUT or SET_OUTPUT.
This caused an issue with the rotary encoder interface to boards based
on teensyduino, since for teensyduino pin numbers for fastio and the
usual Arduino IO are different.
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.
This is a feature to protect your printer from burn up in flames if it
has a thermistor coming off place (this happened to a friend of mine
recently and motivated me writing this feature).
The issue: If a thermistor come off, it will read a lower temperature
than actual. The system will turn the heater on forever, burning up the
filament and anything
else around.
After the temperature reaches the target for the first time, this
feature will start measuring for how long the current temperature stays
below the target minus _HYSTERESIS (set_temperature -
THERMAL_RUNAWAY_PROTECTION_HYSTERESIS).
If it stays longer than _PERIOD, it means the thermistor temperature
cannot catch up with the target, so something *may be* wrong. Then, to
be on the safe side, the system will he halt.
Bear in mind the count down will just start AFTER the first time the
thermistor temperature is over the target, so you will have no problem
if your extruder heater takes 2 minutes to hit the target on heating.