Master firmware V4.25

I went off on a small rant last night prompted by Robomatter releasing a new version of ROBOTC only a week after the last version. Digging into why they had released this it seems the new master firmware that VEX had released the day before was the primary reason. Due to the lack of information as to why we have more master firmware I decided to do a little investigation, the only clue, although really quite descriptive, is the update notes on the wiki.

So what does this mean.

In this post (as well as others) I have described the three different groups of channels the VEXnet radios can select from. The implication of the update note is that the system is not correctly selecting a competition channel under certain conditions, so I decided that needed testing.

The simple test was, turn on the cortex and joystick, note the pit channel used, plug in a field controller and see if the channel changed correctly to a competition channel. To be honest I wasn’t really expecting to see any problems, however, only a few attempts were needed to show that sometimes a competition channel was not chosen correctly. There did seem to be an attempt to select one but the system reverted back to a pit channel after a few seconds of not being able to connect.

Now to prove that the update works.

Initially I just updated the cortex and tested if it would still work with a V4.23 joystick. It does, although I would not recommend using it that way. I retested and the problem still exists so the cortex update alone is not enough. (examining the files shows that cortex V4.23 and V4.25 firmware differs very little).

I next updated the joystick to V4.25 and again retested. With the full system on V4.25 a competition channel seems to be selected correctly every time.

So my conclusion is that at small competitions you would’t really notice any difference, there are few (<60) robots running and plenty of channel space available. The bug has been around since October and I haven’t heard any complaints. For anyone going to worlds I see this as a critical update that needs to be performed.

You may be wondering how I determine the channel used when performing these tests. That’s accomplished by one of my little side projects that, unfortunately, I will/can never release to the community. A VEXnet 2.0 channel scanner.

Edit:
I also did the test with the old V4.22 and it seems to work correctly (very short test through). Looks like the bug was introduced in 4.23. Probably one reason I never noticed as I left the team on 4.22 all season and only upgraded one of mine that never gets used for competition.

I should also add that these tests were done with a single cortex/joystick pair, behavior may be slightly different when other controllers in the vacinity choose a channel correctly, no way to test that here at home.

1 Like

Could this issue be what is happening in this Thread?
And could this also cause a robot to not run autonomous once the 15 seconds begins, instead running the opcontrol code? (we had this happen a couple of times last competition).

This (along with all the other stuff you put out: convex, PID analysis, many PTC and Interrupt analysis, etc…) is incredible. Is VEX a full time job for you, or are you merely extra-humanly brilliant?

I would say not.

To be clear, my opinion is that this bug would have had no impact on a normal small competition.

Sometimes the field controller just “goes wrong”, it’s most likely a problem with the PC running tournament manager or a cable issue.

No VEX is not my day job. Yes I do spend a more than average amount of time posting about VEX related issues. I find it fun, I find the students involved with VEX incredible, I hope some of you decide to study engineering at college and become engineers in the future. That’s why I do this.

1 Like