"Requesting State Change" message?

Hi ya’ll noob here (& better with frame building that with using software…) - could’nt find it in a previous thread so hope this is not a very stupid question:
Updated to firmware 1.02 two days ago & tryi’na make it work, but seems to be host of nuisance issues. Most common one is when clicking one of the buttons in Ground Control / Setup, the serial log does acknowledge it (the selected command appears there), but instead of the action actually happening, the log just says “Requesting state change from 2 to 6” (the numbers sometimes differ) - but otherwise nothing happens. Eg right now cannot run calibration. Machine state shows “Idle”.
Happened a bunch of times already, eg also when pressing Release Tension.
If it adds any insight: Z change commands DO move the machine, but X-Y movement (‘Jog’) commands, while appearing in the serial log, only cause the fan to activate for about half a second but no movement.
(annnd - please please please is there a way to restore normal functionality without restarting, since that would require unmounting - retracting - extending - remounting etc, for the 6th time today, already…??)

1 Like

This is actually a feature not a bug! We might need better messages to communicate what is happening. The state machine enforces that only safe actions can happen so you can’t say run calibration before extending the belts. I think that we need to have a better way of communicating why the machine isn’t doing the thing you are asking it to do.

This is exactly what we’re working towards. Having the state machine lets us work towards restoring normal functionality without restarting because we can know if we’re in a safe state. If we don’t have that then the machine could physically break itself which would be worse than having to retract and extend again.

Thanks @bar ; Indeed Yay for better messaging. But in this case more so - this situation occurred immediately after I had finished extending the belts. After which I had used the Apply Tension button, to get the machine properly suspended on my (vertical) frame.
Could it be that pressing Apply Tension puts the machine in a state that’s invalid for initiating calibration?
Alternatively, could it be that the machine hadn’t registered that the belts extension had concluded?

Did you solve the problem? I just ipdate to v.03 and have the same situation just after extracting all the belts

Perhaps. But not of itself nor in a clear/transparent manner.
I now re-ran the following sequence:

  • Restarted the FluidNC, for good measure
  • Checked that connection & server are functioning, by doing a few up/down Z axis jogs
  • Disconnected the belts from their anchor points
  • Went into Setup & pressed Retract all (worked fine)
  • Pressed Extend All (worked fine)
  • Pressed calibrate (Nothing happens, except for the crytpic “Requesting state change from 3 to 4” message).

Here’s the relevant part of the serial log, that accompanied the above actions:

[MSG:INFO: Requesting state change from 2 to 8]
Retract All
[MSG:INFO: Retracting all belts]
[MSG:INFO: Requesting state change from 2 to 1]
[MSG:INFO: Bottom Right pulled tight with offset -1925.495]
[MSG:INFO: Top Right pulled tight with offset -1980.357]
[MSG:INFO: Bottom Left pulled tight with offset -1995.516]
[MSG:INFO: Top Left pulled tight with offset -2055.112]
[MSG:INFO: Requesting state change from 1 to 2]
Extend All
[MSG:INFO: Extending all belts]
[MSG:INFO: Requesting state change from 2 to 3]
[MSG:INFO: All belts extended to 3504.000mm]
[MSG:INFO: Requesting state change from 3 to 4]
Calibrate

(and, again, beyond ‘Calibrate’ command appearing in the log, nothing else; nor when repeated).
Only when I then re-loaded the maslow.local page, and re-did Setup–>Calibrate, did the calibration procedure actually start running.
As of writing this, no idea how repeatable the above behavior is; will edit & update if something changes.

1 Like

Noamcee wrote:

Perhaps. But not of itself nor in a clear/transparent manner.
I now re-ran the following sequence:

  • Restarted the FluidNC, for good measure
  • Checked that connection & server are functioning, by doing a few up/down Z axis jogs
  • Disconnected the belts from their anchor points
  • Went into Setup & pressed Retract all (worked fine)
  • Pressed Extend All (worked fine)

after you extend all and hook up to the anchors, you need to hit ‘apply tension’
before you can do anything else

David Lang

LOL Thanks @dlang !
That’s actually how I did it the previous time (following which I wrote my April 10th post) - resulting with the same “Requesting state change” message (albeit with different numbers) but no physical execution taking place.
The ‘workflow’ diagram under Setup does suggest that, following Retract All, it is EITHER calibrate OR apply tension, and so I thought perhaps that was my mistake and today tried going directly to Calibrate, etc.
But to - to reiterate & clarify - there seems to be an issue with misidentified ‘state’ or state change in either case - be it if ‘apply tension’ is pressed first or if ‘calibrate’ is. Havent reproduced it on my side enough times to say for sure, but at least one other person here’s had a similar experience.

I have the same problem, i can press any button, it still requests the state 3 of 6. I am blocked there and it’s just impossible to run a calibration.

After my understanding, the « apply tension » button is just for the case you already calibrated. But even pressing this button leads to the same request.

1 Like

Today, I have just installed my Maslow and try to calibrate. I have the same problem. Nothing happened, except
Calibrate
[MSG:INFO: Requesting state change from 3 to 6]
If someone have an idea ?

1 Like

This is how it’s supposed to work :grinning_face: You are 100% correct that you should be able to do either Apply Tension or Calibrate after extending the belts and you should be able to also do Calibrate after Apply Tension.

I will investigate and see what is going on!

same problem on v1.03. Nothing works. Also, the interface doesn’t allow me to input a machine size - that option doesn’t exist - so I have no idea what numbers to input for calibration

1 Like

Can you give us very specific steps that you followed and what happened? It’s hard to trouble shoot from “nothing works” :stuck_out_tongue:

Pictures and copies of the log file are super helpful!

I am seeing a very similar issue. I upgraded to firmware v1.03.

It will extend and retract the belts. If I try, ‘calibrate’ after 'extend all’s, then the output displays ‘calibrate’ but nothing happens. If I try going to calibrate from any other state, I get the output ‘changing state from x to 6’ where x changes based on which state I was in.

No matter what combination I try, the calibration will not actually start. Does this help?

Are you sure that the belts are fully extended? Like do you see the message “All belts extended”?

I added better messages for what the machine is doing to the firmware and they should be in the next update

Yes. I have tried to rung calibration a few times. The belts are fully extended. No, there is no message that they are fully extended. When I move from EXTEND ALL to CALIBRATE, the following output is displayed in the console

[MSG:INFO: Requesting state change from 1 to 2]
Extend All
[MSG:INFO: Extending all belts]
[MSG:INFO: Requesting state change from 2 to 3]
Calibrate
[MSG:INFO: Requesting state change from 3 to 6]

When I was first trying this, every time I would run RETRACT ALL, my offsets were very small. Now, when I run RETRACT ALL, I am getting large offsets. Is there something wrong with my build?

[MSG:INFO: Retracting all belts]
[MSG:INFO: Requesting state change from 3 to 1]
[MSG:INFO: Top Right pulled tight with offset 7.569]
[MSG:INFO: Bottom Left pulled tight with offset -4.370]
[MSG:INFO: Bottom Right pulled tight with offset -59.499]
[MSG:INFO: Top Left pulled tight with offset 60.186]
[MSG:INFO: Requesting state change from 1 to 2]

Additionally, since I can’t calibrate the machine, I am trying to play with the controls to see what I can/can’t do.

I have the ability to move the Z-axis up and down. If I use the X/Y commands, the machine is sent a Jog command. The fan starts and it seems to think it moved to a location. On the Maslow web portal, the X/Y location of the sled changes. However, no belts extend or retract. It’s almost like each motor step is calibrated to be 0.00mm of movement.

When the machine switches to State 6 [Calibration], I can see on the “Commands” console that something is being sent. For some reason, each command sent appears on the same line as the previous command so I have to scroll VERY far right. Running that output through Notepad++ to format it, it appears to just be repeating the following.

<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0|WCO:0.000,0.000,-11.000>
<Home|MPos:0.000,0.000,-11.000|FS:0,0|Ov:100,100,100>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0>
<Home|MPos:0.000,0.000,-11.000|FS:0,0|WCO:0.000,0.000,-11.000>
<Home|MPos:0.000,0.000,-11.000|FS:0,0|Ov:100,100,100>

Is it being sent a “Home” command over and over?

As I understand it, if the belts are not fully extended, the Maslow 4 has no idea where it is and will not move. (To be fair, I have not operated my Maslow 4 in a couple of months, so I don’t remember what messaging it provides)

On “Extend all,” it will spool out a specific length of belt. It needs our help to do so, which is why for each belt (once we get the belt started), we maintain light tension by hand until the motor stops. Once the belts are extended to the length the Maslow 4 has specified, everything after that—whether calibration or applying tension—is in relation to that.

1 Like

I am extending the belts fully.

I am using bolts on a concrete floor. The bolts are spaced 8’ x 12’ apart. When centered, the belts need to extend about 81". I set the “extend dist” in the config to 2150 which is just over 7’. I use retract all to pull the belts into the machine. Then extend all and I pull out all the belts until they stop which is a little over 7’ of belt. Then I hit calibrate.

At no point do I get a message that the belts are fully extended.

When I did the retract all, I got the following message when they retracted.

[MSG:INFO: Top Left pulled tight with offset 0.000]
[MSG:INFO: Top Right pulled tight with offset -0.011]
[MSG:INFO: Bottom Right pulled tight with offset 0.000]
[MSG:INFO: Bottom Left pulled tight with offset -1.439]

Is there something wrong with my encoders/magnets that the machine is not seeing something and does not consider the belts extended. I would think all the encoders are working since it lets out the correct amount of belt for all 4 belts

Dan Strassberg wrote:

[MSG:INFO: Top Right pulled tight with offset 7.569]
[MSG:INFO: Bottom Left pulled tight with offset -4.370]
[MSG:INFO: Bottom Right pulled tight with offset -59.499]
[MSG:INFO: Top Left pulled tight with offset 60.186]

If this was an extend/retract cycle after a prior retraction, then this
indicates a problem. Either your magnets are not glued in solidly enough or you
assembled the arms with the magnet in the wrong place (it needs to be next to
the chip on the encoder board)

Even the >1mm error you show in the later retraction is enough to worry me.
These should be well < 1mm

David Lang

1 Like

Is there a way to test each encoder individually to see if one is not getting the proper feedback? I’d hate to spend the time pulling the whole thing apart to learn that the magnets/encoders are fine.

FYI, I think messed up when I got those large numbers on the retract. I had done an extend all with the belts already retracted to the bolts (so extended 7’). This caused the belts to extend their full length This seems to have thrown things off. When I retracted the belts all the way into the machine, that is when I got the smaller numbers