Commit Graph

905 Commits

Author SHA1 Message Date
Scott Lahteine
5b248757c7 Level Bed in Prepare submenu
- Add “Level Bed” menu item for auto bed leveling
- Hide the option if homing has not been done yet
- Arrange the Prepare submenu more logically (?)
- Add documentation comments, some white-space
- Apply some coding standards here and there
- Move old encoder multiplier debug option to `ultralcd.cpp`
2015-04-27 19:11:25 -07:00
Steve Kelly
98ca46006c Allow Y to home before X with option in Configuration_adv.h.
This addresses comments in #1956 and #1079. In particular, this is useful
when both endstops are stationary on a CoreXY system, and the Y axis needs
to be homed before the X so the flags are aligned.
2015-04-27 16:17:30 -04:00
Scott Lahteine
0fca084ea6 Make EEPROM reproducible in GCode
With these changes the output of `M503 S0` is all you need to restore
the EEPROM. Building on this it is straightforward to save and restore
the EEPROM state using the SD card or external GCode file.

- Added `M145` to set “heatup states” for the LCD menu
- Added `M420` to toggle Mesh Bed Leveling
- Added `M421` to set a single Mesh coordinate
- Extended `Config_PrintSettings` with added M codes
- Cleaned up some comments here and there
2015-04-26 20:56:33 -07:00
Wurstnase
92575cecca new timout/add adv_ok 2015-04-20 00:22:40 +02:00
Wurstnase
b09a957fce make 'wait' optional and mark as workaround 2015-04-16 21:42:54 +02:00
Scott Lahteine
7d2c2f1790 Updates for the configurator
- Sections in all `Configuration_adv.h`
- Recognize JAPANESE/WESTERN/CYRILLIC options
- Better capturing of comments for tooltips
2015-04-06 23:16:01 -07:00
Richard Wackerbarth
46474cf2f2 Incorporate @section headers from configurator 2015-04-05 22:39:40 -05:00
Scott Lahteine
0e8182bbf2 Additional pin tests, cleanup 2015-04-03 15:31:35 -07:00
Wurstnase
67d5e7973e old bump_divisor for cartesian/corexy-printer
some people are starting to ask why homing is so slow. this is the old standard hard-coded value.
2015-04-01 20:17:49 +02:00
Scott Lahteine
ba2c7cb467 Update configs with all the latest 2015-03-30 23:24:33 -07:00
wurstnase
a4ad9117dd comment #define Z_DUAL_STEPPER_DRIVERS 2015-03-25 13:46:29 +01:00
alexborro
0ce3576685 New Feature: Z_DUAL_ENDSTOPS
Z_DUAL_ENDSTOPS is a feature to enable the use of 2 endstops for both Z
steppers - Let's call them Z stepper and Z2 stepper.
That way the machine is capable to align the bed during home, since both
Z steppers are homed.
There is also an implementation of M666 (software endstops adjustment)
to this feature.
After Z homing, this adjustment is applied to just one of the steppers
in order to align the bed.
One just need to home the Z axis and measure the distance difference
between both Z axis and apply the math: Z adjust = Z - Z2.
If the Z stepper axis is closer to the bed, the measure Z > Z2 (yes, it
is.. think about it) and the Z adjust would be positive.
Play a little bit with small adjustments (0.5mm) and check the
behaviour.
The M119 (endstops report) will start reporting the Z2 Endstop as well.
2015-03-24 14:06:44 -03:00
Scott Lahteine
2c9bd15625 Move LCD items to Conditionals.h
- `Conditionals.h` is included twice, setting LCD values the first time
2015-03-21 15:24:57 -07:00
Scott Lahteine
b6d381f863 Divide up Conditionals to get LCD items early 2015-03-20 02:50:28 -07:00
Scott Lahteine
670006b919 Remove invariant code from Configurations
- Add `Conditionals.h` with calculated configuration values
- Add `SanityCheck.h` with checks for configuration errors
- Remove equivalent code from all configurations
- Move error checks from some sources to `SanityCheck.h` also
- Fix initialization of count_direction in stepper.cpp
2015-03-19 22:22:23 -07:00
Scott Lahteine
08694339eb Merge branch 'Development' into marlin_configurator
Conflicts:
	Marlin/Configuration.h
2015-03-11 15:47:32 -07:00
Scott Lahteine
e4d77a6313 Merge pull request #1554 from 2PrintBeta/Development
Macro indirection for stepper drivers + Support for TMC26X and L6470 Stepper Drivers
2015-03-11 15:31:57 -07:00
alexborro
60ceca1bc1 Add speed configuration for home-bumping movement 2015-03-10 14:08:32 -03:00
Scott Lahteine
0f3b7d5575 Update annotated configurations
- Also update base configs
2015-03-07 01:07:40 -08:00
domonoky
443e7edef4 - Add support for L6470 Drivers.
- Both TMC, L6470 and pin-driven drivers work.
- All can be mixed and matched as needed.
2015-02-27 12:43:23 +01:00
domonoky
38500165ea First attempt at adding TMC Driver support. May need some cleanup. 2015-02-23 17:45:29 +01:00
Scott Lahteine
27ac3e985d Add options to example_configurations 2015-02-21 18:17:37 -08:00
wgm4321
b8e79dce89 Fix compilation errors when encoder multiplier is disabled 2015-02-19 21:51:23 -05:00
wgm4321
65e1fc71be Add encoder rate multiplier 2015-02-19 21:42:57 -05:00
AnHardt
07e488cfae Fix for #1485 2015-02-10 00:13:46 +01:00
MagoKimbra
986e723eeb Add 4th extruder 2015-01-24 13:37:58 +01:00
Scott Lahteine
3a9a3e5ed8 Fix Issue #1356 – remove EXTRUDER1_Z_OFFSET
This define is not used.
2015-01-23 10:51:06 -08:00
Scott Lahteine
326b925557 DOGLCD and LCD_PROGRESS_BAR to coexist
Small changes (and formatting to confuse the diff’er) which first
allows DOGLCD and LCD_PROGRESS_BAR to be enabled in tandem, then a
#warning (rather than error) that the extra progress bar / message
options don’t apply to graphical displays at this time. This leaves
open perhaps combining the progress bar and message area in some future
(or forked custom) graphical LCD display arrangement (at which time the
relevant variables may be moved into ultralcd.cpp with externs in
ultralcd.h). I also added a conditional error that the progress bar and
the filament display may not work well together.
2015-01-09 18:16:56 -08:00
alexborro
3afe66bb0c Fix issues #1248, #1240
- Fixed issue when BAL area probing is shorter than it should be for
grid probing
- Warning when BAL activated with Delta Kinematics
- Fix XY_TRAVEL_SPEED when homing Z axis
2014-12-28 13:27:39 -02:00
Scott Lahteine
2f467e2797 LCD Progress Bar 2014-12-27 22:26:14 -08:00
daid
17de96ace7 Merge branch 'Marlin_v1' into revert-1154-sd_sorting
Conflicts:
	Marlin/cardreader.cpp
	Marlin/cardreader.h
2014-12-18 23:13:50 +01:00
Scott Lahteine
07c6b5ab71 Using axis constants 2014-12-18 08:13:08 -08:00
alexborro
ab355a90d3 Revert "SD Sort and Buffer" 2014-12-17 14:50:59 -02:00
Scott Lahteine
29e854c535 Disable SDCARD_SORT_ALPHA by default
For legacy boards it’s better if this option is disabled.
2014-12-13 06:12:34 -08:00
Scott Lahteine
6599adc184 Polish up a little... 2014-12-13 06:12:34 -08:00
Scott Lahteine
0cbbba08bd SD Card Alpha Sorting
First iteration of alphabetical sorting for SD cards, both
slow+efficient and fast+rammy. Option for folders to sort first, last,
or not at all.
2014-12-13 06:03:39 -08:00
Bo Herrmannsen
c429a4b3ec Toshiba Stepper Driver support
Tosh stepper drivers need to be driven slower, so the stepper code
was interleaved to separate the pin HIGH from the pin LOW. This adds
enough instructions to make it work, without needing nops.
2014-12-03 14:37:16 +01:00
Dim3nsioneer
3c927901a4 Implementation of FW extruder change retract
FW retraction is extended onto swap retraction invoked by 'G10 S1'.
Bookkeeping of the retract state of all extruders allows for having one
extruder fw standard retracted while another extruder is swap retracted.
An LCD menu item for the swap retract and recover length was added.
2014-06-02 17:02:10 +02:00
MyMakibox
e4dc80d3d3 Update Configuration_adv.h
Corrected error in AUTOTEMP instructions
2014-04-23 17:30:07 +08:00
nothinman
357b87b498 Merge pull request #826 from paciotti/patch-1
Configuration_adv.h
2014-04-13 00:22:25 +01:00
nothinman
c23376f2e7 Merge pull request #837 from whosawhatsis/fwretract
FWRETRACT in mm/s
2014-04-04 11:47:58 +01:00
ErikZalm
a00cec8b71 Merge pull request #833 from mattsch/optional_feedrate_multiplier
Add support for disabling encoder control for feedrate multiplier
2014-03-15 15:41:45 +01:00
whosawhatsis
aab61e63c3 FWRETRACT in mm/s
Firmware retraction now stores the retract and recover speeds in mm/s
instead of mm/min. This makes it match the units of the maximum
feedrate, and fixes problems with modifying the value via LCD control
panel. From gcode, the values are still taken in mm/min to match the
units of G1 and similar, and they are converted to mm/s before they are
stored.

I also lowered the default retract feedrate to make it less likely to
cause problems for geared extruders when the user hasn’t bothered to
set a reasonable maximum feedrate, though users should be setting both
of these values to suit their hardware.
2014-03-14 15:17:28 -07:00
Matthew Schick
6cd85e6008 Add support for disabling encoder control for feedrate multiplier
Signed-off-by: Matthew Schick <matthew.schick@gmail.com>
2014-03-12 18:13:50 -04:00
blddk
765b2da3d4 Added CHDK support
Added so M240 can be used to trigger CHDK instead of sending an IR signal, see more about CHDK here http://captain-slow.dk/2014/03/09/3d-printing-timelapses/
2014-03-10 21:52:33 +01:00
paciotti
881e348eed Update Configuration_adv.h
Increase Z_HOME_RETRACT_MM to 2mm default to avoid end stop not switching during retract.
2014-03-08 22:35:05 +01:00
daid
46bae30573 Merge pull request #776 from whosawhatsis/fwretract
Fwretract fixes, cleanup
2014-02-18 10:39:28 +01:00
whosawhatsis
99f0e44864 Move FWRETRACT defaults to configuration_adv.h 2014-02-16 19:00:28 -08:00
Mark Hanford
ab0d3c4fb3 Various typo fixes - only in comments, no code changes. 2014-02-14 11:48:24 +00:00
Jim Morris
d485988bec fix typo 2014-02-05 14:39:45 -08:00
Jim Morris
8a1fd25363 Default is to not define digipot_i2c 2014-02-05 14:28:23 -08:00
Jim Morris
b819fc53ca Add Azteeg X3 Pro as motherboard 68
Add digipot i2c control for MCP4451
Allow M907 to set i2c digipot currents in amps
Fix Makefile to allow Azteeg motherboards
Fix Makefile to allow Wire libraries only
Add beeper pin for Azteeg X3 Pro
2014-02-05 01:47:12 -08:00
RicardoGA
d29615dc0c Z and Y dual stepper drivers error
if you try to enable Z_DUAL_STEPPER_DRIVERS the error "You cannot have dual drivers for both Y and Z" shows even if you don't have defined Y_DUAL_STEPPER_DRIVERS and don't let you compile the firmware

to solve this problem i change this line:

#ifdef Z_DUAL_STEPPER_DRIVERS && Y_DUAL_STEPPER_DRIVERS

to:

#if defined (Z_DUAL_STEPPER_DRIVERS) && defined (Y_DUAL_STEPPER_DRIVERS)

now the error only show if you define both Z_DUAL_STEPPER_DRIVERS and Y_DUAL_STEPPER_DRIVERS
2013-12-11 14:37:43 -06:00
Erik van der Zalm
a94e588765 Changed slow buttons behavior. 2013-11-17 17:41:30 +01:00
Erik van der Zalm
69af392554 Added HEATERS_PARALLEL (Request from reifsnyderb)
This allows a hot end with two heaters and a FET for each heater. This is useful if the FET is not capable of heating two heaters.
2013-11-17 13:29:02 +01:00
fmalpartida
b5a964fcc5 Initial SAV MkI (RepRap CloneWars board) integration.
Included support for BT dongle on AT90USB boards.
Added LCD Shift Register LCD control
Included support for RepRap Clone Wars project board (SAV MKI).
2013-10-30 11:45:32 +01:00
Erik van der Zalm
457d8a0acb Fixed merge conflicts 2013-10-20 09:50:27 +02:00
Alex Borro
dd3086d3f2 Show Temperature ADC values
If "SHOW_TEMP_ADC_VALUES" is defined in Configuration_adv.h, the M105
command will present, after tradicional temperatures, the ADC value read
from temp sensors. This is great for adjusting thermistor tables with
thermocouple.

From Pronterface you can see the ADC value and compare with a
thermocouple reading.. then you just need to create your own thermistor
table.

Since this merge doesnt change the original information, it doesnt mess
with PC software parsing (tested under Pronterface and Repetier-Host).
2013-10-12 10:41:23 -03:00
bkubicek
7fad13a1e2 Reverse SD card file name order.
This is _not_ automatically the cronological, since deleting a file will free
the filesystem descriptor for it, which then will be used by the next file copied on it.
Since this makes the auto0.g file very inaccessible, I put the option back, to have it in the prepare menu.

this should satisfy https://github.com/ErikZalm/Marlin/pull/373

as a reminder, auto0.g will be executed every time after a boot with sd card present and file present.
thereafter, if there is a file auto1.g this will be done. Thats IMHO the best place to put settings, and prepare heating.
I also execute again after each (now again via the prepare menu) before starting a new print/ after a failed one.
It for me 100% replaces any start.gcode form the slicers.
2013-10-12 13:24:55 +02:00
bkubicek
b832f5b9f6 added delta tower babystepping. Its untested, but hopefully florian horsch will be able to try.
also, removed some trouble for compilation with corexy.
I think that babystepping is only possible in z for a delta tower.
not sure if it would be usefull to step individual motors on a delta, i don't own one
2013-10-07 09:14:04 +02:00
bkubicek
c38b0855c8 I think that filament change is ready for the masses. I have tested very often with my ultimaker.
I strongly vote for it being a single gcode, because otherwise the triggering from the menu is terrible.
2013-10-06 21:20:26 +02:00
bkubicek
d147a057ac Add the socalled "Babystepping" feature.
It is a realtime control over the head position via the LCD menu system that works _while_ printing.
Using it, one can e.g. tune the z-position in realtime, while printing the first layer.
Also, lost steps can be manually added/removed, but thats not the prime feature.
Stuff is placed into the Tune->Babystep *

It is not possible to have realtime control via gcode sending due to the buffering, so I did not include a gcode yet. However, it could be added, but it movements will not be realtime then.

Historically, a very similar thing was implemented for the "Kaamermaker" project, while Joris was babysitting his offspring, hence the name.

say goodby to fuddling around with the z-axis.
2013-10-06 21:14:51 +02:00
Richard Miles
77df2ab0e7 Make Y_DUAL_STEPPER_DRIVERS disabled by default 2013-09-17 21:49:44 +01:00
Richard Miles
ed1ab42186 Added Y_DUAL_STEPPER_DRIVERS
Enables two stepper drivers to be used for the Y axis (useful for
Shapeoko style machines)
Each Y driver can be stepped in either the same way or in opposite
directions, accounting for different hardware setups (leadscrew vs. belt
driven)
2013-09-17 19:19:20 +01:00
Richard Miles
f4a59e4ce5 Revert "Added Y_DUAL_STEPPER_DRIVERS"
This reverts commit 7ee275b620.
2013-09-17 19:05:49 +01:00
Richard Miles
7ee275b620 Added Y_DUAL_STEPPER_DRIVERS
Enables two stepper drivers to be used for the Y axis (useful for
Shapeoko style machines)
Each Y driver can be stepped either the same way or in opposite
directions, accounting for different hardware setups (leadscrew vs. belt
driven)
2013-09-17 19:02:00 +01:00
Robert F-C
9547fb9dfb Add duplication and auto-park mode for dual x-carriage support. 2013-08-08 00:10:26 +10:00
Nicolas Rossi
394ed08f88 Added feedrate setting for manual moves from panel 2013-07-30 14:33:30 +02:00
Robert F-C
c3568398b5 Disable DUAL_X_CARRIAGE by default 2013-07-20 23:50:30 +10:00
Robert F-C
39cd3dbdbe Remove dual x-carriage functionality that could/should be implemented in slicer
Also added a couple of missed merge lines in homeaxis() from previous
commit.
2013-07-20 13:07:50 +10:00
Robert F-C
d7390e13d9 Support dual x-carriage printers
Dual x-carriage designs offer some substantial improvements for dual
extruder printing.
2013-07-17 22:44:45 +10:00
Erik van der Zalm
c4a2077951 M109 and M190 now wait when cooling down if R is used instead of S.
M109 S180 waits only when heating.
M109 R180 also waits when cooling.
2013-07-14 21:10:24 +02:00
Scott Lahteine
5dabc95409 Apply all changes from latest Marlin_V1
Diffed and merged, preserving my updates
2013-06-06 15:49:25 -07:00
Bernhard
1d06b10962 Added a feature to have filament change by gcode or display trigger.
[default off for now]
syntax: M600  X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal]

if enabled, after a M600, the printer will retract by E, lift by Z, move to XY, retract even more filament.
Oh, and it will display "remove filament" and beep like crazy.

You are then supposed to insert a new filament (other color, e.g.) and click the display to continue.
After having the nozzle cleaned manually, aided by the disabled e-steppers.
After clicking, the printer will then go back the whole shebang, and continue printing with a fancy new color.
2013-01-27 13:21:34 +01:00
daid303
0f3f5d083d Minor cleanup of the new FAN_KICKSTART code. #334 2013-01-10 11:08:45 +01:00
Kevin O'Connor
3d91bd486c Add "kick fan" feature - briefly run fan at full speed on start.
Add a feature to run the cooling fan at full speed for a small period
(default 100ms) when first starting the fan.  Some fans wont reliably
start spinning at low power, and many fans have issue with the PWM at
low power.  However, once the fan starts spinning it can reliably be
set to a wide range of PWM values.
2013-01-08 18:50:15 -05:00
daid
27843388c6 Merge pull request #360 from njprossi/Marlin_v1
Power signal control definitions for other power supplies
2013-01-08 02:58:02 -08:00
daid303
921273baa0 Added optional feature to stop printing when an endstop is hit. Made the Z display on the LCD in 3.2 format instead of 3.1. Added LCD message when and endstop is hit. 2013-01-08 11:53:18 +01:00
Nicolas Rossi
f3c1fc70a9 Power signal control definitions for ATX and others 2013-01-07 14:33:30 +01:00
Johann Rocholl
1f45cb0a51 Fix typo in MANUAL_HOME_POSITION (plural S missing) and improve comments. 2012-12-11 01:54:40 -08:00
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. 2012-12-06 10:36:07 +01:00
Erik vd Zalm
f934d0ef5b Merge remote-tracking branch 'tonokip/Marlin_v1' into Marlin_v1
Conflicts:
	Marlin/Configuration.h
2012-11-21 20:36:30 +01:00
daid303
f6ff0ab767 signed/unsigned fixes. 2012-11-06 15:33:49 +01:00
daid303
b6ff45254e Better explain the watchdog "problem" and rename the config define so it explains that the feature belongs to the watchdog. 2012-11-06 13:33:00 +01:00
daid303
7e348fcb5f By mistake enabled the watchdog by default. This should be off by default. 2012-11-06 13:20:08 +01:00
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. 2012-11-06 12:06:41 +01:00
ErikZalm
36a746d7d5 Merge pull request #244 from markfinn/pidbed
PID for heated bed
2012-10-08 11:15:16 -07:00
Mark Finn
04631d2250 cleanup for pull 2012-09-17 14:17:24 -05:00
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.
2012-09-15 15:25:49 -07:00
tonokip
1c1fddc7ac Added support for the Rambo reprap electronics board. Added Mcodes to set
motor current and microstepping pins.
2012-08-30 00:16:57 -07:00
Enchiridion
50cde90324 Added support for dual Z axis stepper drivers 2012-08-04 00:32:26 -06:00
daid
12de8fff81 Support step motor controllers with active low step pins. 2012-06-29 16:27:47 +02:00
Bernhard
0c123950e9 __ header file replace 2012-06-02 20:44:17 +02:00
Bernhard
bf077125b9 added firmware retract. disabled by default 2012-06-02 20:32:28 +02:00
Erik van der Zalm
67cf105bc6 Fixed AUTOTEMP (M109 S215 B260 F1 starts autotemp)
Changed SLOWDOWN. IF this does not work ok OLD_SLOWDOWN is the old algo.
2012-04-15 19:17:33 +02:00
Erik van der Zalm
4ca2f336f0 Changed default MINIMUM_PLANNER_SPEED -> 0.05
Fixed small bug in arcs
M105 prints now actual_temp/target_temp
2012-04-01 16:23:40 +02:00
Bernhard
1532200435 found error in filenames.
One array was too short. This had nothing to do with long filenames, other than if they were 12 characters exactly, which could only happen if the extension and the text before were filled completely
2012-03-19 20:06:58 +01:00
Erik van der Zalm
87ff2f8867 Added CONTROLLERFAN. (Controlling a fan to cool down the steppper drivers) 2012-03-11 10:44:10 +01:00
Erik van der Zalm
c6f2ec3c82 remove stop_heating_wait 2012-02-27 18:45:45 +01:00
Erik van der Zalm
018c567abf Moved SLOWDOWN function. (jetty840)
Included AD595 calibration options. (daid)
2012-02-26 16:23:47 +01:00
Blair Thompson
d9f2f509d5 Added new menu items under the prepare submenu.
Instead of a single pre-heat, now there is pre-heat ABS and PLA options
Added defines to the configuration file to adjust preheat temperatures for both
2012-02-22 22:51:04 +00:00
Erik van der Zalm
8816ef1c64 Small fixes after merge 2012-02-21 20:36:43 +01:00
Erik van der Zalm
13e185d330 removed unused HEATING_EARLY_FINISH_DEG_OFFSET
Simplified stepper inactive time
2012-02-11 23:22:16 +01:00
Erik van der Zalm
5113513cb2 RC 1 2012-02-08 18:28:54 +01:00
Erik van der Zalm
d8a0c6450f Split the configuration file in two parts.
One for common settings.
One for advanced settings.
2012-02-07 20:23:43 +01:00