Full event list
FIRST® Things FirstWhat is FIRST?
FIRST Official Site
FIRST in the News
FRC® Game Details
FRC® Game Animations
MultimediaFIRST Promo Videos
FIRST News Segments
Team 358 Photos & Videos
Team ResourcesStart a Team
Technical ResourcesControl System
General ResourcesOffsite Resources
Long Island Teams
FIRST® Robotics Competition (FRC®)
Guide to 2005 FIRST Supplied Code
2005 was a somewhat confusing year for software. Teams had many more choices than were available in past competitions. A team could use what they competed with last year and refine it, or they could start fresh and choose from among no fewer than three conflicting default programs released by FIRST. Only one of which is useable "out-of-the-box." The primary difficulty is if teams attempt to use the wonderful capabilities of them all, because it just will not all fit into the limited RC program memory without very serious software engineering. You will have to pick and choose the code that is most important to you.
Default Programs for the Full-sized Robot Controller
Latest releases are available at IFI Robotics
2005 RC User Default Code ver2.2 (, 1-12-2005) No camera code, works with compiler that came in FIRST kit. This is the basic default code from FIRST that teams are used to. All the basics are here with marked places to add team specific code. This code is ready to use "as-is" right out of the figurative box.
2005 RC User Default Code ver2.4 (, 1-12-2005), with camera code - works only with C18 Compiler (ver 2.4) from Microchip. This default version is dedicated to using the CMU color finding camera delivered with the KOP this year. The code is not ready to use "as-is," but is not difficult to make competition playable as long as you take time to read and understand it. The code unfortunately is setup as demonstration software where the driver pushes a joystick button to demonstrate searching for the primarly 2005 game colors. Modifications are necessary to eliminate the "freeze" on no camera signal, incorporate into the autonomous sections of the default code, and tune for the team's particular drive train and camera mount.
2005 FIRST Robotics Competition Supple mental Robot Code () Demonstrated at the Kickoff by Dave Lavery (see also an updated version below by Kevin Watson). This code uses integrated shaft encoders and a gyro to navigate a course according to a "scripted" set of commands. Also not useable "as-is," because the regular driver code has been removed, although it's a simple matter to add that capability back in. This code must be tuned for the particular encoders and gyro used and for how any particular robot behaves. The particular gyro used in the kickoff demonstration is not FIRST legal due to the cost, but there are several legal substitutes A later version of this code is published by Kevin Watson of NASA at navigation_frc2005_01_22.zip () with updated gyro code, additional documentation and data sheets for compatible encoders and gyros.
Useful Code Examples
Code samples for the budding robotics programmer are available from Kevin Watson of NASA. Versions of these examples are available for both the full-sized robot and the EDU/Robovation controllers. Latest releases are available at Kevin Watson.
- frc_gyro.zip () Example driver and supporting software that can be used to interface a variety of inexpensive gyros to the IFI FRC robot controller.
- frc_encoder.zip () Example driver and supporting software that can be used to interface two quadrature output optical encoders to the IFI FRC robot controller.
- frc_accelerometer.zip () Example driver and supporting software that can be used to interface a Texas Instruments accelerometer to the IFI FRC robot controller.
- frc_interrupts.zip () Heavily annotated template interrupt and timer code for the IFI FRC robot controller.
- edu_clock 2.zip () Although for the EDU this example code creates a real-time clock that can be easily modified to create sophisticated sequencers and state machines. The clock code itself is directly applicable to the FRC.
Support Software, Utilities, and Applications
- IFI_Loader v1.0.10 (, 11-17-2004) Required to download the code generated by MPLAB (& the compiler) to the RC.
- MPLAB v7.0 -- Windows based development environment (edit, compile, debug) that runs on your desktop computer. An older version is distributed by FIRST through a CD in the KOP.
- mcc18 v2.4 compiler -- the latest compiler v2.4 must be obtained through FIRST as it is a special pre-release from Microchip. An older version distributed by FIRST on a CD in the KOP is not compatable with the CMU camera, but is otherwise fine for programming the RC.
- Device Reader (, 2-1-2005) For reading and restoring Code in a RC (can not modify the code), instructions included. This will suck the code already loaded into a RC out and store it so it can be downloaded again. It is only useful in preserving some past state of the robot code in case the original code is lost or misplaced.
- 2005 RC Master Code version 10 (, 1-10-2005), "How To" instructions included V2.2. Think of this as an operating system "patch." It is the code run by the Master Controller within the RC to control the competition match.
- Dashboard Viewer 2005 (, includes specification Doc) This is a PC application that runs on a PC connected to the dashboard port on the OI. It displays the data sent by the OI to the RC (joystick and button positions), as well as the I/O data generated by the RC for PWMs, digital outputs, and several bytes of user selected data.
- Getting Started (, 4.65 Mb, 1-18-2005) This is a complete package of CMU camera support software and documentation to get the camera running, calibrated, and tested from a PC.
- FRC DDT Code v2.2/v2.4 (, 1-25-2005) for use with the IFI Loader Dynamic Debug Tool only, instructions included. This software is used as a debugging tool to analyze problems with the I/O ports on the FRC and can be used to follow and step through the execution of the program running on the FRC. It is most immediately useful for testing the TTL port used with the CMU camera to make sure the TTL port is working properly.
Get Microsoft Excel Viewer
Get Microsoft PowerPoint Viewer