I need help, my knowledge is outdated...

I have been out of the FIRST programming scene for a year and things have moved on :ahh:

I’d appreciate if you could answer these questions so I can get up to speed on some issues were having.

I will be referring to these quotes in my question:

NOTE: To Compile 2004, 2005 or 2006 code, use MPLAB ver 7.20 and C18 Compiler ver 2.40 (newer versions can not be used)


Notice: The new FRC Robot Controller is not compatible with pre-2004 Operator Interfaces. The Operator Interfaces is also not compatible with pre-2004 Robot Controllers.

My questions:

  1. Is the 2006 RC compatible with 2007 code?
  2. is the 2007 code compatible with the latest c18 (i.e. newer than 2.4) and mplab (i.e. newer than 7.2) ?
  3. should I insist on installing to the default C drive? will switching drives cause problems?
  4. Basicly if I can use the 2007 code on a 2006 RC, what versions should I install?

That’s It for now but i’m sure i’ll have more later…


  1. Yes, code written for 2006 will work on a 2007 controller.

  2. No, 2007 code won’t work with a newer compiler. Or, atleast, results are not guaranteed.

  3. Any drive should work, as long as your file names are under 64 characters.

  4. See above. The 2007 RC was largely identical to the 2006 RC from a programming standpoint. There were some changes to the master code and a few other glitches per usual, but the overal code structure and programming process hasn’t changed much since the big switch from 2003 to 2004. 2004 to 2005 was a small change, and everything’s been the same since then, basically.

  1. Yes
  2. No
  3. Maybe. It shouldn’t matter as long as you don’t have Hebrew characters (or any other non-English characters) in the folder path or have a pathname more than 64 characters long.
  4. I’m not sure what you mean here, could you clarify?

EDIT: Darn, beat to the punch. I guess I’ll leave my post here in case someone has issues with Hebrew pathnames.

Thanks :slight_smile:

what I meant by question 4 was: “if I want to use the 2007 code, which versions should I use of mplab and c18? (i.e. 7.2 and 2.4 accordingly?)”

also, I can find mplab 7.2 but c18 2.4 is nowhere to be found (i only found an upgrade package…)

does anyone have a link to c18 2.4? thanks!


Ok I found the compiler on an old disk I had around here (in the old robovasion kit).

but let’s say for future reference, how can someone get the old 2.4 version of c18?

can I upload it and link to it or is that illegal (I imagine it would be, but just checking…)


Yes, uploading the full version of C18 is illegal. There’s a 60-day Student Edition trial version that’s available here however. The only trick is that after 60 days, it loses access to the extended instruction set features and some other optimizations.

so what we got from FIRST is the full edition with all the “bells & whistles” ?

You need to order the following P/N from InnovationFIRST: C-BOT-COMPILER

You will find it listed on this page, cost $50.00

Hold on a second. My team is currently using the c18 compiler under wine, and we are using the config.py script to generate makefiles. Does this mean I need to keep the old versions of c18 installed so that we can update older bots? Or should I just re-write some parts of 2007 code? What about our 2006 code? Basically, we still have those robots (we use them at demos) and need to be able to modify their code. How do I do this?

If I am not mistaken the code itself is different from year to year, but C18 and Mplab have retained the same version: 2.4 and 7.2 respectively.

so for all the controllers you need the same version of mplab (7.2) and c18 (2.4).

However the code itself has changed as far as I know…

Please someone back me up/correct me here…


Yeah, the 2007 code is different than the 2006 code. However, IFI only officially supports MPLAB 7.2 and C18 2.4. I’ve tried higher MPLAB versions (up to 7.52 I think) and they work, although the project files are not backwards compatible with earlier versions. I haven’t tried any newer versions of C18 though.