I downloaded and installed RobotC v3.06, but now I'm having an issue with my robot. The motors don't move at all, even during autonomous and they're entirely loose. (meaning I can move them by hand) However, I've got a gyro outputting to a LCD during driver control, and it updates just like normal. I have updated firmware on both the joystick and Cortex. Here are the lights on the robot and joystick:Robot:ROBOT: Slow red blinkVEXNET: Fast green blinkGAME: Not lit

Can you share your entire program? I compiled, downloaded, and ran a blank program with your configuration above, but did not experience your results. I also downloaded and ran another basic program that just turned on a few motors and it also worked. I do not get the slow blinking red light:

Your Motors and Sensors Setup appears to be valid, but I'm having a hard time visualizing your physical robot.

Can you tell me how the motors/encoders on ports 1 and 10 are used? Do you really have every motor slot filled? (Trying to recreate your motor setup as much as possible).

Yeah, we have all 10 ports used up because this is a robot for VRC Gateway. The encoders in ports 1 and 10 are for a sliding lifter system, one on each side. I don't know if it'll make a difference, but we have one of the original Cortexes.Here's the rest of our code:

I know that there's a while loop that terminates after 30 seconds. After the 30 seconds is over, it still doesn't work. Also, we've been having this problem since before that was added.

I snipped a few functions, MoveForward, MoveBackward, TurnLeft, and TurnRight because I don't want to post them on the Internet. If the rest of the code isn't helpful, I'd rather email our code directly to you instead of posting it on the forum.

BTW, I'm getting the same slow red blink on the robot light even after downgrading to v.3.05 and upgrading back to v.3.06. I didn't have the same red blinking light with v.3.05.

Thank you very much for helping us with this.

EDIT: This seems to be a firmware problem because I downgraded to v.3.05 but the same problem and light pattern is there. I would manually download the latest firmware, but the IFI Firmware Update doesn't seem to work for me. It won't start at all.

Mon Feb 13, 2012 7:56 pm

jbflot

Site Admin

Joined: Tue May 15, 2007 9:02 amPosts: 409

Re: Updated to RobotC v 3.06, doesn't work anymore

Thanks for posting your code. I ran it using empty versions of the functions you took out, and haven't been able to duplicate the problem yet.

ROBOTC 3.04 uses Master Firmware 3.16. ROBOTC 3.05 and 3.06 both use Master Firmware 3.20. I'm looking to see if that might be the root of the problem...

I am curious about the bootloader version of your Cortex. If you can, please follow these steps:- Go to Window > Menu Level > and select "Super User"- Go to View > Preferences > Detailed Preferences...- On the Internal tab, select "Messages" under Message Tracing- With the Cortex connected to the computer (preferably over VEXnet), go to Robot > Advanced Tools > Software Inspection- Copy and Paste the data that ROBOTC Spits out in the Message Log, as follows:

I did most of the ROBOTC 3.06 development. I'm working with Innovation First on resolving this issue. What I've found so far:

I consistently get the failure of Robot LED flashing RED when I use 3.06. This error message indicates that the Master CPU and Slave CPU have failed to establish the internal SPI communications link that they use to transfer joystick and motor speed control with each other. I only get the error via Wi-Fi and not with tethered link. When this link is not operational, the Master CPU disable all motor operations.

When I load master and joystick firmware 3.16 but continue to run ROBOTC 3.06 Cortex firmware (i.e. version 9.10) the problem disappears. Unfortunately this option is unavailable to non-developers because 3.06 integrity check will not allow you to operate if Master and Joystick firmware are not 3.20; I was able to override this using my PC based development tools to create a modified version of 3.06.

Installing 3.20 firmware and problem re-appears. Going to back to 3.16 and its gone.

I'm working with IFI's firmware development on quickly resolving this issue. I'll post again when I have more news.

Tue Feb 14, 2012 7:36 pm

wrathofmobius

Rookie

Joined: Mon Jan 03, 2011 5:40 pmPosts: 12

Re: Updated to RobotC v 3.06, doesn't work anymore

OK. Would upgrading to a newer (or different) Cortex resolve the issue? This might also be a lot to ask, but would it be possible for us to use the modified version of RobotC?

Tue Feb 14, 2012 8:19 pm

Dick Swan

Creator

Joined: Fri Feb 09, 2007 9:21 amPosts: 616

Re: Updated to RobotC v 3.06, doesn't work anymore

wrathofmobius wrote:

OK. Would upgrading to a newer (or different) Cortex resolve the issue? This might also be a lot to ask, but would it be possible for us to use the modified version of RobotC?

A different Cortex is unlikely to resolve the issue.

I'll work with Jesse on getting a generally available resolution/update available this week.

Wed Feb 15, 2012 1:03 am

wrathofmobius

Rookie

Joined: Mon Jan 03, 2011 5:40 pmPosts: 12

Re: Updated to RobotC v 3.06, doesn't work anymore

OK. Is there a way to communicate directly with the I2C port so that we can at least use the integrated encoders for Saturday or is version 3.06 required?

Wed Feb 15, 2012 1:27 pm

Dick Swan

Creator

Joined: Fri Feb 09, 2007 9:21 amPosts: 616

Re: Updated to RobotC v 3.06, doesn't work anymore

wrathofmobius wrote:

OK. Is there a way to communicate directly with the I2C port so that we can at least use the integrated encoders for Saturday or is version 3.06 required?

Simple answer. No. User control of the I2C bus is not supported at present. It is being considered for inclusion in release this summer.

User control of the I2C bus for the encoders is a big task. It's not something that I would recommend for the average (or even highly skilled) user. You don't just simply start sending I2C messages to the encoders. They have to be properly initialized first. Which is made complex because on power up they all have the same address. So you have to enumerate the daisy chained encoders on the bus, individually isolate them from other devices on the bus and re-assign them a unique address. But before that you have to perform a lot of tricks to get the bus into a known state in case it is corruped which will happen whenver Cortex is reset (or user program is downloaded) while in the middle of polling I2C devices. The state machine to do the initialization is about 35 steps

Sat Feb 18, 2012 11:08 am

wrathofmobius

Rookie

Joined: Mon Jan 03, 2011 5:40 pmPosts: 12

Re: Updated to RobotC v 3.06, doesn't work anymore

Sounds like fun. We mounted the old encoders and they worked very well for event. Once you have a new version of the firmware, we'd be happy to test it.

Sun Feb 19, 2012 12:40 pm

jbflot

Site Admin

Joined: Tue May 15, 2007 9:02 amPosts: 409

Re: Updated to RobotC v 3.06, doesn't work anymore

Hi Everyone,

Sorry for the long delay inbetween posts. We wanted to be positive about the root of the problem before we started sharing information.

As it turns out, it takes a combination of old Cortex hardware and Master Firmware 3.20 for the problem to show up. If you look at the bottom of your VEX Cortex and see either "Rev NC" or "Rev NC1", this indicates that your Cortex is out-of-date. VEX will update it for free; contact them at support@vexrobotics.com or 903.453.0802

We'll also be releasing an updated version of ROBOTC with a new Master CPU Firmware and some of our own enhancements. We want to run the full gauntlet of testing before we push out another version, but I expect that we'll have something this week or early next week.

Who is online

Users browsing this forum: No registered users and 2 guests

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot post attachments in this forum