Wireless programming RobotC - Good? Bad? Ugly? Divine?

I’ve never let my kids use wireless programming (via joystick, etc.) and I’ve always been in fear of somehow bricking the Cortex with a bad download or doing something totally stupid. So I just wanted to get opinions on how well wireless programming works, if the latest updates work okay with it, if it ever results in corrupted code that runs on the robot despite whatever error checks are supposed to be in place, etc. Thanks. :slight_smile:

Aside from downloading firmware via cable, I’ve done all my “normal” programming exclusively via wireless and never had a problem.

The ability to download to and then debug a running robot is priceless.

The biggest downside to wireless programming is when you have multiple groups of students vying for the same practice field. Wired programming forces them to remove the bot from the field and give the other group a chance. Wireless allows/encourages them to leave the bot on the field and get in the way.

Terry

I have never had a long term issue (bricking). Occasionally it will disconnect but so far VEX 2.0 has been pretty good about this.

The convenience far outways the occasional disconnect and wireless downloading lets you run the debugger window to track variables in real time as well as sensor values.

1 thing to remember is it will download a tiny bit slower but plugging in the robot each time to download would take even longer.

Wireless downlading speed is one major factor I like about Robotc. For people like me who create like 30 user functions to organize codes, using easy c wireless download is a huge pain.

So far I just plug the controller into the computer beside the arena and do all of the programming without handling the robot. Very simple and convenient and I have not yet experienced any trouble with it. But I don’t know why I can’t make wireless download work on my teammate’s laptop…

Thanks to everyone for replying. I’ll let my kids try out the wireless programming and keep my fingers crossed. :eek:

Can someone provide a step by step guide of how to do wireless downloading? I have the age old Serial adapters from 2009 or so, and although they click in to my joystick and the VEXnet connection is present, I am unable to download anything. Is there any special software besides RobotC 4.27 and drivers for Windows 7 that I need to install. Am I supposed to press the button on the serial connector?

Please help.

I’m not sure, but will these two videos help you?

http://www.education.rec.ri.cmu.edu/products/teaching_robotc_cortex/setup/sample/download_sample_1/download_sample_1.html

http://www.education.rec.ri.cmu.edu/products/teaching_robotc_cortex/setup/sample/download_sample_2/download_sample_2.html

Just want to give another +1 to using the wireless programmer. I CANNOT STAND unplugging the cord a million times for programming and testing.

The wireless dongle works very well. Also the debugging is so much more useful with your robot is actually able to move because it isn’t hooked up to the computer physically.

I don’t understand your “bricking” comment either. I don’t see how this is possible. I don’t think you have to worry. You can always plug it in directly to the computer and reset things if you have to.

Some less robust systems may be “bricked” if the program upload is interrupted. However, the Cortex is fairly robust. I’ve interrupted (on purpose or by accident) the upload process many times in various stages of completion, and have never had a problem that wasn’t fixed by re-uploading the program.

One day before our first tournament last year, I had to update our firmware, etc. While downloading code, one of my kids pulled out the programming cable before the downloading was complete, and for a heart-stopping half an hour I could get neither the Cortex nor my laptop to respond anymore, despite multiple cyclings of power, reboots, etc. After a while, everything started responding again, but I have heard of other microprocessors becoming forever dead to the world (AKA “bricked”) when their firmware downloads get interrupted - so I’ve acted out of an abundance of caution (read: paranoia) ever since. :o

Now that we are doing so much more with autonomous programming, I feel it’s necessary to get over my anxieties and let them do the wireless programming thing.

Updating firmware is a critical operation and always requires a hardline connection. Bricking on an interrupted firmware update is a real risk for pretty much any kind of system.

Downloading user code is just a file transfer. If the user code file is corrupted in any way, it won’t run, but the Cortex firmware remains fully functional and will accept another download attempt without any trouble.

Terry

Ah, I understand. Just to point out, as terbos did above, a firmware update is a very different thing than a file transfer of robotc code to the robot. When you are using the wireless programmer I would assume you are just uploading new code to the robot, which if interrupted is not a problem. Just start the transfer again.

For actual firmware upgrades, definitely plug in using an actual USB cable.

The wireless programming has been working out great. I especially like the debugger windows so the kids can see their variables change.

Thanks to all for your encouragement. :slight_smile:

Debugger is probably the greatest thing ever invented.