That’s stored in the firmware within a couple of seconds after the motion stops.
So client 2 can ask firmware for spindle location. You guys rock
Has, after any pending motion has completed.
Even after power has been cut?
@kodaxx Not sure if you are aware, but take alook at CNC related javascript projects at ChilliPeppr and jscut
I plan on using jscut for my next project.
I’m not sure which power we’re talking about, but as soon as the Arduino has powered up, it begins sending
[PE:0.00,0.00,127]
<Idle,MPos:0.00,0.00,0.00,WPos:0.000,0.000,0.000>
[PE:0.00,0.00,127]
<Idle,MPos:0.00,0.00,0.00,WPos:0.000,0.000,0.000>
[PE:0.00,0.00,127]
<Idle,MPos:0.00,0.00,0.00,WPos:0.000,0.000,0.000>
[PE:0.00,0.00,127]
<Idle,MPos:0.00,0.00,0.00,WPos:0.000,0.000,0.000>
[PE:0.00,0.00,127]
<Idle,MPos:0.00,0.00,0.00,WPos:0.000,0.000,0.000>
[PE:0.00,0.00,127]
<Idle,MPos:0.00,0.00,0.00,WPos:0.000,0.000,0.000>
Here, the sled is located at 0.00, 0.00, 0.00 with a position error of 0.00, 0.00
I don’t believe that the position can be queried separately. Here are the response to a request for all values ("$$ \r\n" :
$0=2438.40 (machine width, mm)
$1=1219.19995117 (machine height, mm)
$2=3010.10009765 (motor distance, mm)
$3=424.00000000 (motor height, mm)
$4=310.00000000 (sled width, mm)
$5=139.00000000 (sled height, mm)
$6=79.00000000 (sled cg, mm)
$7=2 (Kinematics Type 1=Quadrilateral, 2=Triangular)
$8=127.50000000 (rotation radius, mm)
$9=2000 (axis idle before detach, ms)
$10=3360 (full length of chain, mm)
$11=1650 (calibration chain length, mm)
$12=8113.73046875 (main steps per revolution)
$13=63.50000000 (distance / rotation, mm)
$15=700 (max feed, mm/min)
$16=1 (Auto Z Axis, 1 = Yes)
$17=0 (auto spindle servo/relay)
$18=12.60000038 (max z axis RPM)
$19=3.17500019 (z axis distance / rotation)
$20=7560.00000000 (z axis steps per revolution)
$21=1300.00000000 (main Kp Pos)
$22=0.00000000 (main Ki Pos)
$23=34.00000000 (main Kd Pos)
$24=1.00000000 (main Pos proportional weight)
$25=5.00000000 (main Kp Velocity)
$26=0.00000000 (main Ki Velocity)
$27=0.27999999 (main Kd Velocity)
$28=1.00000000 (main Velocity proportional weight)
$29=1300.00000000 (z axis Kp Pos)
$30=0.00000000 (z axis Ki Pos)
$31=34.00000000 (z axis Kd Pos)
$32=1.00000000 (z axis Pos proportional weight)
$33=5.00000000 (z axis Kp Velocity)
$34=0.00000000 (z axis Ki Velocity)
$35=0.27999999 (z axis Kd Velocity)
$36=1.00000000 (z axis Velocity proportional weight)
$37=0.00000000 (chain sag correction value)
$38=1 (chain over sprocket)
$39=3 (PWM frequency value 1=39,000Hz, 2=4,100Hz, 3=490Hz)
$40=63.50000000 (distance / rotation, including chain tolerance, left chain, mm)
$41=63.50000000 (distance / rotation, including chain tolerance, right chain, mm)
please quote enough of the prior message to understand what you are responding
to
but when the firmware saves the position, it saves it in such a way that it
survives power being cut, and even the software being upgraded.
But the memory has a limited number of writes before it goes bad, so it only
saves it after it’s finished moving (I think there is a guard period of a couple
seconds to make sure you are really finished)
If you pull the power before that, you will need to re-do the calibration (at
lest the ‘auto calibrate’ mode) to get you back to a known state