Markus Hitter
da5194a54e
Tidy up config.h.dist a bit.
2010-10-07 21:34:34 +02:00
Markus Hitter
4bddf3452f
Move stepper macros from config.h(.dist) to dda.c, as they're not
...
meant to be configured by the user.
2010-10-07 21:34:29 +02:00
Markus Hitter
f799228a8e
Remove old XON/XOFF implementation, as it's redundant now.
2010-10-05 21:04:06 +02:00
Markus Hitter
a438a3fa2f
Implement XON/XOFF handling for the serial read queue. The former
...
solution was less computing intensive, but failed when the GCode
interpreter couldn't keep up with the incoming stream, e.g. when
handling a lot of tiny moves.
The old implementation is still in place but somewhat redundant
now, so stay tuned ...
Oh, and G4 Dwell works now as well.
2010-10-05 21:04:03 +02:00
Markus Hitter
5e1ce4ec96
Refined the check wether the timer interrupt is enabled,
...
as per triffid's request.
2010-10-05 13:20:28 +02:00
Markus Hitter
af53d2350e
Makefile: different solution for commit f5a26de775, as suggested
...
by triffid.
2010-10-05 12:19:34 +02:00
Markus Hitter
95939ecc22
Don't disable the stepper timer interrupt while stepping.
...
After lots of try and error the conclusion was, disabling this
interrupt makes the timer vulnerable to be messed up by
characters incoming over the serial line. So, now the
interrupt is enabled as a move starts and not disabled before
the move, and all subsequent moves are done.
2010-10-04 16:05:01 +02:00
Markus Hitter
fb53c2c0a8
serial.c: make sure to read incoming characters even if we don't
...
have space to store them.
2010-10-04 16:04:54 +02:00
Markus Hitter
f56e121473
dda_queue.c: clean out an unused comment.
2010-10-04 16:04:49 +02:00
Markus Hitter
bdfc4c5507
clock.c: Add a comment about interrupt priorities.
2010-10-04 16:04:47 +02:00
Markus Hitter
2fac65d172
dda_queue.c: restart XON/XOFF only if the queue is at least half drained.
2010-10-04 16:04:43 +02:00
Markus Hitter
f98772ff25
timer.c: remove a few obsolete #includes.
2010-10-04 16:04:12 +02:00
John Gilmore
cfff4ca5d3
added "config.h" to dependancies for everything.
...
I noticed that changing config.h didn't recompile dda.c.
So I changed that.
2010-10-03 23:27:38 +02:00
Markus Hitter
f5a26de775
Makefile: fix the build failure introduced with the recent Makefile
...
change. Sorry for letting this slip through.
2010-10-02 16:37:05 +02:00
Markus Hitter
f29c675fcc
Wrap the watchdog in #ifdefs and disable it for now. My poor imagination
...
can't think of a situation where resetting the controller in the middle
of a build would be useful. Even hanging ist better :-/
The difference in program size is just 238 bytes.
2010-10-02 16:15:29 +02:00
Markus Hitter
5cb2982e57
Makefile: disallow building if config.h obviously isn't up to date.
2010-10-02 16:14:20 +02:00
Markus Hitter
69ab8cbd9d
gcode.c: as we have a working maximum feedrate limitation now,
...
we can move even faster on rapid movements with more than one axis.
2010-09-30 23:37:57 +02:00
Markus Hitter
9e02c9c1e4
gcode.c: on G0, remember original feedrate.
2010-09-30 23:33:19 +02:00
Markus Hitter
2871411f0c
gcode.c: clarify relative coordinates handling. Saves another 82 bytes.
2010-09-30 23:19:32 +02:00
Markus Hitter
90fca50535
dda_queue.c/.h: merge enqueue() and enqueue_temp_wait(). This
...
saves almost 200 bytes.
2010-09-30 21:55:39 +02:00
Markus Hitter
94e0cce89b
Don't set the timer on nullmoves, as dda->c isn't initialized, then.
2010-09-30 21:20:22 +02:00
Michael Moon
4617b5e87d
ignore local config.h
2010-09-27 14:13:58 +10:00
Michael Moon
5b36826f50
updated instructions in README
2010-09-27 09:25:48 +10:00
Michael Moon
e78381c56d
Move configuration to config.h.dist
2010-09-27 09:20:07 +10:00
Michael Moon
b76f59193f
Expanded README some more
2010-09-27 09:06:50 +10:00
Michael Moon
bbf74cc660
Merge branch 'master' of github.com:triffid/FiveD_on_Arduino
2010-09-26 11:30:55 +10:00
Michael Moon
bd76a6ce1c
Expanded README, updated Makefile header
2010-09-26 11:12:34 +10:00
Markus Hitter
ba84d1de60
Fix a typo.
2010-09-26 01:39:13 +02:00
Markus Hitter
f6f2b7f44f
Enhance ACCELERATION_RAMPING on short moves.
...
Problem was: For short moves, you have to ramp down before
reaching target speed. The point of return was set to half
of the number of total steps.
Now, what happens is there's an uneven number of steps? In
integer math, 3 / 2 = 1, so the move would ramp one step up,
one step down and ... well, one step even further down, resulting
in a really sloooow step. Slow, like a full second or so.
Adding one to the first half, the movement ramps two steps up,
one down and would do another step at minimum speed, if it wasn't
already at target position. This is about as accurate as we
can get it without introducing more code at interrupt time.
2010-09-25 18:11:45 +02:00
Markus Hitter
903baad3d1
As we assume a G1 by default now, there's no longer a point in
...
writing "huh?". Included question marks for debugging instead.
2010-09-25 18:11:45 +02:00
Markus Hitter
f5258ef9fc
Assume a G1 by default. This is expected by some GCode generators.
2010-09-25 18:11:44 +02:00
Markus Hitter
64683e6b6a
Remove timer reset, as this doesn't play well. See
...
http://github.com/triffid/FiveD_on_Arduino/issues#issue/2/comment/428863 .
2010-09-25 12:08:23 +02:00
Markus Hitter
4679b45ac8
Send lowercase ok on init as well.
2010-09-24 20:09:19 +02:00
Markus Hitter
696baea16a
Implement better machine speed limits checking. Do it for
...
each axis individually, as the combined speed of two or more
axes can be higher than the limit of a single one.
While this is tested to work well for all three acceleration
types, I'm not enthusiastic about the code, as it adds almost
500 bytes. Perhaps an efficient-coding-geek can help :-)
2010-09-24 16:08:11 +02:00
Markus Hitter
d8e844bb67
Allow compilation without any acceleration again.
2010-09-23 13:34:02 +02:00
Michael Moon
c1dbd869f5
minor fixes: comments, indenting, etc
2010-09-18 08:08:31 +10:00
Michael Moon
f037bb5320
removed unused ABS_DELTA
2010-09-17 10:29:27 +10:00
Michael Moon
0f895b44b1
use sersendf_P for M114
2010-09-16 22:08:56 +10:00
Michael Moon
256ecdca39
compile-time format checking for sersendf_P
2010-09-16 22:08:24 +10:00
Michael Moon
82446ab787
remove %x/%c/%p since we're not using it yet
2010-09-16 22:08:00 +10:00
Michael Moon
54cb815b12
remove redundant code, fix queue logic in G28:home
2010-09-16 21:44:26 +10:00
Michael Moon
1a2753ebfb
turn off SPI if not needed, also start analog system
2010-09-16 21:43:13 +10:00
Michael Moon
92eb4c97ca
reset timer properly for more accurate timing
2010-09-16 21:42:24 +10:00
Michael Moon
d56ff39cb3
atomic 16-bit operation in analog.c
2010-09-16 21:42:00 +10:00
Michael Moon
3606952096
ignore temporal mapping script temporary files
2010-09-16 19:27:00 +10:00
Michael Moon
6ce5895819
Merge branch 'master' of github.com:triffid/FiveD_on_Arduino
2010-09-16 17:15:30 +10:00
Markus Hitter
bd1e357c35
dda.c: remove ABSDELTA() and delta32() implementations as they're unused.
2010-09-14 19:45:23 +02:00
Markus Hitter
ae774ed0ec
mendel.c: remove unused references to standard C lib.
2010-09-14 19:44:35 +02:00
Michael Moon
004bc1b789
code cleaning
...
(cherry picked from commit c3333278beaca0d81023b7ee752530466b37f316)
2010-09-13 20:40:23 +10:00
Michael Moon
99f2593321
UNTESTED support for sanguino
2010-09-13 17:40:21 +10:00