How to program Vex.

I’m making a project for my C.I.M. class in school. We’re making a programmable vex robotic vehicle and I just wanted to check and make sure that there was no specific software required to do the said action. :confused: If it matters, we are trying to make a 15’ figure 8 track that the car has to go around not using remotes. :smiley: Thanks. :o

You will need programming software to do this. You can purchase the software here. Also, you can try easy C or robot C trials. You will need software to match your hardware so if you have a pic or cortex make sure to use software applicable to them.

Once you have some kind of software programming system (as mentioned above), you’ll have to write the specific program to do what you want.

If you don’t have any feedback like line-follower or optical shaft rotation encoders, then all you can do is “timed driving”.

Timed driving is “open-loop” and therefore not very repeatable; your robot is likely to veer off to the side a little more every time you run it, as the battery wears down.

Thanks for the info guys. :D:D:D:D:D

Also, me and my partners were talking about using bumper switches. Just a few quick questions, how exactly do they work? Is there any programming involved? How does the car know how to go if there’s no controller being used? As you can probably tell, I’m a n00b. Thanks for any more help. :cool:

Hmmm. I guess my post from yesterday didn’t post. :frowning:
Ok, so we have the software and we are programming our cars now. Now my group was asking about bumber switches. How do you use them? How do they work? If you use them is there programming involved? If so, is the programming aspect SUPER involved?
Along with the bumper switches, my group was wondering the same about optical sensors.
Thanks in advance for any responces. :cool:

… we are programming our cars now. Now my group was asking about bumber switches. How do they work?
When your car crashes into a wall, the bumper switch sets off the airbag to protect your face from smashing into the steering wheel.
Oh, wait, Now that I read the rest of the thread, “car” probably refers to “a programmable vex robotic vehicle for my C.I.M. class in school”.

Well then, what programming system are you using? EasyC, RobotC?
There are example programs for bumper switches in both systems.

How do you use them?
Plug the bumper switch into a “digital input” port (check Config block to find or make an input port)

How do they work?
There is a pullup resistor on the signal input pin to make the default value 1.
The bumper switch shorts the signal to ground to make the value 0.

If you use them is there programming involved?
YES. EasyC can check status of button with GetDigitalIn( );

If so, is the programming aspect SUPER involved?
Oh YES! So you will be a SUPER programmer when you get it to work.

Here is a simple chunk of code you can add at the top of any existing EasyC program to make the robot wait to start until the start button (bumper switch) is pressed; this can be a useful safety feature.

  • while( condition ) {} keeps repeating while condition is true.
  • ‘0’ is not true.

//config  -- check to make sure the port (1) you use is set to input mode
while( GetDigitalIn(1) ) {   
 // nothing inside this loop, just wait and keep checking button
// remainder of program goes below here, usually starts with while(1){

Note that it is common for beginning CIM teachers to not understand this use for WHILE, since WHILE is most commonly used only as
while(1){ do whole program }

This guide has a step-by-step instructions on how to use bumper sensors, along with a few simple sample programs. It uses the PIC (old) controller and EasyC V2, but the Cortex (new) with EasyC V4 would behave similarly.

Sorry to go back to this AGAIN, and to bring up an old post again nonetheless. But me and my partner have just decided to use Line Followers as opposed to the earlier choices as Bumper Switches and such. Is there any way any of you guys can help me and my partner out with the programming aspect of this? I’ve heard it’s relatively simple, but I just want to be sure we can get this project done and move on in our class. :slight_smile: Thanks again.:D:D:D

I really hate bumping old threads, but my group ended up picking line followers. Now that we have everything hooked up and ready to go, we’re confused with the programming for them. Is there any way someone could send me a sample program file in EasyC Pro for a black line? Thanks in advance. :smiley:

If you search the forums, you will find several threads that discuss the use of line followers, including a few with complete & working solutions.

Here is an EasyC FAQ with two sample programs attached, one of which is the simplest line tracker code I’ve ever seen.

Here is an extensive thread on line trackers with several code examples included.

Here is another such thread I helped with a few years ago, and here is the EasyC source code that goes with it.


  • Dean