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.
    • jay_s_ukundefined
      jay_s_uk @mfs12
      last edited by

      @mfs12 any chance you can indicate what has changed between each RC rather than just lumping the changes in together?

      Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

      1 Reply Last reply Reply Quote 0
      • Fred-Yundefined
        Fred-Y
        last edited by

        @mfs12 Excellent work, I really like it ☺

        Some parameters are displayed while there is no compensation - nothing major but it confused me a little, I was unsure if I had an IS configured and miss reported.
        1c872449-ea4c-4b27-b6af-c2e47c64e75d-image.png

        Generating graphs from multiple records works very well, I spent quite some time tonight playing with it on my Delta!

        I really like being able to compare the different recordings, that is perfect to try different settings and compare them.

        Hiding some axis on the graph would useful when we have 3 or more records at the same time
        eb859326-b837-4771-abdf-cd660191379e-image.png

        I'm going to test it on a CoreXY within the next few days 👍

        mfs12undefined 1 Reply Last reply Reply Quote 0
        • mfs12undefined
          mfs12 @Fred-Y
          last edited by

          @fred-y thanks for your feedback. basically all of your ideas are going to be implemented in future versions. so stay tuned 😉

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

          Fred-Yundefined 1 Reply Last reply Reply Quote 1
          • 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