Commit Graph

34 Commits

Author SHA1 Message Date
Markus Hitter 5cc84a069a Canned G-code: setup right in config.h.
This works with Arduino IDE as well and should be easier to figure
for inexperienced users.
2014-08-31 19:31:39 +02:00
David Forrest f356f64bdb config.default.h: Add DEBUG_LED_PIN to the pinout section. 2014-08-31 19:07:01 +02:00
Markus Hitter 6250dbb9e0 Configuration: move DEBUG_LED definition.
Eventual debugging LEDs aren't part of the CPU, but part of the
electronics. Accordingly, define it in config.*.h, not in
arduino_*.h (which would be better named something like
"atmega_*.h).
2014-08-31 19:05:38 +02:00
Markus Hitter b275bfcc32 Implement adaptive homing feedrates.
For now for X min only, but it works excellently already.
Tested quite a few combinations and raising acceleration
or endstop clearance raises homing feedrate just as expected.

Quite a chunk of the code is for testing the given configuration,
only. A thing which would ideally be done for every macro
used in each code file.
2014-07-11 01:37:57 +02:00
Markus Hitter 7611872baa Get rid of E_STARTSTOP_STEPS.
This meant to be a firmware-provided retract feature but was
never really supported by G-code generators. Without their support
(by issueing M101/M103), it's pretty hard to detect extrusion
pauses, so this feature simply has no future.

As this was on by default, it saves over 200 bytes binary size
in a default configuration.
2014-07-11 01:37:48 +02:00
David Forrest c35d1c1caf heater.c, config.default.h: Make PID_CONDITIONAL_INTEGRATION non-optional.
See
https://github.com/Traumflug/Teacup_Firmware/issues/74#issuecomment-38999466
2014-07-11 01:37:35 +02:00
David Forrest 23679855a0 heater.c: Enable more anti-windup with PID_CONDITIONAL_INTEGRATION. 2014-07-11 01:37:24 +02:00
Markus Hitter ed9f56a9d8 look-ahead: move jerk definitions into config.h templates. 2014-03-04 19:29:28 +01:00
Markus Hitter 01f7c99881 config.h: introduce PS_MOSFET_PIN for Sanguish support. 2013-10-27 20:01:51 +01:00
Markus Hitter ea59e634a7 Bring LOOKAHEAD into the config templates. 2013-07-11 22:02:23 +02:00
Markus Hitter 3c5d9d8950 Replace #define HOST by #define MOTHERBOARD.
Apparently, HOST conflicts with some AVR headers for the
USB-equipped ATmegas.

Patch by DaveX, thank you Dave. See also:
http://forums.reprap.org/read.php?147,33082,182021#msg-182021
2013-03-24 16:17:14 +01:00
Markus Hitter 64560eda45 config templates: bring in EECONFIG.
Recently EEPROM storage was wrapped in #ifdefs, so, to get it back
by default, we have to enable it.
2013-02-05 14:11:04 +01:00
Markus Hitter 6f2ec09837 Make temperature sensor type TT_NONE obsolete.
The requirement was simply neither obvious nor intuitive. Drawback
is, the indices of temperature sensors can now differ from these
of the heaters. That's easier to recognize for newbies, though.
2013-01-03 15:34:41 +01:00
Markus Hitter ba05d6a0cd Give up on REPRAP_HOST_COMPATIBILITY.
Was never really accepted and these days, hosts usually adjust
to the firmware instead of the other way around.
2012-12-03 19:50:14 +01:00
Markus Hitter 9b018b7433 Make USB_SERIAL fit for the Arduino IDE.
This also includes renaming of USE_USB to USB_SERIAL for more
consistency.
2012-12-03 19:49:58 +01:00
Markus Hitter 8d91312991 heaters: allow to disable PWM on PWM-able pins.
This is not only handy for debugging non-PWM mode, it may also
help those who run a heated bed attached to a solid state relay.

This way it was found out connecting heaters to non-PWM pins
works just fine and did so for a loooong time.

Not yet distributed to all the config.h templates.
2012-11-08 16:24:53 +01:00
Markus Hitter 8e27595a5f temp.c: allow smoothing temperature readings.
This is done by an Exponentially Weighted Moving Average (EWMA)
formula. Contribution by DaveX, see
http://forums.reprap.org/read.php?147,33082,157978#msg-157978

Thanks a lot, Dave.
2012-11-08 16:22:31 +01:00
Markus Hitter a054d4c6cd Remove all remaining evidence of M109.
M109 went away a few commits ago in favour of only M116.
2012-10-14 22:57:22 +02:00
Markus Hitter fd9985ac49 config templates: fix directly numbered/unused pins. 2012-09-29 22:59:22 +02:00
Mikko Sivulainen bfe5e6f2fc Fixed ADC channel handling.
ADC pin is not the same as ADC channel in atmega1280/2560.
2012-09-29 22:57:55 +02:00
Markus Hitter 5811b49b02 Config templates: comment out FAST_PWM by default.
Also, start to limit comments in the config templates to 80 chars,
to ease reading them in the Arduino IDE.
2012-08-17 16:02:02 +02:00
Markus Hitter 0ba62800eb config template: adjust the comments for the heaters.
For example, heaters currently don't work on non-PWM pins. Also,
mention special names.
2012-08-04 22:08:43 +02:00
Markus Hitter 8c6e6a1027 Fix comment on STEPS_PER_M_x in config.h templates. 2012-08-04 22:08:35 +02:00
Markus Hitter 1657fb2731 Align heater definitions in config.h templates.
Purely cosmetical, no functional change.
2012-05-13 20:44:09 +02:00
Markus Hitter eaf6c453be Introduce gcode_init() and honor E_ABSOLUTE as the default. 2012-05-11 13:50:51 +02:00
Markus Hitter 7b909fcf82 Fix thermistor tables, which also fixes a build failure.
Now we don't have tables for default or gen7 electronics, but
two default tables for a single vs. two different thermistors.
This seems to be more logical.
2012-03-25 16:16:48 +02:00
Markus Hitter 86e20580f8 Make fast PWM optional.
In some cases the heater switching MOSFETs overheat and using a lower
PWM frequency is advised. See also:
http://reprap.org/wiki/Gen7_Research#Heat_vs._PWM_Frequency
2012-03-03 16:56:36 +01:00
Markus Hitter 71fb5d6f47 configs: make F_CPU UL instead of L. 2011-12-04 18:36:15 +01:00
Markus Hitter 4e5f51f01e Store distances in the TARGET strucure in micrometers for all axes.
This extends the previous commit from X to Y, Z and E.
2011-11-17 13:48:36 +01:00
Markus Hitter c96ea0c773 Store distances in the TARGET structure always in micrometers.
This is a intrusive patch and for now, it's done for the X axis only.
To make comparison with the former approach easier ...

The advantages of this change:

- Converting from mm to steps in gcode_parse.c and back in dda.c
  wastes cycles and accuracy.

- In dda.c, UM_PER_STEP simply goes away, so distance calculations
  work now with STEPS_PER_MM > 500 just fine. 1/16 microstepping
  on threaded rods (Z axis) becomes possible.

- Distance calculations (feedrate, acceleration, ...) become much
  simpler.

- A wide range of STEPS_PER_M can now be handled at reasonable
  (4 decimal digit) accuracy with a simple macro. Formerly,
  we were limited to 500 steps/mm, now we can do 4'096 steps/mm
  and could easily raise this another digit.

Disadvantages:

- STEPS_PER_MM is gone in config.h, using STEPS_PER_M is required,
  because the preprocessor refuses to compare numbers with decimal
  points in them.

- The DDA has to store the position in steps anyways to avoid
  rounding errors.
2011-11-17 13:48:26 +01:00
Markus Hitter b80c736004 Add the missing E_INVERT_ENABLE to the config templates.
Catch by brnrd, thanks.
2011-10-28 13:22:15 +02:00
Markus Hitter 129bdc64bc home.c: introduce SLOW_HOMING 2011-10-23 19:51:48 +02:00
Markus Hitter df693c0113 config.h/dda.c: make endstop debouncing steps configurable. 2011-10-23 19:51:46 +02:00
Markus Hitter b7cd9859c4 Rename config.h.dist to something with a .h suffix.
This eases working with colouring text editors and is more
consistent with all those board-specific configs.
2011-10-23 19:51:45 +02:00