Waiting after move forward command, VEXcode IQ Blocks

I have:

Win 8.1
VEXcode IQ Blocks
Robot Brain 2.1.3

I have made a simple program to move forward for 60 mm, then turn right by 88 degrees, and finally move forward 240 mm more.

The problem is after it moves forward for 60 mm, it then waits for about 1 second before turning.
The arrow to the right of the move forward block says “and don’t wait”. I tried this as well, but it still waits.

Any idea for such a basic program?

Thanks!

Do you have a picture of your code?
I do edr, but since its blocks I might be able to help

1 Like

2019

Here is the picture of the code.

More info:
Same results with multiple robots all 2.1.3.
Win 10, Win 8.1 PC’s

Prior to that first block, if you set the speed to full, do you see the same result?

Many moons ago, Modkit had a similar issue and
I think it was something to do with the motor encoders never completely arriving at their target. The delay you are seeing might be a timeout. By setting the speed faster, a bit of momentum might get that extra tick on the encoders.

I seem to recall ROBOTC not having this issue due to the VM handling motors in a different way.

Will do some tests myself later.

Yes,

set velocity to 100%

Same issue. only on the first drive forward command. The second one in my line of code works perfectly.

Yeah, I am seeing the same, Even with the timeout turned to 0.1 seconds.

@tfriez why would you get a 1 second pause after the forward 60mm but only if that is the first drive block in the program? For example, this snippet does not give the same behavior:

drive_snippet

Thanks!

is a gyro being used for turns ? Or just motor encoders ?

Gyro James. You don’t see that first pause when using encoders.

Ok, then my guess is that gyro is still calibrating and that causes the pause before the turn. If that is the case then the turn is also probably not accurate as gyro would have been calibrating during the move.

1 Like

There’s a 2 second “pause” at the beginning of a Drivetrain program to allow the gyro to calibrate… there may be a bug in the code generation as James implied that is causing the delay before the turn.

I’ll give a deeper look into it today and see what the root cause might be… either way, the behavior you’re seeing is not intended.

2 Likes

Discovered the issue… there’s no forced wait at the beginning of a drivetrain project to wait until the calibration is completed - but, the “turn for degrees” command has a low level check to not to begin a turn until after calibration is completed.

The quick fix is to throw a 2 second delay at the beginning of your program - and the next update in a few weeks will resolve this issue by handling the “wait until done calibrating” at the beginning of the code.

3 Likes

Ha. I tried a one second wait, not enough.
Thanks for the update.

Hello tfriez,

Thank you very much for the workaround which has resolved my issue!
I am looking forward to the update.

Best Regards!

1 Like