V5 Brain "bad port" question

Newbie here, with what might be a couple of simple questions, but not simple to us…

TO START: I have a V5 brain that can’t seem to make up it’s mind whether or not the smart port is dead or not. We’re a young, inexperienced middle school crew that has build the current “Hero” robot published by VEX, which is supposed to run on the pre-installed clawbot code.

As built, there is an arm-lift motor that connects to port #3 on the brain. When we finished the build, we tested everything, with the following results:

  1. Everything worked, but the lift arm motor would not stop when the control buttons (the two in front of the left joystick) were released. We had to turn the brain off to get the motor to stop pulling. This happened both when raising and lowering the arm. This happened every time we tried to test that motor.

  2. After three or four repetitions of this, the arm lift stopped working. When I checked the motor, the LED in the port was blinking very slowly - one quick flash about every second or so. I looked that up online, and it seems that this is the signal that the motor is getting power, but no commands from the brain - general consensus seems to be that this means that the port has burned out.

  3. Later that evening, I decided to test everything else (and to just play around with the robot), and lo and behold, it was working again - albeit with the same “sticking” problem. I decided to swap the ports between the arm and the accumulator (claw, on the clawbot) to try to figure out if the problem was in the controller, the brain, or possibly the motor - and suddenly everything worked exactly as it was supposed to, just on different control buttons. No more “sticking”, everything worked - for about five minutes, then that port #3 went out again. There have been a couple more times where it has worked, very briefly, then started that slow blink again.

TWO QUESTIONS:

  1. WHAT is going on with that port on that brain, and what should I do about it?

  2. HOW do I re-configure things so that I can just plug that motor into port #4, and have the buttons on the controller talk to 4 instead of 3? I’m sure that there has to be a quick, easy way to do this, but I can’t seen to find anything online to tell me how to do it.

Thanks!!

Floyd Stegall
Osceola STEM Academy
Osceola, AR

1 Like

Hard to say if the port is dead or not, check for any damaged pins in the port and perhaps try another cable.

Default drive program has buttons mapped to specific motor ports, here are your choices.
(note, vexos 1.0.12 and earlier will incorrectly show motors 6 and 7 swapped as compared to this screen shot which comes from 1.0.13, below is correct mapping).
v5_controller_1
and if you are using a second controller
v5_controller_2

7 Likes

Damaged pins in the port - hadn’t thought of that, I’ll check when I get back on campus next week. We had already tried swapping out the cable, made no difference at all.

I take it then that, with the pre-installed drive program, there is no way to re-assign the controllers and the ports. Is there possibly somewhere a copy of that code (preferably in V5 Blocks - we’re raw beginners in writing code, this is only my second year teaching this stuff, and my PLTW training was in RobotC - which I struggled with horribly) that I could download and tweak for myself? I have seen RobotC clawbot code for the Cortex clawbot posted in several places online, but as of yet cannot find V5 Clawbot code, either in blocks or text. I suppose we COULD write entirely new code if necessary, but as I teach my pre-engineering students - one of the first precepts of engineering is “don’t reinvent the wheel if you don’t have to”.

The saving grace for me is that funding was recently approved to upgrade my PLTW Automation and Robotics class equipment to go with the new V5-based curriculum coming out next year, so I’ve got 24 V5 System Bundles on the way, should have them in the middle of January, so I’ll eventually just swap this brain out for a brand new one - but I DO need to figure out how to deal with this in my current situation, because I might find myself facing a similar situation in a competition setting.

Thanks!!

FS

The internal drive program is not available, it was written before the VEXcode API was developed and uses a lower level programming API than we make public. It also controls many more motors than you need, as well as implementing limit switches and things like that. There are templates and examples for the clawbot included with VEXcode, you can probably modify one of those. It has been on my todo list to perhaps provide some more comprehensive basic drive code, but we are trying to get the students to write this themselves and not just copy/paste something an adult created so I have to be careful how complete it would be.

3 Likes

I understand a desire to get students coding robots on their own, but there needs to be a version of the stock code that is available for download. Robots get used by different groups all of the time and taking them back to stock in between just makes sense. On top of this I don’t understand why VEX does not have the ability to swap ports live on the cortex, especially given the fact that ports getting fried is an obvious problem. I have 30 V5’s and more than 10 of them have lost port 3, port 8 or both. When a student finishes building their robot and discovers it doesn’t work it is very disheartening for them to not be able to enjoy the fruits of their labor. Claiming you don’t want the code available because you want students to write it completely disregards that there are situations where this isn’t an option, like when my high school students take the robots to show the elementary students what they built. Are the ports burning out all of the time going to being considered a feature instead of a flaw from now on?

2 Likes

Well, I did release something similar to builtin drive code over a year ago.

3 Likes