Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    InputShaping-Plugin-0.1.0-rc7 released (repacked)

    Scheduled Pinned Locked Moved
    Plugins for DWC and DSF
    12
    32
    2.2k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Fred-Yundefined
      Fred-Y @mfs12
      last edited by

      @mfs12 I'm looking forward to test the next releases!

      This might be a little off topic: is there a plan to implement a script similar to the one used by Klipper to determine the best frequency / type for IS?

      Using the graphs requires some knowledge and analysis, for example the spike at 102Hz on my graph is deceiving as it is not caused by a movement, it exists on a records done with no moves. I suspect it to come from the PSU fan on top of my Delta.

      1 Reply Last reply Reply Quote 1
      • mfs12undefined
        mfs12
        last edited by

        @Fred-Y thanks for you help.

        Yes, we plan to automate as much as possible. Although i can't tell you yet what is going to be realized.

        Using the graphs requires some knowledge and analysis, for example the spike at 102Hz on my graph is deceiving as it is not caused by a movement, it exists on a records done with no moves. I suspect it to come from the PSU fan on top of my Delta.

        this is a very good point you are hinting to. To understand such behavior we should records as well the current movement with the accelerations.

        Visit me on github at https://github.com/mfs12/

        Fred-Yundefined shmibbityundefined 2 Replies Last reply Reply Quote 0
        • Fred-Yundefined
          Fred-Y @mfs12
          last edited by

          @mfs12 Thanks for the response.

          Let me know if you need any kind of help to test experimental functions or alpha built, I would be happy to support.
          My printers are not used for any business purposes so they can be use for troubleshooting and even be put out of service for days.

          1 Reply Last reply Reply Quote 1
          • shmibbityundefined
            shmibbity @mfs12
            last edited by

            @mfs12 I'm also interested in an autocalibration feature. Would the right way to go about it be to have the printer oscillate the print head in one dimension at a time with varying accelerations and distances and use the accelerometer data to find how much distance the frame moved as it shook? The largest displacement will indicate what the natural frequency is of the printer frame in the respective axis.

            That information could be used to dynamically adjust jerk and acceleration values of the printer before the next move takes place.

            NightLonk42undefined shmibbityundefined 2 Replies Last reply Reply Quote 0
            • NightLonk42undefined
              NightLonk42 @shmibbity
              last edited by

              This post is deleted!
              1 Reply Last reply Reply Quote 0
              • NightLonk42undefined
                NightLonk42
                last edited by NightLonk42

                
                
                I've tried on the latest RRF beta and 3.3. It's replicated 100% every time.
                
                Duet Mini 5+ Wifi
                Toolboard V1.1
                BL Touch (in case that matters somehow)~~
                
                ```
                m122
                === Diagnostics ===
                RepRapFirmware for Duet 3 Mini 5+ version 3.4.0beta3 (2021-08-24 14:08:24) running on Duet 3 Mini5plus WiFi (standalone mode)
                Board ID: GJRQ5-V396U-D65J0-40KM8-K013Z-7VUQA
                Used output buffers: 3 of 40 (15 max)
                === RTOS ===
                Static ram: 102756
                Dynamic ram: 107252 of which 28 recycled
                Never used RAM 31676, free system stack 200 words
                Tasks: NETWORK(ready,11.8%,253) HEAT(notifyWait,0.0%,372) Move(notifyWait,0.0%,338) CanReceiv(notifyWait,0.0%,797) CanSender(notifyWait,0.0%,372) CanClock(delaying,0.0%,346) TMC(notifyWait,0.7%,115) MAIN(running,85.4%,428) IDLE(ready,1.2%,29) AIN(delaying,0.8%,266), total 100.0%
                Owned mutexes: WiFi(NETWORK)
                === Platform ===
                Last reset 00:00:19 ago, cause: software
                Last software reset at 2021-09-13 22:57, reason: User, GCodes spinning, available RAM 31388, slot 0
                Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
                Error status: 0x00
                Aux0 errors 0,0,0
                MCU revision 3, ADC conversions started 19343, completed 19341, timed out 0, errs 0
                Step timer max interval 750
                MCU temperature: min 43.7, current 44.1, max 44.8
                Supply voltage: min 24.0, current 24.0, max 24.1, under voltage events: 0, over voltage events: 0, power good: yes
                Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
                Driver 0: position 0, standstill, SG min/max 2/2, read errors 0, write errors 1, ifcnt 70, reads 988, writes 12, timeouts 0, DMA errors 0
                Driver 1: position 0, standstill, SG min/max 2/2, read errors 0, write errors 1, ifcnt 70, reads 988, writes 12, timeouts 0, DMA errors 0
                Driver 2: position 0, standstill, SG min/max 2/2, read errors 0, write errors 1, ifcnt 70, reads 987, writes 12, timeouts 0, DMA errors 0
                Driver 3: position 0, standstill, SG min/max 0/0, read errors 0, write errors 1, ifcnt 70, reads 987, writes 12, timeouts 0, DMA errors 0
                Driver 4: position 0, standstill, SG min/max 0/0, read errors 0, write errors 1, ifcnt 70, reads 988, writes 12, timeouts 0, DMA errors 0
                Driver 5: position 0, assumed not present
                Driver 6: position 0, assumed not present
                Date/time: 2021-09-13 22:58:05
                Cache data hit count 36845245
                Slowest loop: 3.99ms; fastest: 0.12ms
                === Storage ===
                Free file entries: 10
                SD card 0 detected, interface speed: 22.5MBytes/sec
                SD card longest read time 3.5ms, write time 0.0ms, max retries 0
                === Move ===
                DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, comp offset 0.000
                === MainDDARing ===
                Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                === AuxDDARing ===
                Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                === Heat ===
                Bed heaters = 0 -1, chamberHeaters = -1 -1
                Heater 1 is on, I-accum = 0.0
                === GCodes ===
                Segments left: 0
                Movement lock held by null
                HTTP is idle in state(s) 0
                Telnet is idle in state(s) 0
                File is idle in state(s) 0
                USB is idle in state(s) 0
                Aux is idle in state(s) 0
                Trigger is idle in state(s) 0
                Queue is idle in state(s) 0
                LCD is idle in state(s) 0
                SBC is idle in state(s) 0
                Daemon is idle in state(s) 0
                Aux2 is idle in state(s) 0
                Autopause is idle in state(s) 0
                Code queue is empty
                === CAN ===
                Messages queued 193, received 591, lost 0, longest wait 2ms for reply type 6049, peak Tx sync delay 237, free buffers 17 (min 16), ts 97/96/0
                Tx timeouts 0,0,0,0,0,0
                === Network ===
                Slowest loop: 15.35ms; fastest: 0.00ms
                Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions
                HTTP sessions: 1 of 8
                - WiFi -
                Network state is active
                WiFi module is connected to access point 
                Failed messages: pending 0, notready 0, noresp 0
                WiFi firmware version 1.26
                WiFi MAC address f0:08:d1:02:e6:b1
                WiFi Vcc 3.40, reset reason Power up
                WiFi flash size 2097152, free heap 21408
                WiFi IP address 192.168.1.29
                WiFi signal strength -35dBm, mode 802.11n, reconnections 0, sleep mode modem
                Clock register 00002002
                Socket states: 0 4 0 0 0 0 0 0
                ```
                - -
                How to replicate:
                
                
                * -Install InputShaping Plugin (Currently using latest version as of 9/13/21)
                
                * Start it
                
                *No issues whatsoever with homing or G32 happen at this point. Everything is fine*
                
                * Home Printer
                
                * Run mesh compensation (G29)
                
                *A Height Map is saved* 
                (The height map file is what's causing the bug for whatever reason)
                
                * Reboot printer
                
                *Paneldue will no longer connect and is now stuck at connecting*
                
                * Try to Home Printer
                
                *BL Touch will not deploy and the console throws error messages*
                 ```
                9/13/2021, 10:49:13 PM	Error: in file macro line 17: G30: Z probe 0 not found
                Error: G0/G1: insufficient axes homed
                9/13/2021, 10:49:11 PM	G28
                Error: in file macro line 17: G30: Z probe 0 not found
                ```
                
                * Delete heightmap.csv
                
                * Reboot printer
                
                *Everything now works as expected again*~~
                gloomyandyundefined 1 Reply Last reply Reply Quote 0
                • gloomyandyundefined
                  gloomyandy @NightLonk42
                  last edited by

                  @nightlonk42 Are you saying that if you do not install the input-shaper plugin (or disable it) that this problem does not happen?

                  NightLonk42undefined 1 Reply Last reply Reply Quote 0
                  • shmibbityundefined
                    shmibbity @shmibbity
                    last edited by

                    This post is deleted!
                    1 Reply Last reply Reply Quote 0
                    • NightLonk42undefined
                      NightLonk42 @gloomyandy
                      last edited by

                      @gloomyandy said in InputShaping-Plugin-0.1.0-rc7 released (repacked):

                      @nightlonk42 Are you saying that if you do not install the input-shaper plugin (or disable it) that this problem does not happen?

                      That is correct

                      mfs12undefined 1 Reply Last reply Reply Quote 0
                      • jallen810undefined
                        jallen810
                        last edited by

                        @fred-y @mfs12 I have to say, after using Klipper's system to "Autotune" this is bit archaic by comparison. I sure hope this will be continued to be improved upon as i think it has merit. WIthout having a huge understanding of the algorithms involved here let me take a stab at how i think your system could be improved to help the user make educated decisions on I.S. for their system.

                        1.) The Analysis graphing always defaults to displaying all 3 (X,Y,Z) axes simulataneously. This is overwhelming, the configuration dialog asks us to pick 1 axes to test, thus the accelerometer readings should only be recorded for this axis (or filtered after the fact) so as to not confuse the user.

                        2.) I have notice that my acclerometer testing file names are not being generate with the user selected (I.S. algo type, Frequency, Damping, axis desire, etc..) they simply get some random numbers & a date/time stamp... (Pic below)

                        Supposed to name:
                        SupposedName.png

                        Actual Name i get when CSV is saved:
                        ActualName.png

                        So i have to go one-by-one, test, record, rename, update settings, repeat... very slow & frustrating simply to get my filenames correct so i can compare them....

                        3.) The analysis doesn't make any kind of recommendations for solving any of our variables.... The user must optimize 3-variables... not likely going to happen in any sort of quick situation. My recommendation would be for the system to take a standing still reading to account for environmental resonances (fans/etc...) and ignore these values when analyzing the accelerometer data. From there it should test increasing frequencies (Defined by user OR 0-150Hz F.E.) and then run that through solving for each I.S. type one-by-one to determine optimal frequency to cancel and maximum accel/decel & dampening at solved frequency...
                        This would, in effect, do exactly what Klipper I.S. does so well (and in mere minutes) but would give us a graphical representation of it simultaneously....

                        I truly hope you keep at it and make some improvements to the system, I don't want this to sound like negative because this is great work so far, it just simply isn't complete yet, if you mission is to provide the user with "turnkey" information to improve their prints. I will keep playing with this and upgrading as beta's come out.

                        Phaedruxundefined mfs12undefined 2 Replies Last reply Reply Quote 1
                        • Phaedruxundefined
                          Phaedrux Moderator @jallen810
                          last edited by

                          @jallen810 Work is still progressing.

                          Z-Bot CoreXY Build | Thingiverse Profile

                          A Former User? 1 Reply Last reply Reply Quote 0
                          • A Former User?
                            A Former User @Phaedrux
                            last edited by

                            @phaedrux said in InputShaping-Plugin-0.1.0-rc7 released (repacked):

                            @jallen810 Work is still progressing.

                            Looking forward to have it!

                            1 Reply Last reply Reply Quote 0
                            • mfs12undefined
                              mfs12 @NightLonk42
                              last edited by

                              Hey @nightlonk42,

                              thanks for your feedback. I have no clue how inputshaping plugin would interferes with the other plugins or other functionality of the printer.

                              But as this plugin is still in a very early stage, please stop using it for now. We will keep an eye on this issue.

                              Visit me on github at https://github.com/mfs12/

                              1 Reply Last reply Reply Quote 0
                              • mfs12undefined
                                mfs12 @jallen810
                                last edited by

                                Hey @jallen810,

                                as @Phaedrux already stated the plugin is still in an early stage, but it will improve.

                                From what i understand your most missing features are

                                • displaying only the tested axis
                                • show inputshaping configuration and test parameters for each record
                                • get parameter recommendations
                                • speed things up
                                • do a completely automated calibration process

                                Visit me on github at https://github.com/mfs12/

                                1 Reply Last reply Reply Quote 0
                                • Heartleander81undefined
                                  Heartleander81
                                  last edited by

                                  This post is deleted!
                                  1 Reply Last reply Reply Quote 0
                                  • Heartleander81undefined
                                    Heartleander81
                                    last edited by

                                    Hi. I installed DWC 3.4b4 today.
                                    Now I want to install the plugin,
                                    but I get the message: Requirement DWC version 3.4.0-b420210927_221302.jpg 20210927_221252.jpg

                                    mfs12undefined 1 Reply Last reply Reply Quote 0
                                    • mfs12undefined
                                      mfs12 @Heartleander81
                                      last edited by

                                      A new version of input plugin was released.

                                      Check https://forum.duet3d.com/topic/25306/inputshaping-plugin-0-2-0-pre3-released/1

                                      Visit me on github at https://github.com/mfs12/

                                      1 Reply Last reply Reply Quote 0
                                      • First post
                                        Last post
                                      Unless otherwise noted, all forum content is licensed under CC-BY-SA