ROBOTC 3.60 is released

V3.60 is released (finally), lets hope there are no bugs introduced since the beta.

Full changelog here.

Pretty solid changes in 3.6 version especially for debugging

This seems like a pretty big fix. Will autonomous programs restart in competition if the processor locks up ?

I wonder how often the processor would lock up in practice ?

Was the UART not usable in the past ?

Most of these updates do not seem to affect the core functionality of the cortex for teams going to VEX Worlds. I would imagine if you use the debugger quite often, then RobotC 3.6 is a must.

The watchdog should never fire under “normal” operation. It is set at 750mS (approx), the ROBOTC executive task has to fail for it to fire, infinite loops etc. will not cause any problems.

Almost never, if you access out of bounds memory (advanced pointer use) it can fire.

This was just a header file bug, all uarts were available before but they were defined incorrectly.
Actually this sounds like a different issue that I though was fixed in 3.51. Anyway, as far as I know all uarts are working correctly.

The big improvement in my mind is improved operation with IMEs. See my post here.

A lot of time and effort went into improving the I2C, it is much more tolerant (although not perfect) to ESD and cable disturbance events.

I need to test the release version but (as far as I have been able to test) the preview I have been using is good and I would recommend everyone upgrade.

Well I’m very happy to see an official release. And I have many thanks for James in the testing and resolution of issues in the previous releases.
I don’t see a change log entry for the PIC variable memory allocation problem I ran into, but I’m sure it made it in. I’m looking forward to running the new version vs the Beta’s


I don’t test anything on the PIC, what was the problem ?

There was a problem with how many bytes of RAM were allocated for variables, they used to count 16 bit bytes then shifted to 8 bit byte counting but did not double the overall count. I found it while working the serial code and defining buffers, as I added a few more bytes to my data structure Things stopped working so well - specifically I stopped getting updates from one of the encoders) it looked to me like a memory allocation problem so I sent in a bug report. I could reliably reproduce the problem and CMU sent a link to a beta a few days later which resolved the problem. This was back in December, so I’m sure it’s included. I just need to find my test case and verify.

Cheers Kb

Adding to my to do list…

**For April 22!! ** (April 21 is a travel day) :slight_smile:

to do:

  • Download upgrade

  • install new robotc version.

  • plow through normal upgrade issues, drivers, and typical firmware downloads

  • try it again…

  • Make sure club members upgrade too. Find licenses…

  • then try the I2C daisy chain of tvs diodes I have been meaning to… pick up 8-10 sacks, crash into wall, watch it reboot, wait, wait for gyro reset, re-point north, reset gyro 0 value… repeat.