762 Commits (c3cdaceab3e5d5555f673773cdcbedc47f6b5e6e)

Author SHA1 Message Date
daid303 46ec4b648c Added some missing Mxxx comments to M commands. Fixed the unsetting of the timer dividers for the fast PWM fan. 12 years ago
Daid 724f5aa36b Update on makefile for moved Arduino addons. 12 years ago
daid303 6d9dfa96c3 Move the Arduino related stuff out of the Marlin tree, as they are not directly related to Marlin functionality but addons for the Arduino IDE. Also split up the addons for pre 1.0.0 Arduino and post 1.0.0 Arduino. 12 years ago
daid303 3fb07d9b8d Add MINTEMP/MAXTEMP error to LCD, and fix temperature bug with more then 1 extruder. 12 years ago
daid303 82c8724b33 Fix compile with PID_DEBUG 12 years ago
daid303 9b160972a1 Merge branch 'Marlin_v1' of github.com:ErikZalm/Marlin into Marlin_v1 12 years ago
daid303 e036750bdf Use the disable macros on initialization. Which fixes a bug when there is no pin defined for stepper enabled (motherboard 4) 12 years ago
Daid fcd9de72ef Merge branch 'Marlin_v1' of github.com:ErikZalm/Marlin into Marlin_v1 12 years ago
Daid 32d4373e0f Add printrboard and brainwave to Makefile. 12 years ago
daid b3ddbcee2a Merge pull request #329 from jcrocholl/Marlin_v1
Add Printrboard and Brainwave to pins.h and fastio.h
12 years ago
Daid 29435dfb4b Proper avr for Sanguino in Makefile. 12 years ago
daid303 52158dffcc Big temperature code update. No longer converts back and forwards between temperature and raw sample value. Reducing complexity, removing code. Also named some variables better. While keeping the safety intact and functionality the same. 12 years ago
Daid ca7acbe6d9 Allow specification of which arduino hardware subvariant in Makefile. 12 years ago
Johann Rocholl 33247733e0 Teensylu and Printrboard use different analog pins for thermistors. 12 years ago
Johann Rocholl 621c24a10f AT90USB is only defined after pins.h is included. 12 years ago
Johann Rocholl 6cba11f087 Stop redefining MOTHERBOARD and #define AT90USB instead. Also put #ifndef AT90USB around the HardwareSerial_h trick, so now Printrboard / Brainwave support compiles on Arduino 1.0.2 as well. 12 years ago
Johann Rocholl 4d351b4846 Improved formatting and comments for consistency. 12 years ago
Johann Rocholl a30007caa4 If fastio.h is not messed up then Teensylu and Printrboard are actually using the same pins. 12 years ago
Johann Rocholl 6aa87a7b67 Use the same fastio.h definition for AT90USB1286/7 and AT90USB646/7. 12 years ago
Johann Rocholl b1c38d4c82 Avoid compiler warnings (redefined MOTHERBOARD) in Arduino 1.0 and greater. 12 years ago
Johann Rocholl 42e21bb06e Add support for Printrboard (from https://github.com/lincomatic/Marlin) and Brainwave (from https://github.com/metrix/Sprinter). 12 years ago
Johann Rocholl ce4b5bbeaa Add AT90USB646 support from Sprinter to fastio.h. 12 years ago
Daid f413aa33b3 Small makefile change, posibility to add defines on the commandline, and fix compiling with watchdog enabled when using the Makefile. 12 years ago
daid303 587154c01b Fix the WATCHPERIOD implementation. It did not work correctly in a multi extruder setup, it did not work after 32 seconds after startup (int16 used as millies timestamp). And it did not work if you gave an M104 or M109 when the target was already around the target setpoint. So on average, it did not work at all. The new implementation should be robust in detecting a failure to heat up. 12 years ago
daid303 1f27870d41 Fix compiling the watchdog error message when the manual reset watchdog is used. 12 years ago
daid303 c5d4225804 Mistake there, not sure why I did that. My bad. 12 years ago
daid303 529748894c Minor changes in the temperature code for some cleanup. 12 years ago
daid303 4e26ecc940 The Partial release message (which does not really tell you anything) overwrites the final print time on the LCD, which is a real shame. So I removed the message. 12 years ago
daid303 c421774422 The Partial release message (which does not really tell you anything) overwrites the final print time on the LCD, which is a real shame. So I removed the message. 12 years ago
daid303 16078e47d4 Fixed #325 12 years ago
daid303 6a9bee27cc Changed the naming of some LCD functions, so the names match better what the function does. Also moved around some prototypes for general cleanup. 12 years ago
daid303 94ea26ff46 Some minor changes on code style. And a bugfix where the counters for positioning in the stepper where wrong depending on compiler settings. (Caused strange values to reported back with M114 and endstop triggers). Also fixed compiling with FWRETRACT enabled. 12 years ago
daid303 6c51fe5039 Fix the bug where the SD percentage calculation is wrong when the file is larger then 42MB 12 years ago
brupje 57429cb9fe Fix for keypad 12 years ago
daid303 97fa2a9c30 Few simple fixes that save RAM, as static strings are stored in RAM by default. 12 years ago
Daid c94ca24adc Fixed #317 12 years ago
Daid 99e9554edd Some fixes in the Makefile to support Arduino 1.0.0 or higher and added the Rambo. Still needs some more work for the different arduino hardware variants. 12 years ago
Erik vd Zalm dbbf050005 More rambo fixes 12 years ago
Erik vd Zalm f934d0ef5b Merge remote-tracking branch 'tonokip/Marlin_v1' into Marlin_v1
Conflicts:
	Marlin/Configuration.h
12 years ago
Erik vd Zalm e48dfcc2b3 Tmp copy before merge 12 years ago
Erik vd Zalm b98fb17fe9 Small FREQUENCY_LIMIT changes 12 years ago
daid bce67ec2c9 Merge pull request #312 from gege2b/Marlin_v1
Added french translation
12 years ago
Gege 9b1d2483a0 I hope last changes to french translation 12 years ago
Gege b1adc567da Correction to french translation (non-ASCII chars only) 12 years ago
Gege 0807d82af0 Correction to french translation (plain text only) 12 years ago
Erik vd Zalm 5cd7a90b32 Added new temperature lookup table creation tool. This one uses stein hart-hart equations.
You need 3 temperature resistance:combinations. This gives a better result then using beta.
12 years ago
gege2b bb119739b0 Added french translation 12 years ago
daid df8dd5ac21 Merge pull request #306 from nothinman/Marlin_v1
Added automatic build numbering.
12 years ago
MaikStohn 2b7b1e52b1 allow marlin internal 0°C represenation 12 years ago
Martin Lukasik 2f771b3979 Added automatic build numbering. 12 years ago
daid 9bebe9b631 Merge pull request #302 from nothinman/Marlin_v1
Added Polish translation. Cosmetic changes to English.
12 years ago
daid303 a2032afa3a Fixed #303 12 years ago
Martin Lukasik 6a55ca8370 Added Polish translation. Cosmetic changes to English. 12 years ago
daid303 8f20562f49 Fix some of the crowded code style. And fixed the conditional. #300 12 years ago
daid303 43018a48c4 Fix for a few -Wextra warnings. 12 years ago
daid303 72586eb30a Solved few warnings. 12 years ago
daid303 7a02ba361c Header multiple include protection should match the filename, not just _ARDUINO_H, which is almost bound to go wrong some day. 12 years ago
daid303 f4a89ec776 SDCARDINSERTED is always defined, and thus we do not need the #ifdefs. 12 years ago
daid303 57834776ad Made the 2nd speed lookup table condition more explicit. 12 years ago
Daid caa2b25b40 Fix Gen7 compile if you have avr-libc version 1.7.1 or higher. See http://code.google.com/p/arduino/issues/detail?id=604 12 years ago
daid303 a27fef8750 Store the pre-heat constants outside of the ULTIPANEL define, so we can use them when storing EEPROM in a build without the ULTIPANEL. 12 years ago
daid303 789be03b4f Update on makefile, should make it easier to compile for different boards without changing the makefile. (Still missing Arduino 1.x.x support). 12 years ago
daid303 40ce057a3e Fixing issue #297 12 years ago
daid303 625ac81acc Yes, makes sense, lets NOT use the value directly from the configuration define but modify it before setting it. This will not confuse people (including me) at all! 12 years ago
daid303 ffc69537aa Update on some comments, make the MOTHERBOARD list complete again. 12 years ago
daid303 71efcfc648 Most likely fixing issue #295. 12 years ago
daid303 04be9d6001 God damn. Sorry, my mistake, forgot to add this file. 12 years ago
daid303 c17da4b707 Add ConfigurationStore to the Makefile. 12 years ago
daid ccd9fd0dc3 Merge pull request #292 from jothan/lcdfix
Lcd fixes
12 years ago
Jonathan Bastien-Filiatrault 46b9988e26 Search and replace failure. 12 years ago
Jonathan Bastien-Filiatrault 0f73afb0b0 Avoid defining overriding definitions for the RepRapDiscount Smart
Controller. Remove common definitions. Harmonize declaration order.
12 years ago
Jonathan Bastien-Filiatrault 36b452c7ac Remove abbrs. 12 years ago
YanFM 332344bd43 Update Marlin/language.h
Included Portuguese language
12 years ago
daid303 e6c1cadea0 Set the watchdog to a 4 second timeout, as with 1 second it can timeout during SD card init. 12 years ago
daid faea7d72b8 Merge pull request #290 from buildrob/Marlin_v1
Clean up special serial port cases
12 years ago
daid303 12a4d60e18 Fix the EEPROM storage, no longer inline it at multiple locations, and remove the template. 12 years ago
Jonathan Bastien-Filiatrault 9606f4d04f Include Marlin_main.cpp in source files. 12 years ago
Jonathan Bastien-Filiatrault 3cbaad9288 RepRapDiscount Smart Controller pin definitions. 12 years ago
Robert F-C 99692dc99e Clean up special serial port cases
Assume SERIAL_PORT 0 if not defined. Collapse un-numbered register
special case. Clarify comments.
12 years ago
daid303 5a998558a9 Update suggested by Robert F-C. #289 12 years ago
daid303 f6ff0ab767 signed/unsigned fixes. 12 years ago
daid303 5d471e0f34 Also reset the PID values to defaults. Fixes #281 12 years ago
daid303 d3ebc34958 Hopefully also support chips with a single UART in MarlinSerial now. 12 years ago
daid303 b6ff45254e Better explain the watchdog "problem" and rename the config define so it explains that the feature belongs to the watchdog. 12 years ago
daid303 7e348fcb5f By mistake enabled the watchdog by default. This should be off by default. 12 years ago
daid303 06b58a9c4f First cleanup. Moved all code to cpp files, so there are no dependencies on pde files. And no more odd requirement to cat files together. (Still need to fix the Makefile). Also cleaned up some defines and made defines upper case as by C coding conventions. 12 years ago
daid 539f3b3fe4 Merge pull request #284 from brackendawson/Marlin_v1
Use the right pins for Gen7 1.4
12 years ago
Robert F-C 65c9a0728f Set default serial port back to 0. 12 years ago
Robert F-C ab9d183024 Make serial port configurable.
This change makes the choice of serial port configurable so that
wireless capability can be easily added by connecting Bluetooth modules
(such as BlueSmirf or JY-MCU) to the expansion port pins.
12 years ago
Bracken Dawson f5631a89e8 Add dummy Emergancy Pin to Gen7 1.4
Change required after pulling from ErikZalm.
12 years ago
Bracken Dawson a4f9e1ebf2 Merge git://github.com/ErikZalm/Marlin into Marlin_v1 12 years ago
Bracken Dawson 2873d67b17 Put bogus temp override back in Gen7 up to 1.3
Took out the ifdef when I split 1.4 out and forgot to permanently
define it for <=1.3.
12 years ago
ErikZalm a7e40b2903 Merge pull request #276 from setar/Marlin_v1
Fix num of digits on LCD for E and Z axis.
12 years ago
MaikStohn 6ed02c86be Fixed wrong code (will not even compile when EXTRUDERS>2) 12 years ago
Sergey Taranenko 2a67363e27 Fix ‘prog_uchar’ definition in LiquidCrystalRus.cpp 12 years ago
Sergey Taranenko 205304ddee Merge git://github.com/ErikZalm/Marlin into Marlin_v1 12 years ago
Erik vd Zalm 58bca87c72 fix LCD temp bed artifacts on power up ' B022/0.) -> B022/000 ' 12 years ago
Erik vd Zalm febeb43197 Revert "fix LCD temp bed artifacts on power up ' B022/0.) -> B022/000 '"
This reverts commit cb02c2f9d8.
12 years ago
Sergey Taranenko 8178dec4c3 Fix num of digits on LCD for E and Z axis.
The number of steps per mm often contains 4 digits before the decimal point and does not require precision greater than 0.1
12 years ago
ErikZalm 70f57a6844 Merge pull request #273 from setar/Marlin_v1
fix LCD temp bed artifacts on power up ' B022/0.) -> B022/000 '
12 years ago
ErikZalm ff14199e58 Merge pull request #270 from jothan/Marlin_v1
Create an explicit rule for building applet/Marlin.cpp.
12 years ago
Daniele Sdei 695938ba3f Italian language support 12 years ago
Sergey Taranenko cb02c2f9d8 fix LCD temp bed artifacts on power up ' B022/0.) -> B022/000 ' 12 years ago
Jonathan Bastien-Filiatrault e4a5e333ef Generalize. 12 years ago
Jonathan Bastien-Filiatrault e10d3136c8 Create an explicit rule for building applet/Marlin.cpp.
It would seem that the pattern matches do not work when the source
file is created when make is running. The result of this is that it is
necessary to run "make" twice to build the firmware.

This adds an explicit rule without a pattern match for building
applet/Marlin.cpp it corrects the make behaviour at the cost of adding
a little redundancy in the Makefile.
12 years ago
ErikZalm 9f089756b7 Merge pull request #265 from setar/Marlin_v1
Added Russian translation
12 years ago
brupje 326423719f Add support for Megatronics 12 years ago
brupje d07b6e93d5 Add support for Megatronics 12 years ago
Sergey Taranenko efcc28d347 Fix check for include LiquidCrystalRus.h 12 years ago
Sergey Taranenko cfc193cdac Enables support the Cyrillic alphabet for LCD 12 years ago
Sergey Taranenko 24bcc9647d Added Russian translation 12 years ago
Mark Finn bf7e453d02 Unwanted artifacts from unclean merge of bed-pid tree 12 years ago
ErikZalm 36a746d7d5 Merge pull request #244 from markfinn/pidbed
PID for heated bed
12 years ago
elgambitero df09e2adce Spanish updated 12 years ago
elgambitero ddf6603d81 Spanish language updated. Bug fixes on dialogs. 12 years ago
elgambitero 4bf8b1aeee fesfas 12 years ago
drakelive be1e099f1b Union whit Erick version 12 years ago
elgambitero 7afd202b89 New dialogs translated to spanish. Bug fixes.
Dialogs from M119 translated, and "Set Preheat" dialogs adapted to the
screen size.
12 years ago
elgambitero ebc4601185 Some new dialogs translated to Spanish 12 years ago
drakelive c8ea9b0e58 Merge branch 'Marlin_v1' of https://github.com/Drakelive/Marlin 12 years ago
drakelive ca7ca4572e primo commit 12 years ago
johnnyr 8016f058bc fix max endstop pins 12 years ago
Mark Finn d197f8504b clean up and changes from testing 12 years ago
Mark Finn eb06a886c4 missed 12 years ago
Mark Finn 04631d2250 cleanup for pull 12 years ago
Mark Finn 0a5ad3ab85 move comment to correct place 12 years ago
ZetaPhoenix 8ac5b29e02 Changes to M119 response for easier visual comparison
Changed to report on individual lines with "TRIGGERED" or "open" instead of "H" or "L" on one line as H&L could be confused with logic levels High and Low which may be wrong if using inverted logic.  Added strings to language.h.

Fixed typo "deu" in English language that was fixed in #134 but got added back in via 9f7f7354f5
12 years ago
ZetaPhoenix c6caa45ae2 Limit Switch locations based on MIN/MAX limits and homing direction
fixes #246
Added statements to set the limit switch positions to the maximum travel if homing in the positive direction as well as bed center at (0,0) if defined.
Relocated code based on feedback.
12 years ago
ZetaPhoenix dc566d654f fixes #246
Added statements to set the limit switch positions to the maximum travel if homing in the positive direction as well as bed center at (0,0) if defined.
12 years ago
ErikZalm ba898faa7d Merge pull request #249 from gwelchc/patch-2
Slight modification for byte savings
12 years ago
ErikZalm 0152ee71a5 Merge pull request #248 from gwelchc/patch-1
Binary representation for characters in ultraldc.pde
12 years ago
G. W. C. 6ccbfeb80c Update Marlin/Marlin.pde
Added function 'setTargetedHotend' that turns into a function an operation repeated 3 times through the M-codes processing.

This modification saves a few bytes that can be used to add support for new commands.
12 years ago
G. W. C. c433142abf Update Marlin/ultralcd.pde
The joris' char drawins are expressed in binary so to show their content's in a more visual fashion.

This is not a code modification as much as a readibility modification.
12 years ago
andrey-vasilyev 1d389ad3a8 Fix M81 not working reliably on Gen7
Some discussion of the issue is here http://forums.reprap.org/read.php?181,118329,page=1
12 years ago
Mark Finn 9698f4ea64 bed pid
Conflicts:

	Marlin/Configuration.h
12 years ago
drakelive e5c39b7c2a commit 12 years ago
ZetaPhoenix e8c92e0a95 Missing #else in temperature.cpp prevented reading bed temp when TEMP_BED_PIN <7. Thanks to Leland Wallace for helping me track this down via "Sesame Street" coding (what is not like the other) 12 years ago
drake bf2071871c Merge branch 'Marlin_v1' of https://github.com/Drakelive/Marlin 12 years ago
drake fc32e20881 first commit 12 years ago
Erik vd Zalm abf0693e8e Added KILL_PIN -1 to gen7 boards 12 years ago
Erik vd Zalm 47319cf64e Fixed typo in SF arc fix code. 12 years ago
Erik vd Zalm e358a2d7af Added fix for SF Arc Point fillet procedure 12 years ago
ErikZalm 044a64a1fb Merge pull request #225 from Justblair/Marlin_v1
Added PDF file containing Menu Tree for documentation purposes.
12 years ago
Drakelive d728e35658 Update Marlin/pins.h 12 years ago
tonokip 1c1fddc7ac Added support for the Rambo reprap electronics board. Added Mcodes to set
motor current and microstepping pins.
12 years ago
Blair Thompson dcd3e8a211 Tidy up 12 years ago
Blair Thompson ddd9d0cfd4 Added PDF file containing Menu Tree for documentation purposes. Source xlsx document included. 12 years ago
Erik vd Zalm 0e58ef6805 Some dialogs are corrected 12 years ago
Erik vd Zalm 0e89022cc3 Correct temptable_55 name. 12 years ago
Bracken Dawson 47d4f55bc0 Fix Gen7 1.4 pinout
Gen7 1.4 uses very different pin assignments, might as well make a new
section and remove some of the conditionals from each. It's easier to change
your pin assingment this way if like me you don't wire it exactly to plan.
12 years ago
elgambitero 6cd150842f Update Marlin/language.h
Some dialogs corrected and Default language set to 1
12 years ago
elgambitero 299c18596f Update Marlin/language.h
Some dialogs are corrected
12 years ago
ErikZalm b86336c3f5 Merge pull request #221 from daid/Marlin_v1
Long filename support for LCD display
12 years ago
daid b69e75c89a Added long filename support. 12 years ago
stohn 1d224cc031 merged with upstream and FIXED AGAIN bad translation commit
PLEASE BE MORE CAREFUL WHEN SUBMITTING NEW TRANSLATIONS

When you add new menu items / messages always copy them to ALL
languages (just use english)
12 years ago
stohn 06c03fe2f0 new method for message for making KILLED message visible
The cli(); at the start of the kill() function also stops the internal
arduino timer which stops updating of millis() which prevents the
display of the "KILLED." message.
The new function updates the display directly without checking any
timers.
12 years ago
daid 87ff61a8a6 Fix for #201 12 years ago
Blair Thompson aacbebbebe Added Menu Options to the Main-> Control->Temperature Submenu that allow the user to set new values for the ABS and PLA preheat function. EEPROM updated so that these settings can also be committed to EEPROM memory. 12 years ago
stohn 31873ec707 changed int to long to overcome overflow of number display
- related bug reports: Issue #201, Issue #213
12 years ago
stohn de0448343f added KILL_PIN support / cleaned up manage_inactivity function definition 12 years ago
stohn 69961dbba3 fixed incorrect menu messages from last commit...
- removed several multiple definitions of same message
- fixed definition of missing messages in german and spanish
- tweaked german translation (a lot)
- added note about changing and testing this file
12 years ago
Blair Thompson 6c050b8440 Fixes error introduced at commit aee475aa55 which caused the sketch not to comile for language option 1. Several defines were removed but still referenced in ultralcd.pde 12 years ago
Blair Thompson b9f9f8f7d3 The pre-heat ABS and PLA options in the LCD Menu were broken a while back. The pre-heat worked fine, but the cooling fans were not switching on as intended. This is now fixed. 12 years ago
elgambitero d38b96fff1 Update Marlin/language.h 12 years ago
Erik vd Zalm 9f7f7354f5 Set default language 1 12 years ago
elgambitero aee475aa55 Update Marlin/language.h
Spanish language included. It features the LCD screen messages and a small part of the Serial messages.
12 years ago
Erik vd Zalm 9083966c22 Do not use feedrate multiiply on Z and E only moves. 12 years ago
Erik vd Zalm 5406c533db Disable FAST_PWM by default. On some systems it does not work ok. 12 years ago
Erik vd Zalm f92dc91c3d Enable M503 also when eeprom is disabled 12 years ago
James Adams 35a1dd081f no message 12 years ago
James Adams 5131ab19ca Fixed Retract in LCD Menu 12 years ago
James Adams 96f4f90cb3 Added pause and retract lcd menu items 12 years ago
James Adams e10355500d Updated Language.h with pause, resume, and retract 12 years ago
ErikZalm a97c006bbf Merge pull request #195 from kobaan/Marlin_v1
Updated german translations in language.h
12 years ago
ErikZalm f062794a0d Merge pull request #208 from Enchiridion/Marlin_v1
Added support for dual Z axis stepper drivers
12 years ago
ErikZalm 57468d3c21 Merge pull request #210 from Dabble63/Marlin_v1
Add Duty Cycling to the Heater Bed
12 years ago
Dabble63 6b45e9f167 Add Duty Cycling to the Heater Bed 12 years ago
Ian Jackson adee81170d M206: save values in eeprom
Really, we should have a way to adjust the XYZ homing of a machine in
the eeprom.  So as the second stage of this, make the M206 home offset
parameters subject to the M500/M501/M502/M503 eeprom commands.

Bump the eeprom version to "V06".

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
12 years ago
Ian Jackson 1dba212e18 HOMEAXIS: make into a function
Replace the large macro HOMEAXIS with a function.  This avoids the
compiler generating three copies of largely identical code.  The
saving is 724 bytes of program memory.

We make use of XYZ_CONSTS_FROM_CONFIG to provide convenient
array-shaped access to MAX_LENGTH, HOME_RETRACT_MM and HOME_DIR.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
12 years ago
Ian Jackson 7bb326d389 eeprom: provide smaller code for SERIAL_ECHOPAIR
SERIAL_ECHOPAIR implies, eventually, two calls to MYSERIAL.print.  One
of these has FORCE_INLINE for a per-character loop, and both involve
constructing a method call rather than a simple function call.

Produce better and smaller code by providing three specialised
functions serial_echopair.  This saves 672 bytes of program memory
(with EEPROM_SETTINGS and SDSUPPORT enabled).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
12 years ago
Ian Jackson 957e966d2d M206: always use homing ("homeing") offsets
Previously the parameters set in M206 would only be used if a G82
command was sent with specific axis home values.  This limits its
usefulness.

Really, we should have a way to adjust the XYZ homing of a machine in
the eeprom.  So as the first stage of this, make M206 affect every
home command.  The values set using M206 are now added to the
configuration variables [XYZ]_HOME_POS.

This is achieved by replacing all uses of [XYZ]_HOME_POS in the code
by a new home_pos[] which includes the adjustment.  We also have to
adjust the uses of [XYZ]_{MIN,MAX}_POS similarly - see below.


To allow axis_is_at_home to be written as a function taking an axis
index rather than a macro taking an axis letter, we provide
constant arrays in program memory containing the values of
[XYZ]_{MIN,MAX,HOME}_POS from the compiled-in configuration.

This is done with some helper macros to deal with the declaration
(XYZ_CONSTS_FROM_CONFIG) and definition of the inline function which
does the program memory access.

We also introduce the overloaded function read_pgm_any, whose
instances are produced with DEFINE_PGM_READ_ANY, which allows the
access functions to automatically produce the correct type.

The type- and pointer-massaging code in the access function boils
down, when compiled, to a simple program memory access.


A question arises: if the M206 offset is set, should this adjustment
to the home position shift or change the possible range of movement
permitted by the software endstops ?

The documentation in Configuration.h describes these limits as:
    // Travel limits after homing
Since this is a file containing physical limits, and actual suggested
values for these configuration parameters appear to include a certain
amount of slop, I've taken the view that these should be regarded as
nominal physical distances from the limit switches, and that the
permissible travel should be unaffected by M206.

So for example with the (rather unrealistic)
  #define X_HOME_DIR -1
  #define X_MIN_POS -20
  #define X_HOME_POS 0
  #define X_MAX_POS 100
no matter the setting of M206 X, the machine would be permitted
to move from 20mm "beyond" the limit switch trigger point in
the negative X direction and 100mm away from the limit switch in
the positive X direction, for a total travel of 120mm.

With M206 X-10 that would be considered to correspond to X coordinates
-30 to +90.  With M206 X+10 that would be considered to correspond to
X coordinates -10 to +110.


fixes #200 (in ErikZalm/Marlin).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
12 years ago
Ian Jackson faccb35850 software_endstops: use *_MIN_POS and *_MAX_POS for arcs
If [XYZ]_HOME_POS and [XYZ]_MIN_POS aren't 0, these corrections are
wrong.  Use the same logic as in Marlin.pde:prepare_move: ie, clamp to
[XYZ]_{MIN,MAX}_POS.

While we're here, put this cut-and-paste code in a function
clamp_to_software_endstops.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
12 years ago
Ian Jackson 3f15b7c7b8 Makefile: Better display of size (device memory usage)
Run avr-size with the --mcu=... -C option as well.  That reports how
much actual device program and data memory is used along with a
percentage fullness.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
12 years ago
Ian Jackson 0c35facc94 Makefile: support V=1
Often it can be useful to see the actual commands being run by make.
Other projects (eg, the Linux kernel) support this with a "V=1" make
parameter.  Do the same here.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
12 years ago
Ian Jackson 71404eef29 .gitignore: Add *~, *.orig, *.rej, move to root directory
Move the .gitignore out of the Marlin subdirectory so it applies to
the whole tree, and add some missing patterns.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
12 years ago
Ian Jackson a873541ef6 Marlin.pde: include comment for emacs mode
Emacs by default doesn't recognise a ".pde" file as C++ source code.
Add the annotation to the top of the file to make it work.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
12 years ago
Enchiridion 50cde90324 Added support for dual Z axis stepper drivers 12 years ago
kobaan 603a5e25b3 Updated german translations in language.h and eliminated a few double lines. 13 years ago
Chris Palmer 538189cc19 Fixed soft limits when the origin is in the middle.
HOME_POS is now always where the endstop is and can be outside the limits.
The limits are now defined by MIN_POS and MAX_POS rather than HOME_POS and MAX_LENGTH.
The Z is axis now homed first if direction is away from the bed.

Saguinololu limit pins change from MIN to MAX according to the homing direction.
13 years ago
ErikZalm 686011a548 Fixed typo 13 years ago
Erik van der Zalm cd57bf305b Merge git://github.com/daid/Marlin into Marlin_v1
Added invert step pins to corexy code
13 years ago
Erik van der Zalm ea2c19f978 Added CoreXY support (Thanks Ilan Moyer) 13 years ago
Erik van der Zalm aa65fe22ed decoupled axes sucessfully at least on pure x or y jog 13 years ago
daid 12de8fff81 Support step motor controllers with active low step pins. 13 years ago
Erik van der Zalm b67dacdc8f Fixed AD595 define 13 years ago
Bernhard d3002ef741 corrected retract 13 years ago
Bernhard 0c123950e9 __ header file replace 13 years ago
Bernhard bf077125b9 added firmware retract. disabled by default 13 years ago
Bernhard 0e5e249ab5 added individual pullup setting option to have finer control in case there is a special z-min sensor, for example 13 years ago
Bernhard Kubicek 6b14f95b3e Merge pull request #170 from linagee/Marlin_v1
Marlin v1
13 years ago