Commit graph

27 commits

Author SHA1 Message Date
Bo Herrmannsen
ab074dac17 Merge pull request #1344 from grob6000/independent_pid
Independent PID parameters for each extruder
2015-01-13 12:10:37 +01:00
odewdney
538859669d Removing compiler warnings for progmem 2015-01-11 18:14:21 +00:00
grob6000
bf2c923db5 Make multiple PID parameters a config option
* Adds config parameter `PID_PARAMS_PER_EXTRUDER` - allows single PID
parameters to be used where this would be preferable (e.g. dual
identical extruders)
* When disabled, will use `float Kp, Ki, Kd, Kc;` as before.
Preprocessor macros used to switch between.
* ultralcd.cpp defines extra menus for extra parameters only where
required
* M301 reports `e:xx` only if independent pid parameters enabled
* EEPROM structure still leaves space for 3 extruders worth, when undef
will save single parameter to all extruder positions, but only read the
first
* Switching off saves approx 330 B with no LCD enabled, 2634B with LCD
(RRD) enabled: this is significant.
* LCD modifications should be tested.
2015-01-11 13:50:17 +11:00
grob6000
3e2af67ce3 Fix R-H compatibility
* R-H reads incorrect M301 line from EEPROM output if more than one is
present. Reverted to original output format, using only E0 value.
2015-01-10 16:44:28 +11:00
grob6000
37c7e8300f Independent PID parameters for each extruder
* Variables Kp, Ki, Kd, Kc now arrays of size EXTRUDERS
* M301 gains (optional, default=0) E parameter to define which
extruder's settings to modify. Tested, works with Repetier Host's EEPROM
config window, albeit only reads/updates settings for E0.
* All Kp, Ki, Kd, Kc parameters saved in EEPROM (version now v14), up to
3 extruders supported (same as Marlin in general)
2015-01-10 16:35:12 +11:00
wgm4321
d60efc3b5d Fix syntax error caused by previous changes. 2014-12-28 20:47:59 -05:00
wgm4321
cb12161191 Add Filament menu and add Filament/Retract settings to config store. 2014-12-28 20:43:14 -05:00
Matthew Schick
0468f81950 Update for pull request #837 2014-12-28 11:22:44 -05:00
Matthew Schick
6e42c9e305 Add fwretract settings to M503 output 2014-12-28 11:22:44 -05:00
alexborro
d74aabf259 Revert "Change Auto_Bed_Leveling to Auto_Bed_Compensation" 2014-12-21 10:06:05 -02:00
John Davis
7464d3c96a Update ConfigurationStore.cpp
Changed AUTO_BED_LEVEL to AUTO_BED_COMPENSATION
2014-12-19 17:08:43 -05:00
Scott Lahteine
07c6b5ab71 Using axis constants 2014-12-18 08:13:08 -08:00
Scott Lahteine
f989bd5435 Simple code cleanup. Rename "homeing" to homing. 2014-10-05 13:20:53 -07:00
cocktailyogi
512f2a3136 restore Branch from Backup
sorry for that
2014-06-23 17:09:57 +02:00
Erik van der Zalm
fcd8524b6e Only increase EEPROM version for DELTA printers. 2014-02-26 17:29:27 +01:00
Jim Morris
af9395ac2e Add M605 to dynamically set delta configuration
Save above configs in eeprom
fix docs in createTemperatureLookupMarlin.py
add missing azteegX3pro digipot settings in delta example config
2014-02-17 20:50:59 -08:00
l.lefebvre
fdac8f6cec Update ConfigurationStore.cpp
Unable to compile if ENABLE_AUTO_BED_LEVELING is not set (not set by default).
2014-01-17 16:09:58 +01:00
Alex Borro
05932e4458 Add Z Probe Offset to EEPROM and Ultra LCD 2014-01-16 18:13:46 -02:00
Erik van der Zalm
3626b5ad8b Removed Delta from the default config file.
Changed EEPROM CHITCHAT behavior. M503 is always enabled.
2013-09-14 13:50:09 +02:00
Peter Hercek
9aa2229077 add command M666 for adjusting delta printer endstop position 2013-08-28 01:15:20 +02:00
Michael Mayer
e509cdbeb0 added contrast control function for gLCDs 2013-07-14 15:28:26 +07:00
Stefanowicz
31bb3fb297 Fix: Build error when EEPROM_SETTINGS is defined and PIDTEMP is undefined 2013-04-12 18:04:32 +02:00
Simon Oliver
93f0463b21 Allow Edit menu to call fn after edit; Fix PID Ki and Kd display in menus; Actually use changed PID and Max Accel values
Add new 'callback' edit-menu types that call a function after the edit is done. Use this to display and edit Ki and Kd correctly (removing the scaling first and reapplying it after). Also use it to reset maximum stepwise acceleration rates, after updating mm/s^2 rates via menus. (Previously, changes did nothing to affect planner unless saved back to EEPROM, and the machine reset).

Add calls to updatePID() so that PID loop uses updated values whether set by gcode (it already did this), or by restoring defaults, or loading from EEPROM (it didn't do those last two). Similarly, update the maximum step/s^2 accel rates when the mm/s^2 values are changed - whether by menu edits, restore defaults, or EEPROM read.

Refactor the acceleration rate update logic, and the PID scaling logic, into new functions that can be called from wherever, including the callbacks.

Add menu items to allow the z jerk and e jerk to be viewed/edited in the Control->Motion menu, as per xy jerk.

Conflicts:
	Marlin/language.h
2013-04-12 13:31:30 +02:00
Daid
c94ca24adc Fixed #317 2012-11-24 17:32:30 +01:00
daid303
40ce057a3e Fixing issue #297 2012-11-10 14:37:01 +01:00
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! 2012-11-09 22:36:31 +01:00
daid303
04be9d6001 God damn. Sorry, my mistake, forgot to add this file. 2012-11-07 23:16:43 +01:00