We have a few VEXnet keys from our Cortex laying around and we would like to test them. At worlds the support told us that they were bad, but is there any way to test them to see if they’re bad?
we had the same issue on wensday, lucky we got a new set of keys before competition started. He said that if they are in any way bent, or scratched at the tip then just do not use them. It much better to use a new set for competition, cause they are only a couple bucks.
A new set is $80, I want your budget if that is “a couple bucks.” O_O but that aside, the obvious test is to put one you know is working into your controller, an unknown one into the robot, drive it into a few walls and run a few autonomous routines, if the jolts or heat don’t make you disconnect, then it is probably OK. Make sure you mark it though, so if it does play up, you know not to use it again. (maybe also try downloading code to it a few times, because I have noticed that as keys deteriorate, it takes more and more trys.)
At worlds, they had a Linux utility to test the keys. I asked them if they would make it publicly available to the community. They seemed very hesitant about the issue.
In one of our matches, it was determined that a faulty key (6% error rate) dropped the packet that starts driver control. unfortunately, we could not get a replay as it was ruled that vexnet keys are like motors, and just as a match would not be replayed for a bad motor, they are not replayed for bad keys.
I disagree with that ruling on the grounds that I can test a motor myself but not a vexnet key. Thus if teams are held accountable for the quality of keys, the least vex can do is allow us to test them
//end rant
So there is nothing special about the VEXnet USB key. It is based on the Ralink RT2571WF (sometimes called RT73) chipset which was one of the most common when 802.11g 54Mbps WiFi was the norm. There are drivers for PC, OSX and Linux available. I can plug one into my Mac and it is visible under the system profiler. The drivers for linux are open source so perhaps VEX has a utility that can check internal registers or something like that. There are also some fairly well known linux wifi “applications” that work well with this adapter, perhaps you could use one of those.
Although I’m sure your key was to blame, the wifi comms does not work that way, pretty much every packet has the competition state as part of the payload.
I don’t know exactly what goes wrong with the keys, my suspicion is that it’s an intermittent connection under the main BGA caused by mechanical stress on the USB connector or perhaps thermal stress. Our team has a couple that are bad, sometimes they work, sometimes not.
I have tried to find a replacement based on the same chipset, they used to be ubiquitous but are now very hard to find. Adapters such as the TP-LINK TL-WN321G used to use them but have now use different parts even though they have the same product code. A shame as these older keys are only about $10.
Maybe using a short USB Extender Cable to move the VEXnet Key away from the Cortex would help reduce the Mechanical Stress.
I’m not sure if that’s completely legal?
We had a really annoying issue with our keys during the competition. Everytime we shook the robot, the connection would reset, yet there was apparently nothing wrong with the keys.
I don’t get why VEX has to use wifi. Can’t they register at the FCC for their own small spectrum…? It would make everything so much easier. Wifi interference is a b****.
Using a USB extension is perfectly legal as long as you follow the rules in the manual (you can’t have any metal 2" above the key). USB extensions are useful if your cortex is surrounded by metal so that you can move it to a place with less interference.
I think when you shook your robot, it wasn’t the wifi connection but the battery connection. Numerous teams have had problem with the cortex battery slot because after time the connection between the battery gets loose. If you look in the battery in your cortex and it is not mostly circular, you should use a precision screw driver to bend it back into a more circular shape.
Lastly, wifi is more widespread used and proven to be safe. I think it would cost a lot of money to register a new wavelength specifically for the VEX competition. It’s a bunch of trouble to not use wifi at worlds, but there are always phones (for US people) and free wifi if you had it at your hotel.
I’d be interested in a VExnet key tester diagnostic tool. Or maybe it could be built into the connection tests already in robot C?
Mechanical stress under vibration and crashes is most likely the cause of early demise. Doing the test on a virbating table might shake loose that solder a bit quicker and simulate a robot event and the bumps and crashes you’ll have. A simple “smack” test might give you the results of it being too loose as well. Tweaking your finger on the key can simulate this too. It may be good in steady state but under competition conditions it could be dropping more due to vibrations or current in the wires.
Which brings us to the second item - your design may be interfering with the wi-fi as well. Once our kids moved the key to outside the nice Farraday cage of a robot they built it seemed to help quite a bit. Since you can control the connections to the key better with a USB extender, I highly recommend this. A few amps in those wires you snake right along the wi-fi key just can’t be good in my mind. I have not tested anything but just thinking about it makes me wonder about the interference from motor wire current.
See the following post of the USB extender on our kids one robot. Other robots on the team had success with this as well. In between the tower c-channels is a popular spot for the wi-fi key.
https://vexforum.com/showpost.php?p=276940&postcount=6
The other trick for a somewhat loose/bad key is to swap that one on the joystick and switch them up to wear out the other key. Using a thumb screw on the joystick allows for a tighter connection for the USB key so it does not shake loose.
So before you get another expensive set of Vexnet keys try the following:
-
Do the USB extension outside your metal cage. You have more options to secure the key to the cable here. Places like Amazon have USB extender cables real cheap.
-
Swap the USB keys from robot-joystick to see if it improves
-
Test for vibrations or loose solder on the key via whatever means necessary
-
Open up the Cortex and see if that solder is loose (ours looked solid). It’s harder to tell if the connector is out of connection though.
Has anybody collected accelerometer data from robots during competition? Seems like characterizing the shock load under competition conditions would be instructive to designing such a test.
Cheers,
- Dean