bigtreetech / KNOMI

158 stars 73 forks source link

Knomi 2 V1.0.2 and bed-slinger style printers: Zero acceleration bar display on Y-Axis #62

Open MKloberg opened 4 months ago

MKloberg commented 4 months ago

I'm not sure if anybody else has seen this yet. New one, but bought a while back - haven't actually used it until yesterday on my Ender3 S1 Pro. I flashed it with the latest firmware.bin and put it on the printer. While it completes a layer, I see blips on the x and z but next to nothing on the y. I don't use z-hop, so there should be next to nothing on the z, unless going up to the next layer. I see almost nothing on the Y, almost if the two were reversed. Is anyone else seeing this?

MKloberg commented 4 months ago

Please ignore my previous report, I just didn't understand yet how the Knomi renders these bars.

After looking at the source code, I understand this better now: During printing, it will display three acceleration bars, one for each axis. Looking at the source code, I learned that the values that are driving these bars are not coming from Klipper. Instead, the sensor that makes this possible is a LIS2DW12 3-axis MEMS accelerometer and mounted on the Knomi PCB itself, sensing how the Knomi moves through 3D space.

If you read this far, you most likely have a bed-slinger style printer, and the print head will only accelerate in the x and z directions while it moves during printing (never in the y direction because that is the axis of the bed). The acceleration bar for the Y axis will therefore never really move and remain mostly at zero.

There should be a configurable option to specify if the printer is a bed-slinger or corexy style printer. Consequently, for bed-slingers - perhaps there are values on the Moonraker api for each axis that could be displayed to make this somewhat interesting instead of the LIS2DW12 accelerometer values.

austinrdennis commented 1 month ago

Wow, I agree. This might be the worst implementation of a feature I've ever seen. Agreed, just hook it into moonraker and have it look at instantaneous velocity changes on each axis. This decision is just kinda wild.