Comments (7)
What display config?
from marlin.
See below, in the independent move axis menu
Motion > Move Axis > Move I
For example.
I is way slower than Y.
J is actually faster the I, but displacement is super small. H
from marlin.
I have no clue about the display-related code. Never had a serious look at it (I don't use a dedicated display but connect to a laptop). Maybe someone else knows how to fix it?
from marlin.
@DerAndere1 ; After fixing the IJK steps calculation, this is still broken. I will fix this now.
from marlin.
Ok, found the issue, at least something obviously wrong : Acceleration is correct for X, but incorrect for J. Note, this is also possibly impacting all movements.
To reproduce, simply request an axis moove through the moove menu, and request 10mm. For X, we have 80 steps per mm > 800 steps requested overall. The steps requested is correctly calculated in stepper.cpp for X,I and J.
Result :
X mooves by 1/4 turn, and my X stepper is 200 steps per turn > 50 steps done.
Y mooves by 1/2 turn, and my X stepper is 100 steps per turn > 50 steps done.
I mooves by 1/4 turn, and my I stepper is 200 steps per turn > 50 steps done but at very slow speed
J mooves by a very small amount very fast. Trying to go back to original position only works 1 time out of 2. the second time, axis direction is inverted.
Issue can be seen in stepper.cpp, line 1877
// Compute the acceleration and deceleration points
accelerate_until = current_block->accelerate_until << oversampling;
decelerate_after = current_block->decelerate_after << oversampling;
For X
Accelerate_until = 400
decelerate_after = 400
For I
Accelerate_until = 0
decelerate_after = 800
For J
Accelerate_until = 0
decelerate_after = 800
After a bit of followup in the code, the mistake is not in stepper.cpp, but is in the planner, passing wrong parameters.... More to come!
Luckily, the STM32 allows hardware breakpoint on the target. Now way to find that on an AVR platform, unless you have the code developped in Atmel IDE + debug probe.
from marlin.
Update : For short Gcode files, all works perfectly. The attached file, much longer, still shows difference on J axis. I think this is the same root cause as the difference seen in the displacement issued by the menus. Gcode attached as a reference. Same Naca 43012 profile cut at the same time on both XY and IJ.
Would be great is @DerAndere1 you could play this file in your AVR board, even on Marlin 119, to check wether the issue is a porting issue, or a missing code issue.
43012.zip
Output on ARM , M114 at the end :
Send: M114
Recv: echo:M114
Recv: X:0.35 Y:0.00 Z:0.00 I:0.35 J:-1.42 E:0.00 Count X:28 Y:0 Z:0 I:14 J:-57
Recv: ok
The output should be exactly the same X /I and Y/J.
Let me check the acceleration and deceleration calculation. There seems to be quite a lot of 6 axis code missing from motion.cpp... more to come
from marlin.
This is fixed. Definition of manual feedrates ware missing for I, J and K axes for LCDs using ULTIPANEL, EXTENSIBLE_UI.
See commit https://github.com/hobiseven/Marlin/commit/efde6ca2a6abb3e05f3f909bc1d65dbbe0a2ece8
from marlin.
Related Issues (20)
- [FR] No extruders (motors) but hotends (PID control for hotend temperature) HOT 11
- SENSORLESS_HOMING with TMC5160 HOT 1
- G29 Bed Leveling Error HOT 50
- Limit switch problem HOT 3
- Customizing for I and J to use E0 and E1. Robotic arm project. HOT 11
- utility/spi_com.h Not found on PR1 branch HOT 8
- The MKS_SGEN_L motherboard is stuck on the startup screen under the 2.0.9.1 firmware. HOT 2
- [FR] Configuration for robot with syringe pump HOT 1
- Small error in motion_motion.cpp regarding axis names HOT 2
- Issue with Homing 4th I Axis
- I axis only works in absolute positioning HOT 10
- Marlin-9axis_pull hardware test report Axes 8 and 9 HOT 152
- Teensy 9 Axis HOT 2
- problem with setup 6 axis with dual y and b HOT 4
- problem with I J K sensorless homing HOT 1
- [FR] Simplify configuration of axes HOT 2
- Foam Cutter Display HOT 67
- 5-Axis really required on Foam Cutter?[FR] (feature summary) HOT 3
- Couple issues trying to compile for foam cutter HOT 1
- [BUG] movement too slow with G2/G3 HOT 79
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from marlin.