Commit graph

5574 commits

Author SHA1 Message Date
esenapaj
ef97645002 Follow-up the PR #5255 (Case light menu (3rd attempt)) 2016-11-24 19:42:05 +09:00
Scott Lahteine
2a9b3376a9 Merge pull request #5289 from thinkyhead/rc_which_menu_actions
Drop "static" keyword in ultralcd.cpp function declarations
2016-11-23 23:04:05 -06:00
Scott Lahteine
b97dafe4b8 Drop "static" keyword in ultralcd.cpp function declarations 2016-11-23 20:43:01 -06:00
Scott Lahteine
2e966f8e5b Patch Capabilities Report for "PROGRESS" 2016-11-23 19:31:46 -06:00
Scott Lahteine
f60321d3e3 Merge pull request #5284 from thinkyhead/rc_turkish_update
Turkish update (squashed)
2016-11-23 14:57:52 -06:00
Mehmet Sutas
a26668b10c Add UTF8 Turkish Translation 2016-11-23 14:19:16 -06:00
Mehmet Sutas
61aa796307 Added Human Readable Comments 2016-11-23 14:19:16 -06:00
Mehmet Sutas
6fb9c6fe07 Follow-up for #5167 Turkish Language
Add check for Turkish Font before setting better font for graphic displays
2016-11-23 14:19:15 -06:00
Scott Lahteine
d891324830 Merge pull request #5258 from mosh1/mbl_speed_fix
Fix z feedrate value when doing mesh bed leveling. probe feedrate use…
2016-11-23 14:15:01 -06:00
Scott Lahteine
7f8133a51f Merge pull request #5255 from Kaibob2/CaseLightMenu
Case light menu (3rd attempt)
2016-11-23 13:46:33 -06:00
Kai
e9b42f4f47 Update language_de.h 2016-11-23 19:29:19 +01:00
Kai
0c341f0c50 Added Menu entry for Case light 2016-11-23 19:29:15 +01:00
Scott Lahteine
3bc2273ac9 Comment M540 2016-11-21 18:08:00 -06:00
Scott Lahteine
14b74181f5 Merge pull request #5179 from thinkyhead/rc_TMC2130
TMC2130 "Silent StepStick" support
2016-11-21 14:10:52 -06:00
Scott Lahteine
bb2114a060 Merge pull request #5264 from thinkyhead/rc_delta_safe_zone
Add an option for delta to home to the top
2016-11-21 13:56:44 -06:00
Scott Lahteine
38466b1d2f Merge pull request #5271 from esenapaj/Fix-for-the-PR-#5267
Fix for thePR #5267 (Introduce a +1234.56 format for over 999 steps/mm)
2016-11-21 13:55:56 -06:00
Scott Lahteine
9b96a4a53b Merge pull request #5246 from thinkyhead/rc_some_cleanup
Minor stepper cleanup
2016-11-21 13:55:25 -06:00
Sebastianv650
8190483eeb Improvement for ENSURE_SMOOTH_MOVES
Instead of waiting for a single long block, compare the complete block
buffer runtime for the long_move() check.
2016-11-21 17:58:24 +01:00
esenapaj
da67037550 Fix for thePR #5267 (Introduce a +1234.56 format for over 999 steps/mm)
・Fix memory leak
2016-11-21 22:31:01 +09:00
Scott Lahteine
0f891e848b Merge pull request #5268 from esenapaj/Update-Japanese-translation
Update Japanese translation
2016-11-21 03:18:36 -06:00
esenapaj
190a04c467 Update Japanese translation
・Change translation for 16 width LCD
2016-11-21 17:51:43 +09:00
esenapaj
7b836a4000 Introduce a +1234.56 format for over 999 steps/mm 2016-11-21 17:45:07 +09:00
Scott Lahteine
3e0376b45e Reorder M114 and M119 gcode cases 2016-11-21 00:52:19 -06:00
Scott Lahteine
644fac5d34 Reduce all stepper_indirection init code with macros 2016-11-21 00:52:18 -06:00
Scott Lahteine
4e4f37b6c2 Code formatting for TMC and L6470 config options 2016-11-21 00:52:18 -06:00
Scott Lahteine
127e21ae00 Extend M122 for all steppers 2016-11-21 00:52:18 -06:00
Scott Lahteine
bf5f5f44cc Make TMC2130 init code auto-configure
Simply apply enabled settings instead of requiring users to edit
stepper_indirection.cpp
2016-11-21 00:52:17 -06:00
Moritz
d67c1d825f Add TMC2130 support 2016-11-21 00:17:45 -06:00
Scott Lahteine
11effeee2c Add an option for delta to home to the top 2016-11-20 23:12:07 -06:00
Sebastianv650
50059690e0 Allow UART ISRs inside the stepper ISR
If the stepper ISR takes too long, chars are lost which leads to serial
communication errors like "Line number not +1" or "Wrong checksum". In
worst case, the printer can even do crazy moves.

With this changes, UART interrupts are handled inside the stepper ISR.
This way, no chars should be lost.
2016-11-20 13:09:12 +01:00
Moshen Chan
29b174bfb9 Fix z feedrate value when doing mesh bed leveling. probe feedrate uses XY_PROBE_SPEED 2016-11-19 16:34:41 -08:00
AnHardt
88b38eafd8 Endstop interrupt refinement
At the start of a move, check if the endstops are already triggered.
The 'change' interrupts will not see a change if already triggered.
2016-11-19 13:30:49 +01:00
Scott Lahteine
79c8591192 Merge pull request #5253 from thinkyhead/rc_smooth_move_ex-lax
Ensure smooth print moves even with LCD enabled
2016-11-19 01:38:41 -06:00
Scott Lahteine
0215cacb30 Merge pull request #5247 from esenapaj/Re-follow-the-PR-#4634
Re-follow the PR #4634 (Set language display charset in language.h)
2016-11-19 01:32:40 -06:00
Scott Lahteine
2cc32d85a3 Adjust ENSURE_SMOOTH_MOVES coding style 2016-11-19 01:28:48 -06:00
Scott Lahteine
072541f286 Update ENSURE_SMOOTH_MOVES in all configs 2016-11-19 01:28:47 -06:00
Sebastianv650
de89dc9f04 Ensure smooth print moves even with LCD enabled
lcd_update can take so much time that the block buffer gets drained if
there are only short segments. This leads to jerky printer movements for
example in circles and a bad print quality.

This change implements a simple check: Only if the block currently
executed is long enough, run lcd_update.
This also means the printer will not show actual values on the LCD nor
will it respond to buttons pressed. A option that keeps the menu
accessible is also available.
Aditionaly, slow down if a block would be so fast that adding a new
block to the buffer would take more time. In this case, the buffer would
drain until it's empty in worst case.
2016-11-19 01:28:47 -06:00
Scott Lahteine
87b6b19256 Patch CASE_LIGHT typo 2016-11-18 23:49:12 -06:00
Scott Lahteine
0be6167f14 Merge pull request #5250 from CONSULitAS/RCBugFix_K8200_backinsync_2016-11-18
K8200: Example configuration back in sync
2016-11-18 22:49:18 -06:00
Scott Lahteine
eb714ee873 Move dummy thermistor opts, fix redundant sensor comment 2016-11-18 22:24:48 -06:00
Scott Lahteine
7a99c6ce4f Reformat temp sensor listing 2016-11-18 22:24:47 -06:00
Scott Lahteine
181cdb3cfe Move GCode list above include lines 2016-11-18 22:24:46 -06:00
Scott Lahteine
25d0c167bd More detailed static_assert messages 2016-11-18 22:24:46 -06:00
Scott Lahteine
eb120e518c Followup to new endstop interrupts feature
- Fix typos, verbiage
- Fix naming of `setup_endstop_interrupts`
- Some formatting, indentation, spacing
2016-11-18 21:53:45 -06:00
Scott Lahteine
832fe284b4 Merge pull request #5184 from AnHardt/endstop_interrupts
Introduce endstop interrupts
2016-11-18 20:50:24 -06:00
CONSULitAS
cbae44df64 K8200: Example configuration back in sync
Configuration.h: back in sync, new features configured
Configuration_adv.h: back in sync, new features configured
README.md: text updated
2016-11-18 22:55:02 +01:00
esenapaj
5db3738fe7 Re-follow the PR #4634 (Set language display charset in language.h) 2016-11-18 17:44:49 +09:00
Scott Lahteine
6eb6f12c64 Patch up some language formatting 2016-11-18 01:16:58 -06:00
Bo Herrmannsen
8cffa60cc5 Update to Danish language 10/11-2016 2016-11-18 01:16:57 -06:00
Scott Lahteine
98600e1433 Minor stepper cleanup 2016-11-18 01:15:57 -06:00
Florian Heilmann
d08867986e Add autotemp capabilities to M104
This allows M104 to pass the F and B parameters to enable autotemp as well
2016-11-17 11:28:19 -06:00
Sebastianv650
c11b2bb777 Bugfix LIN_ADV
Advance has nothing todo with Z_AXIS, strange copy&paste error?
2016-11-17 11:28:19 -06:00
Scott Lahteine
ee0765e872 Merge pull request #5233 from esenapaj/Update-Japanese-translation
Update Japanese translation
2016-11-17 03:38:19 -06:00
Scott Lahteine
2330619da0 Merge pull request #5191 from petrzjunior/const
Replace const bool with #define for consistency
2016-11-17 03:37:32 -06:00
esenapaj
b278b7a395 Update Japanese translation
Only adjust spacing
2016-11-17 09:05:51 +09:00
Petr Zahradník junior
d7ce5d271b
Replace const bool with #define for consistency 2016-11-16 18:55:21 +01:00
Scott Lahteine
d63230d73e Merge pull request #5192 from Kaibob2/patch-7
Printer Stats / Completed prints line doesn't fit in display (when german)
2016-11-16 00:16:36 -06:00
Scott Lahteine
548b45026d Merge pull request #5214 from Sebastianv650/RCBugFix_planner_opt
Save some cycle inside the planner
2016-11-16 00:06:55 -06:00
Scott Lahteine
5d23e52d75 Merge pull request #5228 from thinkyhead/rc_keep_last_mix
Fix DIRECT_MIXING_IN_G1 to preserve the previous mix
2016-11-15 19:12:01 -06:00
Scott Lahteine
db47aa983d Merge pull request #5226 from mtowara/RCBugFix
bump -std in Makefile to c++11
2016-11-15 16:13:32 -06:00
Scott Lahteine
99b0c1fe56 Fix DIRECT_MIXING_IN_G1 to preserve the previous mix 2016-11-15 16:12:26 -06:00
Markus Towara
23a675f621 reduce binary size of .hex
still a few bytes bigger than with arduino but nothing major
2016-11-15 21:57:15 +01:00
Markus Towara
5b6e2cecf5 bump c/c++ standard to gnu11
needed for constexpr
2016-11-15 21:54:12 +01:00
Scott Lahteine
410657b050 Fix G30 with limits, print correct probe XY 2016-11-15 14:10:28 -06:00
AnHardt
f3eee02596 Introduce endstop interrupts
If ENDSTOP_INTERRUPTS_FEATURE is enabled this tries to set up interrupt routines
for all used endstop pins. If this worked without errors, `endstops.update()` is called
only if one of the endstops changed its state.

The new interrupt routines do not really check the endstops and react upon them. All what they
do, is to set a flag if it makes sense to call the endstop test we are used to.

This can be used on:
* ARM (DUE) based boards - all pins can raise interrupts,
* RAMPS - all 6 endstop pins plus some other on EXT-2 can raise interrupts,
* RAMPS based boards - as long the designers did not change the pins for the endstops or at least left enough,
* all boards, if there are enough pins that can raise interrupts, and you are willing/able to swap with pins dedicated to other purpose.
2016-11-15 12:07:41 +01:00
Sebastianv650
e3ffb58fbd Save some cycle inside the planner
planner.h:
fan speed is used to set integer variables, so no need for long.
Basicaly a byte should be enough for all the fan things, as it's 0-255?

planner.cpp:
Save some float multiplications.
We could squeeze out even more by defining feedrate_percentage,
saved_feedrate_percentage and flow_percentage as float instead of int.
Everytime they are used in the time-critical planner, they are casted to
float and multiplied by 0.01. Not done jet, as they are used in LCD menu
functions I don't know well enough.
2016-11-13 13:34:12 +01:00
Scott Lahteine
665b7f3893 Merge pull request #5212 from thinkyhead/rc_mixing_faster
Store mix factors as reciprocals and multiply
2016-11-12 18:47:11 -06:00
Scott Lahteine
60cc9342a4 Merge pull request #5188 from thinkyhead/rc_extended_host_support
Extended host support: M155 Auto temp report, M115 capabilities
2016-11-12 15:38:06 -06:00
Scott Lahteine
f663220e87 Store Mix factors as reciprocals and multiply 2016-11-12 15:19:18 -06:00
Scott Lahteine
ea3c08d249 Merge pull request #5186 from esenapaj/Follow-up-the-PR-#5167-etc
Follow up the PR #5167 (Add Turkish Language) again, etc
2016-11-12 13:11:54 -06:00
Scott Lahteine
c488378532 Merge pull request #5205 from Sebastianv650/RCBugFix_stepperpatch
Remove useless line from stepper ISR
2016-11-12 12:43:07 -06:00
Michael Neumann
8bdf303da0 Update pins_MEGATRONICS_3.h 2016-11-12 12:26:07 +01:00
Michael Neumann
3890366c83 Update pins.h 2016-11-12 12:25:45 +01:00
Michael Neumann
c0d45ca7f2 Update boards.h 2016-11-12 12:24:47 +01:00
Sebastianv650
cdc18f8c22 Remove useless line from stepper ISR
The flag is already set inside planner.get_current_block(). Doing it
twice isn't making it better..
2016-11-11 19:35:03 +01:00
Kai
8e8b4398f3 Printer Stats / Completed prints line doesn't fit in display (when german) 2016-11-09 22:03:25 +01:00
Scott Lahteine
b31a07e261 Stateful M355 with separate P parameter 2016-11-09 03:28:18 -06:00
Scott Lahteine
3c9a838651 Extended capabilities report in M115 2016-11-09 02:32:58 -06:00
Scott Lahteine
68b866b5dd Add M155 - Auto-report temperature with interval 2016-11-09 02:32:58 -06:00
Scott Lahteine
68b46fb2c9 Allow send to i2c address 0 (broadcast) 2016-11-08 17:54:55 -06:00
Scott Lahteine
75bfde9945 M155=>M260, M156=>M261 2016-11-08 17:54:54 -06:00
esenapaj
2ae72b0491 Follow up the PR #5167 (Add Turkish Language) again, etc
・Update forgotten K8400\Dual-head\Configuration.h
・Adjust spacing
2016-11-09 06:31:21 +09:00
Scott Lahteine
06f2282f82 Merge pull request #5176 from thinkyhead/rc_filchange_feedback
Give instant feedback for filament change
2016-11-07 12:11:54 -06:00
Scott Lahteine
dcfd7c69e8 Merge pull request #5163 from nzinov/RCBugFix
Improve G30 probing command - add optional arguments
2016-11-07 11:37:13 -06:00
Scott Lahteine
e765eebfb0 Patch spacing in bilinear grid report 2016-11-07 04:08:25 -06:00
Scott Lahteine
7780052fb3 Give instant feedback for filament change 2016-11-07 03:48:16 -06:00
esenapaj
24e3f7abe7 Update Turkish translation
・Add new translation
2016-11-07 04:59:18 +09:00
esenapaj
be48792e9c Follow up the PR #5167 (Add Turkish Language), etc
・Remove all the #ifndef
・Follow the PR #4603 (Strip never-translated strings from language
files)
・Follow the PR #4634 (Set language display charset in language.h)
・Follow the PR #4936 (Put max_jerk vars in array, clean up jerk code)
・Adjust spacing
2016-11-06 23:59:02 +09:00
Scott Lahteine
1864b282c5 Implement reversed CORE options 2016-11-05 23:47:51 -05:00
Scott Lahteine
e3c8318504 Add reversed CORE options 2016-11-05 23:47:46 -05:00
Rigid3D
2327764980 Add Turkish Language 2016-11-05 21:06:16 -05:00
Nikolay Zinov
dea00bbcf1 improve G30 probing
Add optional parameters
X, Y for probe point
S sets stowing on and off
2016-11-05 13:22:45 +03:00
Scott Lahteine
00662b8635 Minor babystep cleanup patches 2016-11-03 23:31:45 -05:00
Scott Lahteine
cad792e702 Reduce code for invariant lcd_detected 2016-11-03 23:31:45 -05:00
Scott Lahteine
b23d255491 Move macros above Stepper::babystep 2016-11-03 23:31:45 -05:00
Scott Lahteine
cc57d46158 Fix set_position for CoreYZ 2016-11-03 23:31:45 -05:00
Scott Lahteine
0269347682 Merge pull request #5141 from thinkyhead/rc_old_slowdown_what
OLD_SLOWDOWN does nothing, so remove it
2016-11-03 23:30:43 -05:00
Scott Lahteine
e92e2b2446 Merge pull request #5144 from Sebastianv650/RCBugFix_LIN_ADV_wipe
Account for wipe moves
2016-11-03 23:19:25 -05:00
Scott Lahteine
176aeafc19 Don't define bilinear_line_to_destination on kinematic setups 2016-11-03 14:10:07 -05:00
Sebastianv650
d448500643 Account for moves with negative E movements
Added a rule so that LIN_ADVANCE isn't used for moves with negative E movements (de_float will be negative in this cases).
I also added a more detailed comment to make it more clear what the if statement does.
2016-11-03 17:01:17 +01:00
Scott Lahteine
236853df22 Corrections to bilinear_line_to_destination
- Allow more than 9x9 probe points
- Account for the probe starting position
2016-11-03 04:43:59 -05:00
Scott Lahteine
0115e495fe Fix up Dual X switch blocks 2016-11-02 21:38:50 -05:00
Scott Lahteine
2495ab7af2 Make dual_x_carriage_mode an enumeration 2016-11-02 21:38:49 -05:00
Scott Lahteine
d6c36f5bb9 Fix Z raise with DXC_AUTO_PARK_MODE 2016-11-02 21:36:50 -05:00
Scott Lahteine
0c79553fc5 Cast int to AxisEnum for some accessors 2016-11-02 17:42:24 -05:00
Scott Lahteine
adbf1f7dca Add M355 to the GCodes list. 2016-11-02 16:43:52 -05:00
Scott Lahteine
63efc10599 Merge pull request #5134 from thinkyhead/rc_bilinear_split_lines
Split cartesian moves on grid boundaries with bilinear ABL
2016-11-02 16:14:55 -05:00
Scott Lahteine
12167bc8f3 OLD_SLOWDOWN does nothing, so remove it 2016-11-02 01:28:19 -05:00
esenapaj
c8c1a28f6f Follow-up the PR #5089 (Centralize click-handling in the LCD loop)
bool feedback is no longer used
2016-11-02 08:36:02 +09:00
esenapaj
c3a105186d Follow-up the PR #5133 (M355 Case light)
・Add CASE_LIGHT_PIN into pinsDebug.h
2016-11-02 00:31:50 +09:00
Scott Lahteine
ee5b8d6dc8 Split moves on grid boundaries with bilinear ABL on cartesian 2016-11-01 08:25:47 -05:00
Scott Lahteine
66744a6076 Merge pull request #5133 from thinkyhead/rc_M355_case_light
M355 Case light
2016-11-01 07:51:27 -05:00
Scott Lahteine
955d14acb0 Patch photo pin code style 2016-11-01 06:30:14 -05:00
Stanley
ab3f966f5f Case light G-code M355
implemented G-Code M355 into Marlin
2016-11-01 06:30:14 -05:00
Scott Lahteine
8b44413498 Merge pull request #5124 from Sebastianv650/RCBugFix_LIN_ADV-Patch
BugFix for incorrect E-speed calculation
2016-11-01 05:13:17 -05:00
Scott Lahteine
f418e82b15 Remove redundant definition of EN_C 2016-11-01 05:10:07 -05:00
Sebastianv650
f9bea7968f BugFix for incorrect E-speed calculation
The extrusion speed was wrong due to a not high enough precision of
esteps to XY steps, therefore now the target float values are used to
calculate the ratio between XY movement and extrusion speed.
The e_speed_multiplier8 was replaced by an absolute multiplier called
abs_adv_steps_multiplier8, therefore one multiplication and bitshift can
be saved inside the stepper ISR. Due to this, also extruder_advance_k is
better suited inside the planner and not the stepper files any more.
2016-11-01 08:08:47 +01:00
Bob-the-Kuhn
c20b4098be 2 bug fixes & some minor changes
see detailed  description in PR #5118
2016-11-01 01:29:41 -05:00
Scott Lahteine
fa6bf12697 Merge pull request #5118 from thinkyhead/rc_expanded_M43
Enhancements to M43 pins debugging
2016-10-31 08:29:53 -05:00
Scott Lahteine
3a107e280d Developer note in pins_MIGHTYBOARD_REVE.h 2016-10-31 08:22:39 -05:00
Scott Lahteine
85e307dcd8 No FAN0_PIN 2016-10-31 08:08:03 -05:00
Scott Lahteine
ff3a8ca0d1 Use NUM_DIGITAL_PINS instead of custom DIO_COUNT 2016-10-31 08:08:03 -05:00
Scott Lahteine
04a1fac029 Some cleanup to M43 2016-10-31 08:08:03 -05:00
Scott Lahteine
24f6612551 Reduce and optimize endstop_monitor code 2016-10-31 08:08:03 -05:00
Scott Lahteine
b4444e91ae Reduce code and build size of PWM_details 2016-10-31 08:08:02 -05:00
Scott Lahteine
dbe414ef03 Squash redundant code in PWM_status 2016-10-31 08:08:02 -05:00
Scott Lahteine
af26d22741 Clean up some spacing and semantics 2016-10-31 08:08:02 -05:00
Bob-the-Kuhn
81397d7a9a EXTRUDER_x_AUTO_FAN name change to Ex_AUTO_FAN
I stumbled across a name change that'll be used a lot so I'm updateing
the name list.
2016-10-31 08:08:02 -05:00
Bob-the-Kuhn
c7f1f0dae6 Add endstop monitor & make pins report pretty 2016-10-31 08:08:02 -05:00
Scott Lahteine
d567b426d5 Merge pull request #4894 from thinkyhead/rc_mightyboard_rev_e
Mightyboard Revision E preliminary support
2016-10-31 08:01:41 -05:00
Scott Lahteine
43df9ace4e Merge pull request #5110 from thinkyhead/rc_z2_min_allowed
Support Z2 min in M119 report
2016-10-31 07:59:45 -05:00
Scott Lahteine
23f05f8be7 Use bit-length types in block_t 2016-10-30 16:16:29 -05:00
Scott Lahteine
8dc7807d85 Add support for CoreYZ to planner.buffer_line 2016-10-30 16:16:28 -05:00
Scott Lahteine
1cf878fdb1 Calculate dm and e-steps earlier in planner 2016-10-30 16:16:28 -05:00
Scott Lahteine
75dbb71dd7 Replace block.busy with a block.flag bit 2016-10-30 16:16:28 -05:00
Scott Lahteine
c7f22f688f buffer_line can calculate while it's waiting 2016-10-29 17:08:42 -05:00
Scott Lahteine
f3720f4e81 const arguments to test_dual_z_endstops 2016-10-29 16:01:27 -05:00
Scott Lahteine
8cebd2a7db Arrange Z2 min before Z2 max 2016-10-29 01:54:19 -05:00
Scott Lahteine
accabf088a Add support for Z2 min endstop to M119 2016-10-29 01:54:02 -05:00
Scott Lahteine
396434a445 Fix compiler warning in M145 2016-10-28 20:57:36 -05:00
Scott Lahteine
8e787304c9 const float ref args in planner.h 2016-10-28 20:57:36 -05:00
Scott Lahteine
07bfc45df8 Adjust spacing in gcode_M149 2016-10-28 20:57:36 -05:00
Scott Lahteine
1a2310c494 Make LCD preheat vars an array to reduce code size 2016-10-28 20:57:36 -05:00
Scott Lahteine
1226ae1912 Some cleanup in ultralcd.h 2016-10-28 20:57:21 -05:00
Scott Lahteine
50ee749082 Centralize click-handling in the LCD loop 2016-10-28 20:57:21 -05:00
Scott Lahteine
47ad97c35e Merge pull request #5109 from thinkyhead/rc_eeprom_M218_tool_offset
Save hotend_offset array (M218) in EEPROM
2016-10-28 20:08:29 -05:00
Scott Lahteine
bff6bbdb12 Indentation in configuration_store.cpp 2016-10-28 18:55:42 -05:00
Scott Lahteine
97115d56f9 Print error for M500 with disabled EEPROM 2016-10-28 18:53:48 -05:00
Scott Lahteine
67ab54185b Save hotend_offset array (M218) in EEPROM 2016-10-28 18:45:23 -05:00
MagoKimbra
dfcdbb437b Fix Command M420 2016-10-28 20:53:48 +02:00