Firmware build process

From RepRap
Revision as of 17:37, 7 January 2006 by SimonMcAuliffe (talk) (version migrated from twiki)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

RepRap Firmware Build Process

  • Check out the latest code from CVS.
  • The firmware code is located in reprap/firmware
  • Issue a "make" at the top level
  • If this is the first build, a local instance of sdcc will be built first. This is to ensure compatibility with sdcc.
  • After the build is complete, the output files will be stored in the build subdirectory in a further subdirectory named by the processor the firmware is for. By default this is 16f628.
  • The following will be built in separate subdirectories of the processor build directory.
    • stepmotor A generic stepper motor controller on address 2. For RepRap this is the X axis.
    • stepmotorb A generic stepper motor controller, identical to stepmotor but using address 3. For RepRap, this is the Y axis.
    • stepmotorc A generic stepper motor controller, identical to stepmotor but using address 4. For RepRap, this is the Z axis.
    • stepmotor-small A generic stepper motor controller that has a smaller memory footprint. Not all features are supported and this is not currently planned for use in RepRap.
    • motor A generic DC motor controller using address 5. Not currently planned for use in RepRap.
    • extruder A reprap extruder controller that integrates DC motor functionality with PWM temperature control. It uses address 5.

Building for a different processor

To build for a different processor than the default 16f628, use the PROCESSOR environment variable, eg

PROCESSOR=16f627 make

Building only specific devices

To build only specific devices, use the DEVICES environment variable, eg

DEVICES=stepmotor-small make

Similarly, to build a particular device for a different processor:

DEVICES=stepmotor-small PROCESSOR=16f627 make

Note: Most code uses some processor specific hardware and may not work correctly on any given device



-- Main.SimonMcAuliffe - 07 Jan 2006