Commit Graph

51 Commits

Author SHA1 Message Date
Markus Hitter 8b88334b06 Rename setTimer() to timer_set() for more consistency.
Pure cosmetical change.

Performance check:

$ cd testcases
$ ./run-in-simulavr.sh short-moves.gcode smooth-curves.gcode triangle-odd.gcode
[...]
    SIZES             ATmega...  '168    '328(P)    '644(P)    '1280
    FLASH  : 20518 bytes         144%        67%        33%      16%
    RAM    :  2188 bytes         214%       107%        54%      27%
    EEPROM :    32 bytes           4%         2%         2%       1%

short-moves.gcode statistics:
LED on occurences: 838.
LED on time minimum: 302 clock cycles.
LED on time maximum: 713 clock cycles.
LED on time average: 308.72 clock cycles.

smooth-curves.gcode statistics:
LED on occurences: 8585.
LED on time minimum: 307 clock cycles.
LED on time maximum: 710 clock cycles.
LED on time average: 358.051 clock cycles.

triangle-odd.gcode statistics:
LED on occurences: 1636.
LED on time minimum: 302 clock cycles.
LED on time maximum: 708 clock cycles.
LED on time average: 330.322 clock cycles.
2015-04-21 02:51:32 +02:00
Markus Hitter d29737699f temp.h: remove indirection temp_tick(). 2015-04-21 02:51:31 +02:00
Markus Hitter 86f1fc418f Enforce Unix line endings (LF).
This should convert all files checked into the repository to
LF line endings, with exception of pictures and PDFs. Trying
to commit CRLF text on Unix will issue a warning when doing
"git add" or "git commit -a".

Users prefering CRLF (Windows) can set their local copy of the
repository to convert files on the fly at checkout with

  git config --local core.autocrlf = true

Note: Git acts pretty stubborn on files which don't match the
.gitattributes rules, but are already committed. This can
happen after every change to .gitattributes. Git doesn't want
to keep these files as-is in the repository and insists on
conversion as soon as they're touched somehow. The only way to
deal with this is to either edit .gitattributes again (in case
these enforced conversions don't match the intention) or to
commit the enforced changes immediately.

To put a bit more oil into the fire, Git doesn't recognize all
misalignments immediately, but trusts its cache. Accordingly
it's a good idea to clear this cache after any change to
.gitattributes:

  rm .git/index

Having this done, all further proceedings will show all
misaligments immerdiately.

For further instructions and descriptions see
http://schacon.github.io/git/gitattributes.html
http://adaptivepatchwork.com/2012/03/01/mind-the-end-of-your-line/
http://git.661346.n2.nabble.com/possible-gitattributes-eol-bug-with-new-eol-crlf-lf-support-td5516458.html
https://help.github.com/articles/dealing-with-line-endings/#refreshing-a-repository-after-changing-line-endings
2015-02-04 00:10:37 +01:00
Markus Hitter 793a04b991 Align section attributes usage: always before the variable name. 2014-03-04 19:57:56 +01:00
Phil Hord c7150445af Zungmann's fixes to compile simulator on Mac OS X, part 2.
Here: .bss section syntax is different.
2014-03-04 19:57:48 +01:00
Phil Hord 21e5343552 Add config.h wrapper to simplify test automation
Test code which wants to customize config.h can do so without
touching config.h itself by wrapping config.h in a macro variable
which is passed in to the compiler.  It defaults to "config.h" if
no override is provided.

This change would break makefile dependency checking since the selection
of a different header file on the command line is not noticed by make
as a build-trigger.  To solve this, we add a layer to the BUILDDIR path
so build products are now specific to the USER_CONFIG choice if it is
not "config.h".
2014-03-04 19:56:23 +01:00
Markus Hitter 0eecdf895b Temperature tables: add missing const qualifiers.
Spotted and fixed by wrtlprnft, thanks for the contribution.
2013-11-16 17:31:28 +01:00
Markus Amsler 26b9a7df54 extruder: Add dummy temp sensor so analog_mask includes trim pot. 2011-04-12 20:38:28 +02:00
Markus Amsler e937b052af Add support for multiple thermistor tables.
DEFINE_TEMP_SENSOR takes one additional argument. For TT_THERMISOR you can specify there which thermistor table to use.
2011-04-12 20:00:18 +02:00
Markus Amsler 1d556e0278 Use HEATER_BED everywhere.
For intercom heated bed it may be different from HEATER_bed.
2011-04-11 22:41:50 +02:00
Michael Moon c54c964fc0 initialise heaters on timers 3/4/5 2011-04-11 11:22:09 +10:00
Markus Amsler d97a4519d3 extruder: Get rid of _CONFIG_H, like on the mainboard config. 2011-04-07 03:29:17 +02:00
Markus Amsler 0a92c13051 extruder: sync heater.c 2011-04-05 02:14:34 +02:00
Markus Amsler 57a75ecbfb temp: TEMP_RESIDENCY_TIME is in seconds not in temp_ticks (=10ms) 2011-04-04 09:21:32 +10:00
Markus Amsler be18eb90b8 Convert TEMP_HYSTERESIS to Celsius. 2011-04-04 09:12:54 +10:00
Markus Amsler 093d20481e heater: fix residency compare.
labs requires a signed int.
2011-04-04 09:12:54 +10:00
Markus Amsler 9860d2850f heater: only reset residency if temp really changed
Skeinforge generates sometimes multiple calls to M104/M140, which would add a slow delay on the next M101.
2011-04-04 09:12:53 +10:00
Markus Amsler 3a271ee487 intercom: make sure extruder switches to listen mode 2011-04-04 09:12:53 +10:00
Michael Moon dba60ba1eb fix error: lvalue required as unary '&' operand when heater pin is not a PWMable pin. 2011-04-04 09:10:25 +10:00
Michael Moon 66415078e5 update extruder to match simplified heater 2011-03-28 21:54:58 +11:00
Michael Moon 3c3624542f simplify heater configuration by using arduino_*.h more effectively with DEFINE_HEATER macro 2011-03-28 18:45:28 +11:00
Michael Moon d7f5c08174 all defines live in config.h now, remove from Makefile 2011-03-24 11:26:11 +11:00
Michael Moon 918e3be84c include thermistor tables, most users seem to have similar thermistors so we can safely provide a default 2011-03-24 11:06:04 +11:00
Michael Moon 0ddb40a844 IDE apparently takes issue with Extruder.pde in extruder directory, altered capitalisation 2011-03-24 10:58:51 +11:00
Michael Moon 081b693341 extruder doesn't use serial.c, update watchdog.c to suit 2011-03-24 10:51:57 +11:00
Michael Moon 196caff134 Extruder: GEN3 and EXTRUDER defined in config, not Makefile 2011-03-24 10:31:33 +11:00
Michael Moon 0dc7d77885 Massive Doxygen documentation addition
'make doc' then point your browser at doc/html/

Needs plenty of cleanup and polishing, but the main bulk is here

even documents your configuration! ;)
2011-03-22 01:34:36 +11:00
Markus Hitter f9842d1d90 extruder/config.h.dist: add fallbacks for non-Makefile compilation. 2011-03-19 22:15:22 +01:00
Vaclav Ax Hula dba296d3d2 Complete project renaming 2011-03-07 13:44:54 +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
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
Michael Moon 8188ff3593 merge intercom-protocol into master 2011-02-21 16:01:27 +11:00
Markus Amsler bfae6ff97f intercom: Reduce sections with disabled interrupts. 2011-02-21 15:52:17 +11:00
Markus Amsler fa2a4389fc intercom: Transmit/receive from/to temporary packets.
Fixes that the packet could be changed during transmit. And only values from packets with correct checksum are used.
2011-02-21 15:52:16 +11:00
Markus Amsler 5e56784ac1 extruder: Set/get bed temperature. 2011-02-21 15:52:16 +11:00
Markus Amsler 6d83bdb067 extruder: add fan definitions 2011-02-21 15:52:15 +11:00
Markus Amsler e032cf5dab extruder: Use pull up resistors for step/dir pin to avoid noise. 2011-02-21 15:52:15 +11:00
Markus Amsler d0cbe86a2d extruder: Half-step on every step signal.
No idea why only every 4th step signal would actually step, but this generates a lot of noise for nothing.
2011-02-21 15:52:15 +11:00
Markus Amsler e3672da1cf extruder: Check the step pin directly.
Flag could get out of sync, with undefined results.
2011-02-21 15:52:15 +11:00
Markus Amsler 5cf550733d arduino_168: define AIO6/7 2011-02-21 15:52:14 +11:00
Markus Amsler b0d1ba0e60 Fix analog reading of channel 0 if another channel is active. 2011-02-15 13:24:53 +11:00
Markus Amsler bcd47e90b0 Fix analog reading of channel 0 if another channel is active. 2011-02-15 13:21:45 +11:00
Markus Amsler e41e659e66 intercom: Disable rx while doing tx. Avoids local RS485 half-duplex echo.
Signed-off-by: Michael Moon <triffid.hunter@gmail.com>
2011-02-14 11:31:45 +11:00
Markus Amsler 959bae2f4a intercom: Add delay before slave replies. Without it the first byte gets lost. 2011-02-14 11:08:08 +11:00
Markus Amsler a3b1529607 intercom: don't store start byte twice. 2011-02-14 11:08:08 +11:00
Markus Amsler e6a137d5f1 intercom: Init start byte. 2011-02-14 11:08:08 +11:00
Michael Moon b1a48994dd preliminary untested implementation of Markus Amsler's new extruder comms protocol 2011-02-12 23:59:19 +11:00
Markus Amsler fc57cfc5de Add Extruder.pde, so extruder is compilable with Arduino IDE 2011-02-09 07:48:29 +11:00