Commit Graph

462 Commits

Author SHA1 Message Date
Markus Hitter f9842d1d90 extruder/config.h.dist: add fallbacks for non-Makefile compilation. 2011-03-19 22:15:22 +01:00
Michael Moon 6e9dd81fb7 func.sh: add variable for serial device 2011-03-17 20:38:30 +11:00
Markus Hitter 851a91306a timer.c: don't reset next_step_time when doing a step.
Doing so adds most of the interrupt execution time to the
step time, see line 126 of the same file:

    if (next_step_time == 0) {
      // new move, take current time as start value
      step_start = TCNT1;
    }
2011-03-14 17:34:26 +01:00
Vaclav Ax Hula 0ec0d360be atmega2560 support in makefile 2011-03-07 13:45:09 +11:00
Vaclav Ax Hula dba296d3d2 Complete project renaming 2011-03-07 13:44:54 +11:00
Markus Hitter fe0dc5408b gcode_process.c, G92: also reset next_target.
This costs a whopping 88 bytes.
2011-03-06 23:30:29 +01:00
Markus Hitter 03b52e0340 gcode_parse.c: don't double-initialize last_field or read_digit.
Saves 64 bytes binary size.
2011-03-06 23:30:15 +01:00
Markus Hitter ab80852aec With G28 "go home" there's also no point to move E.
Saves another 96 bytes binary size.
2011-03-06 23:29:46 +01:00
Markus Hitter d37fee8e82 gcode_process.c: there's no point in setting E on a G92 ...
... as E is always relative. Saves 90 bytes binary size.
2011-03-06 23:29:08 +01:00
Ben Jackson f9565633ea lufa_serial.c: Remove commented-out attempt to promote LF to CRLF. 2011-03-06 09:19:15 +11:00
Ben Jackson 08b516d7f3 Add support for USB serial using the LUFA library.
Configured for at90usb1287 and F_CPU=8000000L this is compatible with
the AT90USBKEY.  Other boards, chips and frequencies require updating
the configuration in lufa_serial/makefile and possibly adding a Board
driver to the LUFA submodule.
2011-03-06 09:18:58 +11:00
Ben Jackson c304c300b7 Add LUFA as submodule to support USB-capable Atmel chips.
Initially pointing at LUFA release 101122.
2011-03-06 09:18:31 +11:00
Ben Jackson e14ec822b8 Add ThermistorTable.h to .gitignore. 2011-03-06 09:18:22 +11:00
Michael Moon 718ace8f05 prevent arithmetic overflow for large max feedrates 2011-03-06 09:16:05 +11:00
Michael Moon 9234fefd06 update func.sh wranglers for new functions 2011-03-05 15:59:29 +11:00
Michael Moon 16944d4394 try to deal with consecutive null moves 2011-03-05 15:55:55 +11:00
Michael Moon c177756913 don't mess up return data stream if numbers have too much precision 2011-03-05 15:54:36 +11:00
Michael Moon db8902b265 add newline after queue when debugging position 2011-03-05 15:12:34 +11:00
Michael Moon 2340808695 start implementing intercom protocol rehash 2011-03-05 13:38:12 +11:00
Michael Moon d0601716e8 reorganise intercom to send packets from extruder main loop, also generalise protocol as discussed in forum 2011-03-05 13:38:12 +11:00
kieran 088f79aa11 add mendel_print_interactive to func.sh for stepping through prints
Signed-off-by: Michael Moon <triffid.hunter@gmail.com>
2011-03-05 13:34:25 +11:00
Markus Hitter 3ee3ee06a1 pinio.h: cosmetics. 2011-03-04 22:51:54 +01:00
Markus Hitter 4cc0c2ca4f Refine enhancements in ea4fdcf a bit. 2011-03-04 22:02:46 +01:00
Ben Jackson 870be1f39d arduino.h: Add support for AT90USB1287 in arduino_usb1287.h.
Only the absolutely #defines exist.  The other platforms define symbols
that are not used by Teacup and those were not mapped for the '1287.
2011-03-04 19:42:39 +11:00
Ben Jackson 3543c6f081 mendel.c: ifdefs for hardware features in powerdown code 2011-03-04 19:42:21 +11:00
Ben Jackson ea4fdcf26a mendel.c, pinio.c: Make Z axes optional. 2011-03-04 19:42:00 +11:00
Ben Jackson 03acd85272 gcode_process.c: When reaching MIN/MAX properly scale clamp value to steps. 2011-03-04 19:42:00 +11:00
Ben Jackson 5bb337c1a5 sender.sh: Allow for "ok" to be surrounded by DEBUG output. 2011-03-04 19:42:00 +11:00
Markus Hitter 5c0dde4e14 Changed M110 to match the description in the RepRap Wiki. 2011-03-03 09:40:55 +01:00
Michael Moon c6a9f24e24 don't set up SPI pins unless we're using them for a max6675 2011-03-03 11:22:49 +11:00
Markus Hitter 12516be978 dda.c: get rid of duplicate power_on() & friends. 2011-03-02 00:59:48 +01:00
Markus Hitter e688e8b788 Consequences of the stepping extruder now being optional. 2011-03-02 00:43:06 +01:00
Markus Hitter d2bf65822e Make the extruder stepper optional.
Think of DC extruders, milling Mendels, ...
2011-03-02 00:43:03 +01:00
Markus Hitter 475ca7d54a pinio.h: make ?_INVERT_DIR safer. 2011-03-02 00:43:01 +01:00
Markus Hitter c182cc8929 pinio.c: remove duplicate #ifdef wrapping.
In case of no enable pins, these functions resolve to nothing
anyways, see pinio.h.
2011-03-02 00:42:57 +01:00
Markus Hitter d93e6e5d2c Internal pullup resistors: intitialize them in the correct order.
It was brought to my attention, one has to set them as input first,
then to configure them to use the Pullups.
2011-03-01 17:07:27 +01:00
Markus Hitter b7afdda3f7 Make the use of the internal pullup resistors optional.
All other firmwares set them to zero -> no internal pullup resistor,
as they counter-work to the design of the electronic endstops.
However, in conjunction with mechanical endstops, they're very practical.
2011-03-01 16:10:52 +01:00
Michael Moon 815ff7ba19 lots of other files in extruder desynced, needed to wrap an ifdef around heater_print 2011-02-28 09:44:29 +11:00
Markus Amsler 3647c6f1a9 intercom: extruder only replies if talked to 2011-02-27 23:05:33 +01:00
Markus Amsler 7a15fb6df2 homing: delay is in microseconds. 2011-02-27 22:40:03 +01:00
Markus Amsler 994acb58c3 homing: enable axis before moving. 2011-02-27 22:31:27 +01:00
Markus Amsler d85f821872 Disable z stepper after each move.
All z-axis I'm aware off hold their positions with powered down stepper.
2011-02-27 22:15:15 +01:00
Markus Amsler d2c0a84da7 Arduino ide doesn't like definitions in for loops. 2011-02-27 22:11:13 +01:00
Markus Amsler 2b248850ce arduino ide: .pde must have the same name as the folder. 2011-02-27 22:08:41 +01:00
Markus Hitter 7e8c50fa58 pinio.h: make inverting pins actually work.
To INVERT an endstop, #define X_INVERT_MIN etc.
To leave it uninverted, define nothing, i.e. comment the #define out.

Probably, this change should be extended to INVERT_DIR and
INVERT_ENABLE, too.

The problem was, preprocessor flags are usually set with a simple
"#define X_INVERT_MIN", so X_INVERT_MIN is defined, but of
arbitrary value. Applies to other axes and INVERT_MAX also,
of course.

Initially, it was planned to allow "#define X_INVERT_MIN" as well
as "#define X_INVERT_MIN 0" but that turned out to be _really_
complex. See http://www.velocityreviews.com/forums/t720190-test-of-a-preprocessor-symbol-defined-as-nothing-vs-zero.html .

For curiosity, I've ported this to our purposes, debug messages
left in place:

	#ifdef X_INVERT_MAX
		#if CAT(1,X_INVERT_MAX) == 1
			#warning "X enabled, inverted"
			#define x_max()						(READ(X_MAX_PIN)?0:1)
		#elif X_INVERT_MAX
			#warning "X enabled, inverted"
			#define x_max()						(READ(X_MAX_PIN)?0:1)
		#else
			#warning "X enabled, uninverted"
			#define x_max()						(READ(X_MAX_PIN)?1:0)
		#endif
	#else
		#warning "X enabled, uninverted"
		#define x_max()						(READ(X_MAX_PIN)?1:0)
	#endif
	#warning "X disabled"
	#define	x_max()							(0)
2011-02-27 16:16:30 +01:00
Markus Hitter 0d37270af1 Config templates: publish INVERT flags.
The corresponding code is in pinio.h already, so let's hope
it actually works.
2011-02-27 12:01:47 +01:00
Markus Hitter 340aea89c8 Config templates: publish ENABLE_PINs in _all_ templates.
No functional change, as the new ones are commented out.
2011-02-27 12:00:45 +01:00
Markus Hitter 7087587f19 Config templates: add MAX_PINS consistently.
No functional changes, since all the new ones are commented out.
2011-02-27 11:55:27 +01:00
Markus Hitter 5c31bc01c1 gcode_process.c: make special moves non-public.
This adds some 30 bytes program size for whatever reason.
2011-02-27 11:55:01 +01:00
Markus Hitter 1a33cfddf6 gcode_parse.h: grant mantissa full 32 bits.
This saves 280 bytes of binary size and probably quite a bit of
processing time. Cost: 1 byte of RAM.
2011-02-27 11:53:08 +01:00