config.default.h File Reference

Sample Configuration. More...

#include "arduino.h"

Go to the source code of this file.

Defines

#define HOST
 This is the motherboard, as opposed to the extruder.
#define STEPS_PER_M_X   320000
#define STEPS_PER_M_Y   320000
#define STEPS_PER_M_Z   320000
#define STEPS_PER_M_E   320000
 http://blog.arcol.hu/?p=157 may help with this one
#define MAXIMUM_FEEDRATE_X   200
 used for G0 rapid moves and as a cap for all other feedrates
#define MAXIMUM_FEEDRATE_Y   200
#define MAXIMUM_FEEDRATE_Z   100
#define MAXIMUM_FEEDRATE_E   200
#define SEARCH_FEEDRATE_X   50
 used when searching endstops and as default feedrate
#define SEARCH_FEEDRATE_Y   50
#define SEARCH_FEEDRATE_Z   50
#define E_STARTSTOP_STEPS   20
 this is how many steps to suck back the filament by when we stop. set to zero to disable
#define ACCELERATION_RAMPING
 acceleration and deceleration ramping.
#define ACCELERATION   1000.
 how fast to accelerate when using ACCELERATION_RAMPING.
#define X_STEP_PIN   AIO0
#define X_DIR_PIN   AIO1
#define X_MIN_PIN   AIO2
#define Y_STEP_PIN   AIO3
#define Y_DIR_PIN   AIO4
#define Y_MIN_PIN   AIO5
#define Z_STEP_PIN   DIO2
#define Z_DIR_PIN   DIO3
#define Z_MIN_PIN   DIO4
#define E_STEP_PIN   DIO7
#define E_DIR_PIN   DIO8
#define PS_ON_PIN   DIO9
#define TEMP_HYSTERESIS   5
 TEMP_HYSTERESIS: actual temperature must be target +/- hysteresis before target temperature can be achieved.
#define TEMP_RESIDENCY_TIME   60
 TEMP_RESIDENCY_TIME: actual temperature must be close to target for this long before target is achieved.
#define TEMP_THERMISTOR
 which temperature sensors are you using? List every type of sensor you use here once, to enable the appropriate code. Intercom is the gen3-style separate extruder board.
#define DEFINE_TEMP_SENSOR(...)
#define DEFINE_HEATER(...)
#define HEATER_EXTRUDER   HEATER_extruder
 and now because the c preprocessor isn't as smart as it could be, uncomment the ones you've listed above and comment the rest.
#define HEATER_BED   HEATER_bed
#define BAUD   115200
 Baud rate for the connection to the host.
#define MOVEBUFFER_SIZE   8
 move buffer size, in number of moves note that each move takes a fair chunk of ram (69 bytes as of this writing) so don't make the buffer too big - a bigger serial readbuffer may help more than increasing this unless your gcodes are more than 70 characters long on average.
#define REFERENCE   REFERENCE_AVCC
 analog subsystem stuff REFERENCE - which analog reference to use.
#define STEP_INTERRUPT_INTERRUPTIBLE   1
 this option makes the step interrupt interruptible (nested).
#define TH_COUNT   8
 temperature history count.
#define FAST_PWM
 Teacup offers two PWM frequencies, 76(61) Hz and 78000(62500) Hz on a 20(16) MHz electronics.
#define PID_SCALE   1024L
 this is the scaling of internally stored PID values. 1024L is a good value
#define ENDSTOP_STEPS   4
 number of steps to run into the endstops intentionally As Endstops trigger false alarm sometimes, Teacup debounces them by counting a number of consecutive positives.

Detailed Description

Sample Configuration.

Note:
this sample uses AIO0 for both X_STEP and thermistor, and is intended to be an example only!

Define Documentation

#define ACCELERATION   1000.

how fast to accelerate when using ACCELERATION_RAMPING.

given in mm/s^2, decimal allowed, useful range 1. to 10'000. Start with 10. for milling (high precision) or 1000. for printing

#define ACCELERATION_RAMPING

acceleration and deceleration ramping.

Each movement starts at (almost) no speed, linearly accelerates to target speed and decelerates just in time to smoothly stop at the target. alternative to ACCELERATION_REPRAP

#define BAUD   115200

Baud rate for the connection to the host.

Usually 115200, other common values are 19200, 38400 or 57600.

#define ENDSTOP_STEPS   4

number of steps to run into the endstops intentionally As Endstops trigger false alarm sometimes, Teacup debounces them by counting a number of consecutive positives.

Valid range is 1...255. Use 4 or less for reliable endstops, 8 or even more for flaky ones.

#define FAST_PWM

Teacup offers two PWM frequencies, 76(61) Hz and 78000(62500) Hz on a 20(16) MHz electronics.

The faster one is the default, as it's what most other firmwares do. It can make the heater MOSFETs pretty hot, though.

Comment this option out if your MOSFETs overheat. Drawback is, in a quiet environment you might notice the heaters and your power supply humming, then.

#define HEATER_EXTRUDER   HEATER_extruder

and now because the c preprocessor isn't as smart as it could be, uncomment the ones you've listed above and comment the rest.

NOTE: these are used to enable various capability-specific chunks of code, you do NOT need to create new entries unless you are adding new capabilities elsewhere in the code! so if you list a bed above, uncomment HEATER_BED, but if you list a chamber you do NOT need to create HEATED_CHAMBER I have searched high and low for a way to make the preprocessor do this for us, but so far I have not found a way.

#define HOST

This is the motherboard, as opposed to the extruder.

See extruder/ directory for GEN3 extruder firmware

#define MOVEBUFFER_SIZE   8

move buffer size, in number of moves note that each move takes a fair chunk of ram (69 bytes as of this writing) so don't make the buffer too big - a bigger serial readbuffer may help more than increasing this unless your gcodes are more than 70 characters long on average.

however, a larger movebuffer will probably help with lots of short consecutive moves, as each move takes a bunch of math (hence time) to set up so a longer buffer allows more of the math to be done during preceding longer moves

#define REFERENCE   REFERENCE_AVCC

analog subsystem stuff REFERENCE - which analog reference to use.

see analog.h for choices

Referenced by analog_init(), and ISR().

#define STEP_INTERRUPT_INTERRUPTIBLE   1

this option makes the step interrupt interruptible (nested).

this should help immensely with dropped serial characters, but may also make debugging infuriating due to the complexities arising from nested interrupts

Note:
disable this option if you're using a '168 or for some reason your ram usage is above 90%. This option hugely increases likelihood of stack smashing.
#define TEMP_HYSTERESIS   5

TEMP_HYSTERESIS: actual temperature must be target +/- hysteresis before target temperature can be achieved.

Unit is degree Celsius.

Referenced by heater_tick(), and temp_sensor_tick().

#define TEMP_RESIDENCY_TIME   60

TEMP_RESIDENCY_TIME: actual temperature must be close to target for this long before target is achieved.

temperature is "achieved" for purposes of M109 and friends when actual temperature is within [hysteresis] of target for [residency] seconds

Referenced by temp_achieved(), and temp_sensor_tick().

#define TH_COUNT   8

temperature history count.

This is how many temperature readings to keep in order to calculate derivative in PID loop higher values make PID derivative term more stable at the expense of reaction time

Referenced by heater_tick().

 All Data Structures Files Functions Variables Defines
Generated on Mon Jul 30 16:33:58 2012 for Teacup by  doxygen 1.6.3