InputShaping-Plugin-0.1.0-rc7 released (repacked)
-
@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. -
@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.
-
This post is deleted! -
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*~~
-
@nightlonk42 Are you saying that if you do not install the input-shaper plugin (or disable it) that this problem does not happen?
-
This post is deleted! -
@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
-
@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:
Actual Name i get when CSV is saved:
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.
-
@jallen810 Work is still progressing.
-
@phaedrux said in InputShaping-Plugin-0.1.0-rc7 released (repacked):
@jallen810 Work is still progressing.
Looking forward to have it!
-
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.
-
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
-
This post is deleted! -
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-b4 -
A new version of input plugin was released.
Check https://forum.duet3d.com/topic/25306/inputshaping-plugin-0-2-0-pre3-released/1