Open
Conversation
Signed-off-by: Timofey Titovets <[email protected]>
Move the definition of the struct so that it is more clear that it has its own locking. Signed-off-by: Kevin O'Connor <[email protected]>
There's no reason to attempt to handle multiple buffer transmissions in a single command_event() call. Handle the transmit case outside of the command building loop. If data is transmitted, then get a new timestamp from the pollreactor and retry before sleeping. Signed-off-by: Kevin O'Connor <[email protected]>
Move the upcoming queue movement logic to a new function. Signed-off-by: Kevin O'Connor <[email protected]>
Maintain the next needed wakeup time for entries in the pending queues. This avoids needing to walk the upcoming queues when it is known that nothing is ready to be released. Signed-off-by: Kevin O'Connor <[email protected]>
Only hold the lock in the serialqueue thread when moving messages to the ready queue and when setting the next need_kick_clock. Only set the need_kick_clock just prior to sleeping. Signed-off-by: Kevin O'Connor <[email protected]>
Keep moving messages from the pending queues to the ready queues even if it's not currently valid to transmit messages to the mcu. This improves the statistics when debugging. Signed-off-by: Kevin O'Connor <[email protected]>
Rename the function and perform list appending and locking in that function. Signed-off-by: Kevin O'Connor <[email protected]>
Signed-off-by: Kevin O'Connor <[email protected]>
Replace the existing Coord() class with one that supports more than 4 coordinates. Signed-off-by: Kevin O'Connor <[email protected]>
Instead of passing arguments as parameters, pass them as a list (or tuple). This simplifies the callers and makes it easier to pass additional parameters. Signed-off-by: Kevin O'Connor <[email protected]>
Change "homing_origin" and "position" to support more than 4 components. Export a new "axis_map" value to describe the contents at each component index. Signed-off-by: Kevin O'Connor <[email protected]>
Update the "position" status to include extra axes. Export a new "extra_axes" value that describes the class associated with each component of the coordinate. Signed-off-by: Kevin O'Connor <[email protected]>
Signed-off-by: Kevin O'Connor <[email protected]>
Signed-off-by: Kevin O'Connor <[email protected]>
…nates Update the docs with information on how to access the "extra axes" of coordinate values. Signed-off-by: Kevin O'Connor <[email protected]>
Signed-off-by: Kevin O'Connor <[email protected]>
…tion Signed-off-by: Kevin O'Connor <[email protected]>
A "dummy extruder" that is created when no "[extruder]" config section
is defined does not have a "name". Avoid reporting that empty name in
the `{printer.toolhead.extra_axes}" status report.
Signed-off-by: Kevin O'Connor <[email protected]>
This timing is also known as T1H in various datasheets. Increasing it should improve compatibility with various revisions and clones of the WS2812 LED. The short version is that 800 is the timing used by Adafruit's popular NeoPixel Arduino library, and it has no problem driving my BTT RGBW kit LEDs, while Klipper cannot drive them properly without this patch. The real upper limit to this value is something like 5000ns so increasing it should not cause new compatibility problems for LEDs that currently work. Signed-off-by: Alistair Buxton <[email protected]>
Signed-off-by: Timofey Titovets <[email protected]>
…ation (#7122) This adds a dedicated check for that case to be able to find the root cause of a misconfiguration earlier. Also, replace occurrences of hardcoded max tick count. Signed-off-by: Pascal Pieper <[email protected]>
Signed-off-by: Kevin O'Connor <[email protected]>
Signed-off-by: Timofey Titovets <[email protected]>
Signed-off-by: Timofey Titovets <[email protected]>
Signed-off-by: Dmitry Butyugin <[email protected]>
* Do not recommend ZV shaper by default if possible * Try to find more optimal shaper out of more aggressive ones Signed-off-by: Dmitry Butyugin <[email protected]>
Signed-off-by: Dmitry Butyugin <[email protected]>
Signed-off-by: Dmitry Butyugin <[email protected]>
This also enables arbitrary using names for primary carriages with generic_cartesian kinematics. Signed-off-by: Dmitry Butyugin <[email protected]>
Keeps the width sensor state in sync with the associated runout sensor and normalizes the output when the width sensor is disabled. When the width sensor was disabled the associated filament sensor remained enabled but was no longer updated so would be 'stuck' in the last state it was in before the width sensor was disabled. The toggle switch and readings in the web interface could also be out of sync with the actual sensor and filament states, misleading the user. Now, when the width sensor is disabled: - The filament sensor is disabled - The reported filament state is 'present' - The reported filament diameter is the nominal diameter When the width sensor is enabled: - The filament sensor is enabled - The reported filament state is the derived state - The reported filament diameter is the measured value Finally, `min_diameter` is now used to determine the runout state rather than a fixed value of `0.5`. Signed-off-by: Ben Lye [email protected]
Race conditions exist when `M221 S100` commands are sent outside the timer, while the sensor is active. This intermittently prevents the flow multiplier resetting to 100% when either flow compensation or the width sensor are changed to disabled. We can avoid this by moving the diable actions, including the `M221 S100` commands, inside the timer loop and only using `M221` outside the timer while the sensor is disabled. Signed-off-by: Ben Lye [email protected]
Signed-off-by: Maksim Bolgov <[email protected]>
Signed-off-by: Maksim Bolgov <[email protected]>
Signed-off-by: Maksim Bolgov <[email protected]>
Allow specifying only one unnamed accelerometer in the configuration file, which becomes the default. Signed-off-by: Maksim Bolgov <[email protected]>
Signed-off-by: Maksim Bolgov <[email protected]>
This updates the outdated CanBoot flash_can.py with the latest version of Katapult flashtool.py, which should be fully backwards compatible. Signed-off-by: Robert Schiele <[email protected]>
Signed-off-by: Robert Schiele <[email protected]>
Signed-off-by: Kevin O'Connor <[email protected]>
A bouncing button can generate a lot of pending G-code Each G-Code command will lock on the G-Code mutex Decrease pressure by ignoring empty G-Code requests Signed-off-by: Timofey Titovets <[email protected]>
PB6 used on cartographer v4 Signed-off-by: Timofey Titovets <[email protected]>
Signed-off-by: Timofey Titovets <[email protected]>
Signed-off-by: Dmitry Butyugin <[email protected]>
Add new add_lowpass(), add_highpass(), add_notch(), and setup_initial_state() methods to DigitalFilter. Use these instead of creating the filters from the constructor. Also remove the unused filtfilt() method. Signed-off-by: Kevin O'Connor <[email protected]>
Replace the DerivativeFilter() class with a new add_derivative() method in DigitalFilter() class. Signed-off-by: Kevin O'Connor <[email protected]>
Support exporting the current SOS filter size from the DigitalFilter() class. Pass that value to the MCU_SosFilter() class to avoid allocating unneccessary MCU memory (previously 5 entries were allocated while only 3 are currently needed). Signed-off-by: Kevin O'Connor <[email protected]>
Store the 12 constants needed for the common probe_eddy_current "tap" filter in trigger_analog.py code. This avoids requiring "tap" users to have the scipy python package installed. Signed-off-by: Kevin O'Connor <[email protected]>
Use a different base frequency and base z value for the internal "tap" least squares analysis to improve the numerical stability of the calculations. Rework the formulas being solved so that only the depressed slope calculation is relative to the estimated z contact point. This results in less variables that are dependent on the z contact. Signed-off-by: Kevin O'Connor <[email protected]>
Use the least squares solution code in the local mathutil.py module instead of using the numpy package. This allows users to utilize the "tap" functionality without requiring additional package installation. Signed-off-by: Kevin O'Connor <[email protected]>
…lation Directly calculate the evaluated matrices instead of using mat_mat_mult() and mat_transp(). Cache the intermediate summations to improve processing when using similar z guesses. Signed-off-by: Kevin O'Connor <[email protected]>
Continue to run least squares evaluations until the uncertainty range is within 50 nanometers (reduced from 250nm). Signed-off-by: Kevin O'Connor <[email protected]>
Signed-off-by: Kevin O'Connor <[email protected]>
Implement some basic checks on the tap results and report an error if the results look obviously incorrect. Signed-off-by: Kevin O'Connor <[email protected]>
There have been some reports of the sanity check throwing an error when the bed is depressed just under 50um. For now, increase the valid depress range to avoid unnecessary errors. Signed-off-by: Kevin O'Connor <[email protected]>
Have the callers convert convert the trigger_value from a float to an integer (if necessary). This is in preparation for implementing rounding in to_fixed_32(). Signed-off-by: Kevin O'Connor <[email protected]>
Round the SOS filter coefficients to the nearest integer (instead of truncating). Signed-off-by: Kevin O'Connor <[email protected]>
The coeff_frac_bits and scale_frac_bits can be automatically calculated, so there's no need for the callers to specify this information. Signed-off-by: Kevin O'Connor <[email protected]>
…lter Scale the internal mcu values to units of milli-hz to reduce the chance of roundoff error in the internal calculations. Signed-off-by: Kevin O'Connor <[email protected]>
Print near the origin lead in to fast motor movements, therefore the movement needs to be scaled down. The start of the scaling is done via a rotation velocity limit from the config. Signed-off-by: Nils Hensch <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.