Commit Graph

1691 Commits

Author SHA1 Message Date
Michael Moon 595b66a341 setting up new branch 2 2010-08-10 14:26:24 +10:00
Michael Moon 994fa1b4c7 setting up new branch 2010-08-10 14:24:01 +10:00
Markus Hitter b655480583 Added a .gitignore to clean up git status' output. 2010-07-23 12:51:56 +02:00
Markus Hitter 81fd2c3773 Fix a few warnings. 2010-07-23 12:01:29 +02:00
Markus Hitter 31dcf28fd4 dda.c: eliminated abs32() in favour of the ABS() macro.
Saves 50 bytes.
2010-07-13 17:00:01 +02:00
Markus Hitter 8468f22e58 Eliminate serial_writechar_P(). serial_writechar() perfoms better and
uses less memory. Also, reviewed all code for usage of single-character
strings.
2010-07-13 16:57:23 +02:00
Markus Hitter e79c7c4759 Major overhaul of machine.h. All those calculations were confusing
complex and made for one type of machine, only.
2010-07-13 16:56:54 +02:00
Markus Hitter 884fdf5c25 Achieve RepRap Host compatibility for temperature readouts as well. 2010-07-13 16:56:37 +02:00
Markus Hitter c013a185e8 Every character, plus *, starts a new field. Previously,
unknown commands would mess up decimals handling.
Failing testcase was "N11 T22", which was interpreted as "N1122".

The new code now also compiles to 56 bytes less.
2010-07-13 16:55:14 +02:00
Markus Hitter abc0edc635 Add the option to not include the asterisk in checksum calculation.
RepRap host software does it this way.
2010-07-13 16:50:08 +02:00
Markus Hitter 5409e1da19 Remove a leftover LOWERCASE_OK. 2010-07-13 16:48:49 +02:00
Markus Hitter 0bd0848dd5 Make resend requests RepRap host compatible, too. 2010-07-13 16:43:38 +02:00
Markus Hitter aa590c4502 Don't fail on unknown commands. For example, RepRap host sends T commands,
which are not (yet) known.

Previously, the firmware would fail silently, which was even worse.
2010-07-13 16:33:06 +02:00
Markus Hitter a83f301a54 Count only line numbers with N seen. 2010-07-13 16:31:36 +02:00
Markus Hitter 877ffce572 Allow non-consecutive line numbers. 2010-07-13 16:28:35 +02:00
Markus Hitter ff25c6847b If line numbers aren't required, don't bother about their
actual value either. Failing case was RepRap host software,
sending
N0 T8 *18
N0 G21 *58
on each build start.

Also saves a whopping 124 bytes of memory on ignoring line
numbers. next_target.N_expected is never used and it's handling
should be optimized out.
2010-07-13 16:24:19 +02:00
Markus Hitter 2004f04d4a An M-code stuck when receiving G commands and vice-versa.
Testcase:
M105
G1 F100
--> Temperatures would be sent the second time as well.
2010-07-13 16:14:36 +02:00
Markus Hitter 85b09112b9 Moved REQUIRE_LINENUMBER and REQUIRE_CHECKSUM #defines to gcode.h. 2010-07-13 16:04:32 +02:00
Markus Hitter c591d3330d RepRap host software expects a lowercase "ok" for confirmation. 2010-07-13 15:35:26 +02:00
Markus Hitter f249724efd Account for different Power Reduction Registers (PRR) on the
various chips.
2010-07-13 15:31:15 +02:00
Markus Hitter 6f0dced422 Achieve C89 compatibility, Arduino IDE's default. 2010-07-09 21:03:46 +02:00
Markus Hitter 8c56c080fe Make sources buildable with the Arduino IDE. 2010-07-09 21:03:23 +02:00
Michael Moon 505a744d54 time to save 2010-03-29 13:53:57 +11:00
Michael Moon bce08901d8 time to save, added a tiny printf implementation which actually gives less code than printing everything out manually, waiting for temperature is now queueable so subsequent moves can be buffered ahead of time, and a debug flags system for dynamic enable/disable of debug. btw, atmega168 doesn't have enough space for debug so turn it off if you have one. 2010-03-17 04:11:33 +11:00
Michael Moon 06cdfaa251 a ton of work on the heater PID loop, it's working great now 2010-03-15 18:27:14 +11:00
Michael Moon 2182d7b77a time to save, updated M253 read memory to accept a length, updated utility functions 2010-03-14 09:54:55 +11:00
Michael Moon ee4e71da1a preliminary support for line numbers and checksums, also some handy host-side functions 2010-03-05 21:24:10 +11:00
Michael Moon 76834e6636 time to save, also changed makefile to atmega328 because I fried my 168 2010-03-04 21:19:18 +11:00
Michael Moon 8575ae3480 time to save, bugfixes in linear acceleration code, fixed point delta t instead of integer, etc 2010-02-22 12:10:35 +11:00
Michael Moon 33ba692f37 time to save 2010-02-17 00:09:31 +11:00
Michael Moon 3c7784cc3b trying out some constant acceleration code, expect breakage 2010-02-12 18:10:03 +11:00
Michael Moon 7b79d2ea32 tons of small fixes, improvements etc. Clocked DDA at 25000mm/min (over 400mm/s!) 2010-02-11 15:34:06 +11:00
Michael Moon 54a793b3a1 dwell now waits for queue flush, M101/M103 no longer accelerate and alter feedrate, homing no longer accelerates 2010-02-10 23:40:22 +11:00
Michael Moon 7326e17560 misc tidying, added watchdog stuff, moved things around a bit 2010-02-10 12:56:26 +11:00
Michael Moon 65c237cff6 Moved ringbuffer stuff into serial routine for some significant space and speed savings 2010-02-08 22:20:07 +11:00
Michael Moon d5c2e0534d time to save, more very minor tweaks during testing runs 2010-02-08 16:30:14 +11:00
Michael Moon f8eee368c4 Lots of minor tweaks during some test runs, most notable is that tail of dda_step routing is now interruptible 2010-02-08 15:53:05 +11:00
Michael Moon fe9938bcef Accept CR as end of line, by popular request 2010-02-08 09:57:47 +11:00
Michael Moon 91c86beaf0 MAX6675 temperature code working, still playing with heater output, other fixes 2010-02-08 09:51:58 +11:00
Michael Moon 997ea730f4 use boot.h functions to read own fuses 2010-02-06 20:17:06 +11:00
Michael Moon 535dbfc901 Minor edit to firmware copy- still untested 2010-02-06 20:03:42 +11:00
Michael Moon 3fb2977ff0 First write-up of firmware copy routine- totally untested! 2010-02-06 19:50:08 +11:00
Michael Moon 1ae24e5378 altered serial subsystem to be capable of 115200 baud 2010-02-05 09:53:38 +11:00
Michael Moon 4c47901b66 tons of commenting and tidying, fixes to heater PID loop 2010-02-04 23:22:16 +11:00
Michael Moon 8cc6fa6937 split up dda and its queue, moved clock tick functions from main loop so I can call them from M101 while waiting for heater to reach target temperature, added thermal hysteresis setting 2010-02-04 00:30:04 +11:00
Michael Moon 5b1245e41d solved bug where speed would be seemingly random for moves beyond about 71mm, plus lots of tidying 2010-02-03 23:11:33 +11:00
Michael Moon 9b067d383b time to save, think I solved reducing F bug, movement is now lovely! 2010-02-03 19:56:51 +11:00
Michael Moon 6002e10dd7 time to save, acceleration seems to be temporarily broken, will have to debug later 2010-02-02 23:51:08 +11:00
Michael Moon 5e0f5a6c87 axes are moving nicely, relative mode works, fixed a ton of bugs, still playing with XON/XOFF 2010-02-01 19:55:06 +11:00
Michael Moon 980f39a2c3 time to save, motors working nicely, XON/XOFF flow control implemented for *simple* dumping of gcode 2010-02-01 18:13:26 +11:00