forked from jetty840/Sailfish-MightyBoardFirmware
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Sdcard reads are very inefficient, although we fill the command buffer, we only read a single move command at a time. When printing with high detail this is often not fast enough to keep the move command ring full, which results in planner badness in addition to slowing down the print. So, if we encounter a stream of move commands, pipeline those reads into the planner. Additionally, if we still haven't filled the buffer blocks, read more from the sdcard, and continue doing so until we do. This effectively prioritizes reading of sdcard data during prints over everything else, except interrupts of course. If a very long area of high detail is encountered, we can be in that loop for a long time, since st_interrupt basically 100% cpu and is draining the block buffer continuously. Therefore we break out after we've done a bunch of work so that the menu and other slices are still responsive.
- Loading branch information
Showing
5 changed files
with
56 additions
and
13 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
9b746ba
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am enjoying tracking your changes. Is there anyway you could share a .hex for the most recent replicator 1 with atmega2560 firmware version that includes your changes? I cannot figure out how to build the firmware... Thanks!
9b746ba
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this is ready for non-dev consumption yet. I have a good idea of how much more work needs to be done in the planner so that I can be confident that it actually works right for anyone, it's just a matter of getting around to it. Before that it will be hard to tell if a trajectory planning bug already existed or I inserted a new one.
9b746ba
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One last concurrence: The hammering problem has been evident in EVERY Sailfish-loaded printer I have worked with. The issue is present in stable release v7.7 r1432.