Competition Port

Hi.

Over the summer, I build a Field Control System to control the matches in our custom tournament, and I used relays to control enable/disable and autonomous/teleop. Since we are switching to a FCS, some of the teams don’t know how to test their autonomous. I was thinking about building some little dongles, and I had a question.

Can you short out enable/disable or autonomous/teleop with transistors, or does it have to be something like a relay or a switch?

For those who want to take a look at the schematic of the Competition Test Switch, here is the link: http://content.vexrobotics.com/docs/VEXnet%20Comp%20Sw%20Diagram.pdf

Thanks.

Any reason you can’t use the official competition switch? http://www.vexrobotics.com/276-2335.html

It’s only 20$ and you can run mock tournaments with 4 teams (if you buy 3 more ethernet cables - it only comes with 1)

If it was 50$ I could understand making your own but I think the investment is worth it here just to get the real thing.

It’s only 20$ and you can run mock tournaments with 4 teams (if you buy 3 more ethernet cables - it only comes with 1)

If it was 50$ I could understand making your own but I think the investment is worth it here just to get the real thing.

We actually have one of those. The FCS we build is computer controlled, and we wrote custom HTML and Javascript files to time and control the robots. The circuits are a custom Arduino shield with some relays. The relays have wires connected to two phone jacks to make things modular, and at either end of the field are the RJ45 jacks for the controllers.

What we built is more like this, but for ~$50: http://www.vexrobotics.com/vex/products/competition-products/vrc-products/275-1401.html

So back to the dongle idea; Does anyone know if I can short out ground and mode with a transistor, or do I have to use a relay or a switch?

You should be able to use a transistor, or better, an opto isolator with the output powered with the 5V from the joystick. I’m not going to give you a circuit as liability for damage needs to be yours.

I’ll provide an answer in a few days since I also require this information but can’t it analyze immediately sorry.

Awesome. Is there a place to get 5 volts from other than the vexnet port? Programming is the only one I can think of. Data sheet on that anyone?

Edit: Found the ports. Looks like you can use 5v from the programming port. Link: https://vexforum.com/t/vexnet-joystick-port-pinouts/18086/1

Watch you don’t source too much current from the 5V output. It’s likely to be fed from an internal regulator (linear I guess) which will potentially overheat and/or shutdown. If the joystick is running on 9V from 1.5V AAA cells this problem will be worse.
In that link 1A was noted but this applied to an entirely different piece of hardware so ignore that figure. How much current are you planning on drawing?

I am guessing on this, but the joystick is 5v. I would think the first power conversion is from the 9v to 5v, to supply everything, which includes the VEXnet, the joystick, and anything else. I have a good feeling that since the VEXnet keys run on wifi, they take quite a bit of power, the joystick probably takes as much as an Arduino, so that leaves me with how much current left in the equation?

I was thinking of designing something with a 4 digit 7 segment display, a couple led’s, a Atmega328, and the transistors for enabled/disable and mode. Probably the most mA would be the segment display.

Not sure there is any power on the competition port, schematic does not show it but I need to check with a meter, I did this before but forget the results right now.

http://content.vexrobotics.com/docs/VEXnet%20Comp%20Sw%20Diagram.pdf

Power in the joystick is from a 2.5A switching reg if I remember correctly, same as the one in the cortex. It probably uses 500mA when running with WiFI so plenty to spare, you only need a few mA for opto isolators or transistors.

I am pretty sure there is only power on the programming port, so RJ11 should do, just which orientation is the wiki describing the pins as. I would have to meter it when I get the chance to make sure.

It may be worth reading this old post as it discusses a similar project. The comments about the match timer I don’t think apply now, but the hardware I discuss does have some GPIO ports that may (emphasis on may) be able to be adapted.

https://vexforum.com/showpost.php?p=239431&postcount=1

I didn’t see anything there about the ports, but I did enjoy looking at how VEX made their FCS software. I might use some of those when creating my software.

I don’t know if these exist, but would a solid state relay work? I could just use a regular relay as well.

I took a look at the competition socket front end circuitry and yes you can use a transistor to pull these lines low. Open circuit it’s at 2.3V and short circuit is 57uA so my guess is these end up on microcontroller pins with the internal (weak) pull up enabled. There are a total of 6 input lines some with 330R and some 1k series resistors which suggests something is different further on.

Competition port pin out
1 - GND
2 - Driver/Auto (330R)
3 - Enable/Disable (1k)
4 - GND
5 - ?? (330R)
6 - ?? (330R)
7 - ?? connect this to GND (1k)
8 - ?? (1k)

I suspect some of the ?? pins are used to select radio channels and maybe further analysis with a field controller would reveal more. Perhaps another day. From the image in post DIY Field Controller it seems the competition port can also be actively driven and probably at 5V given the field controller board is powered via USB and there’s no sign of any voltage regulators. Most microcontroller pins are 5V tolerant but without doing some checks first I would be a little wary about wiring your AVR directly to the Competition Port but doubt there would be any chance of damage anyway.

There is no 5V supply available on this port so you’ll have to source that from the Programming port instead. If you’re going to use 7 segment displays make sure they’re low current high efficiency LEDs otherwise the total current consumption will quickly add up. Have fun and keep us posted about the project :cool:

5, 6 or 8 is the pin that is on if you are on a true competition field. This forces the cortex to use wifi channel 1. We needed a regular switch to force us on to channel 1 so we shorted the correct pin to the ground on a eithernet cable.

I will see what pin it was and post later today

Here’s another post with competition port info, I can’t find the subsequent post where we confirmed what was going on.

https://vexforum.com/showpost.php?p=277480&postcount=48

As you said, pin 7 confirms that a competition swith or field controller is connected, pin 6 (I think) was the pin that only the field controller grounds and changes WiFI to channel 1.

I had two 7 segment displays in mind:
From Sparkfun: https://www.sparkfun.com/products/11440
From Adafruit: http://www.adafruit.com/products/880

I don’t know which one draws less current, or if I should source a different model. I am thinking of going with the Sparkfun display, so we can order all the parts from one place.

Do I have to use a specific transistor, or will any transistor work?

In this case pretty much any low current NPN transistor would do fine. Gain is not a consideration since the Ic is so low.

Here is what we actually did for all of our VEX teams. We made them a simple switch:

https://vexforum.com/gallery/files/2/0/5/5/7/image1.jpg
https://vexforum.com/gallery/files/2/0/5/5/7/image2.jpg