Commit graph

811 commits

Author SHA1 Message Date
Florian Heilmann a7334fd2a0 Allow negative retract values in the LCD
This can already be done via G-Code, so adding the capability to the LCD should be straight forward.
2016-12-19 14:19:06 +01:00
AnHardt 292eb365c6 Optimize handling of block_buffer_runtime()
millis_t is long - divisions take for ever.

Return a kind of millisecond instead of microsecond -
divided by 1024 instead of 1000 for speed. (2.4% error)

That does not matter because block_buffer_runtime is
already a too short estimation.
Shrink the return-type.
2016-12-19 11:47:28 +01:00
Scott Lahteine 67ca6c7bfe Codestyle tweaks to ultralcd.cpp 2016-12-14 04:20:33 -08:00
AnHardt d0e24e0876 Adaptive screen updates for all kinds of displays
The target here is to update the screens of graphical and char base
displays as fast as possible, without draining the planner buffer too much.

For that measure the time it takes to draw and transfer one
(partial) screen to the display. Build a max. value from that.
Because ther can be large differences, depending on how much the display
updates are interrupted, the max value is decreased by one ms/s. This way
it can shrink again.
On the other side we keep track on how much time it takes to empty the
planner buffer.
Now we draw the next (partial) display update only then, when we do not
drain the planner buffer to much. We draw only when the time in the
buffer is two times larger than a update takes, or the buffer is empty anyway.

When we have begun to draw a screen we do not wait until the next 100ms
time slot comes. We draw the next partial screen as fast as possible, but
give the system a chance to refill the buffers a bit.

When we see, during drawing a screen, the screen contend has changed,
we stop the current draw and begin to draw the new content from the top.
2016-12-13 18:44:34 +01:00
Scott Lahteine 0772c8e55f Merge pull request #5487 from thinkyhead/rc_easier_move_axis
Rearrange Move Menu, Fix up Delta Calibration
2016-12-13 07:07:05 -08:00
Scott Lahteine 93b2833347 Move Menu: Select axis first, resolution after 2016-12-13 03:11:14 -08:00
Scott Lahteine 641e0936d4 Patch up Delta Calibration Menu 2016-12-13 02:42:28 -08:00
Scott Lahteine b4dbf4d18a Non-reentrant "Moving..." screen to safely wait in LCD 2016-12-13 02:42:27 -08:00
Scott Lahteine 2b5d424394 Use handle_reprapworld_keypad for keypad handling 2016-12-13 01:41:08 -08:00
AnHardt cd2b74e88d Replace ftostr62sign with ftostr62rj
`ftostr62sign()` is used only when displaing/editing
Steps/mm. A sign is not needed - the value is always positive.
Because the number part is long there is no't much place for the values name.
With this PR the is one more char for the name possible.
2016-12-12 20:25:20 +01:00
esenapaj a298a58684 Remove redundant "E" 2016-12-09 02:27:34 +09:00
Scott Lahteine 3fb43c11fc Fix compile error with LCD_I2C_VIKI 2016-12-07 23:29:45 -06:00
Scott Lahteine 01e5d46ea7 Patch some planner compile errors 2016-12-07 02:26:24 -06:00
AnHardt a6fbd4a5d8 Distribute GLCD screen updates in time
Currently we draw and send the screens for a graphical LCD all at once.
We draw in two or four parts but draw them directly behind each other.
For the tested status screen this takes 59-62ms in a single block.
During this time nothing else (except the interrupts) can be done.
When printing a sequence of very short moves the buffer drains - sometimes until it's empty.

This PR splits the screen update into parts.
Currently we have 10 time slots. During the first one the complete screen is drawn. (60,0,0,0,0,0,0,0,0,0,0)
Here i introduce pauses for doing other things. (30,30,0,0,0,0,0,0) or (15,15,15,15,0,0,0,0,0,0)
Drawing in consecutive time slots prevents from lagging too much. Even with a 4 stripe display all the drawing is done after 400ms.
Previous experiments with a even better distribution of the time slots like
(30,0,0,0,0,30,0,0,0,0) and (15,0,15,0,15,0,15,0,0,0) did not feel good when using the menu, because of too much lag.

Because of the previous PRs to speed up the display updates and especially reducing the difference between drawing 2 or 4 stripes,
it now makes sense for the REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER to go from 2 to 4 stripes. This costs about 1-2ms per complete
screen update, but is payed back by having partial updates lasting only the half time and two additional brakes. Also ~256 byte of
framebuffer are saved in RAM.

13:45:59.213 : echo: #:17 >:13 s:30;   #:16 >:13 s:29;   S#:33 S>:26 S:59
13:46:00.213 : echo: #:16 >:14 s:30;   #:17 >:13 s:30;   S#:33 S>:27 S:60
13:46:01.215 : echo: #:17 >:13 s:30;   #:16 >:13 s:29;   S#:33 S>:26 S:59
13:46:02.215 : echo: #:16 >:13 s:29;   #:16 >:14 s:30;   S#:32 S>:27 S:59
13:46:03.214 : echo: #:17 >:13 s:30;   #:17 >:13 s:30;   S#:34 S>:26 S:60
13:46:04.214 : echo: #:16 >:13 s:29;   #:16 >:14 s:30;   S#:32 S>:27 S:59
13:46:05.212 : echo: #:16 >:14 s:30;   #:17 >:13 s:30;   S#:33 S>:27 S:60
13:46:06.212 : echo: #:17 >:13 s:30;   #:16 >:13 s:29;   S#:33 S>:26 S:59

03:30:36.779 : echo: #:8 >:7 s:15;   #:10 >:7 s:17;   #:8 >:6 s:14;   #:8 >:7 s:15;   S#:34 S>:27 S:61
03:30:37.778 : echo: #:8 >:6 s:14;   #:10 >:7 s:17;   #:9 >:7 s:16;   #:8 >:6 s:14;   S#:35 S>:26 S:61
03:30:38.778 : echo: #:8 >:6 s:14;   #:11 >:7 s:18;   #:8 >:6 s:14;   #:8 >:7 s:15;   S#:35 S>:26 S:61
03:30:39.777 : echo: #:8 >:6 s:14;   #:10 >:7 s:17;   #:8 >:8 s:16;   #:8 >:6 s:14;   S#:34 S>:27 S:61
03:30:40.780 : echo: #:8 >:6 s:14;   #:11 >:7 s:18;   #:8 >:6 s:14;   #:8 >:6 s:14;   S#:35 S>:25 S:60
03:30:41.780 : echo: #:9 >:6 s:15;   #:10 >:7 s:17;   #:8 >:6 s:14;   #:9 >:6 s:15;   S#:36 S>:25 S:61
03:30:42.779 : echo: #:8 >:6 s:14;   #:10 >:8 s:18;   #:8 >:6 s:14;   #:8 >:6 s:14;   S#:34 S>:26 S:60
03:30:43.778 : echo: #:9 >:6 s:15;   #:10 >:7 s:17;   #:8 >:7 s:15;   #:9 >:6 s:15;   S#:36 S>:26 S:62

#: draw a stripe
>: transfer a stripe
s: sum of of draw and transfer for one stripe
S#: sum of draws for a complete screen
S>: sum of transfers for a complete screen
S: time to draw and transfer a complete screen
2016-12-05 12:22:54 -06:00
Scott Lahteine 4bafdf4b66 Support DISTINCT_E_FACTORS in LCD Motion Menu 2016-12-05 07:26:18 -06:00
Scott Lahteine 0b53d78046 Tweak editable items for debugging 2016-12-04 03:51:10 -06:00
Scott Lahteine b0361ebe4f Merge pull request #5343 from thinkyhead/rc_invert_case_light
Allow case light pin to be active low
2016-12-02 01:17:11 -06:00
Scott Lahteine f60b4f8659 Allow case light pin to be active low 2016-12-01 23:32:34 -06:00
Scott Lahteine d07229f185 Fix redraw in SD Card menus 2016-12-01 18:15:58 -06:00
Scott Lahteine a69b1ee691 Merge pull request #5313 from thinkyhead/rc_fix_menu_actions
Keep drawing menu unless screen changes
2016-11-28 02:01:39 -06:00
Scott Lahteine 32ee3acf86 Merge pull request #5315 from thinkyhead/rc_fixup_material_menus
Refine material heatup menu items
2016-11-28 01:46:51 -06:00
Scott Lahteine c70a06daf1 lcd_save_previous_menu => lcd_save_previous_screen 2016-11-28 01:46:18 -06:00
Scott Lahteine 13ea43cc8d Only exit menu handler when the screen changes 2016-11-28 01:46:18 -06:00
Scott Lahteine f45b6a7762 Merge pull request #5314 from thinkyhead/case_light_menu_fix
Fix and optimize case-light code
2016-11-28 01:45:27 -06:00
Scott Lahteine 0951d385ce Don't set heater temperature above its maximum 2016-11-28 01:37:24 -06:00
Scott Lahteine c9193e856d Limit preheat parameters based on all nozzles 2016-11-28 01:37:24 -06:00
Scott Lahteine bb4529f7d2 PLA / ABS => Material 1 / 2 2016-11-28 01:37:24 -06:00
Scott Lahteine 61437d988a Fix and optimize case-light code 2016-11-28 01:34:52 -06:00
AnHardt 7a9fa78822 MENU_HOLLOW_FRAME for the menu screens
MENU_HOLLOW_FRAME for the menu screens and
some pixel shifting to optimize the look with tall fonts. (cn)
2016-11-27 22:59:05 +01:00
Scott Lahteine 71842b6a17 Apply const to LCD arguments and locals 2016-11-26 06:53:52 -06: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 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 0c341f0c50 Added Menu entry for Case light 2016-11-23 19:29:15 +01:00
esenapaj 7b836a4000 Introduce a +1234.56 format for over 999 steps/mm 2016-11-21 17:45:07 +09: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
Scott Lahteine 2cc32d85a3 Adjust ENSURE_SMOOTH_MOVES coding style 2016-11-19 01:28:48 -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
Kai 8e8b4398f3 Printer Stats / Completed prints line doesn't fit in display (when german) 2016-11-09 22:03:25 +01:00
Scott Lahteine 7780052fb3 Give instant feedback for filament change 2016-11-07 03:48:16 -06: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
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
Scott Lahteine 1a2310c494 Make LCD preheat vars an array to reduce code size 2016-10-28 20:57:36 -05:00
Scott Lahteine 50ee749082 Centralize click-handling in the LCD loop 2016-10-28 20:57:21 -05:00
Scott Lahteine 9cbedab91b Use DPM where possible 2016-10-26 18:38:32 -05:00
Scott Lahteine 4b056d8184 Fix warning in ultralcd.cpp 2016-10-26 17:51:26 -05:00
Scott Lahteine 8b967a9ff0 Merge pull request #5058 from thinkyhead/rc_reverse_arrow_buttons
Apply encoder reverse options to keypad arrows
2016-10-22 13:52:35 -05:00
Scott Lahteine e151f952a3 Apply encoder reverse options to keypad arrows 2016-10-22 11:51:33 -05:00
Josef Pavlik 0bd66807b2 fixed warning: extra ; 2016-10-22 11:12:29 -05:00
Josef Pavlik d35dc407a8 fixed warning: ISO C99 requires rest arguments to be used 2016-10-22 11:12:29 -05:00
Josef Pavlik c2b51af3ba fixed warning: ISO C does not permit named variadic macros 2016-10-22 11:12:29 -05:00
Scott Lahteine 0d3fc7dd89 Merge pull request #5059 from gcormier/fixbaby
Set defer delay back to false when exiting babystepping.
2016-10-22 10:59:17 -05:00
Greg Cormier 0009725637 Set defer delay back to false when exiting babystepping. 2016-10-22 09:43:30 -04:00
Scott Lahteine 0908329d96 Merge pull request #5057 from thinkyhead/rc_mbl_lcd_logical
Fix manual leveling coordinates
2016-10-22 06:31:02 -05:00
Scott Lahteine 1165e83263 MBL coordinates are logical 2016-10-22 05:55:44 -05:00
Scott Lahteine b19bba275f No LCD timeout during babystepping
As requested in #5031
2016-10-22 05:26:07 -05:00
Scott Lahteine d963020532 Sort out some header dependencies 2016-10-10 17:14:03 -05:00
Scott Lahteine f8199b2cc1 Merge pull request #4982 from thinkyhead/rc_abl_bugfix
Fix planner with kinematics, delta ABL
2016-10-10 13:24:22 -05:00
Josef Pavlik f8c2473a71 Improve planner kinematics, fix delta ABL 2016-10-09 13:32:46 -05:00
Scott Lahteine ff6b23cb0f Fix an issue with shifted LCD lines 2016-10-09 13:00:00 -05:00
Scott Lahteine a1b50f1102 Cleanup of code style 2016-10-07 15:57:24 -05:00
jaysonkelly 13c9dcc600 Add LCD menu for DAC 2016-10-07 15:13:03 -05:00
Scott Lahteine c592ccb6f5 Patch max_jerk[Z] menu item 2016-10-02 10:12:47 -05:00
Scott Lahteine d19cfcfc1d max_jerk array, DEFAULT_XYJERK => DEFAULT_[XY]JERK 2016-10-02 06:34:56 -05:00
Scott Lahteine 850259bb25 Watch bed temp also for Control menu item 2016-09-28 14:14:04 -05:00
Scott Lahteine ea0dbee3c9 Enable ABL by type, support bilinear on cartesian 2016-09-25 23:35:37 -05:00
Scott Lahteine 145d9005d1 Fix BLTOUCH string and SERVO_DELAY 2016-09-21 01:45:23 -05:00
Scott Lahteine 13523cbf29 Fix and extend BLTouch support 2016-09-20 16:20:36 -05:00
Scott Lahteine f38a33a5d8 Add handling of BLTouch error state 2016-09-18 22:00:32 -05:00
Scott Lahteine 9429c7db89 Use ABC indices in delta[] 2016-09-18 13:50:38 -05:00
Scott Lahteine 83a41c7ceb Remove SCARA axis_scaling 2016-09-16 15:21:18 -05:00
Scott Lahteine 5ecc7d9f25 Clear LCD button state, apply timer to all
Addressing #3007
2016-09-13 16:10:27 -05:00
Scott Lahteine 6ab54c60b1 Add conditionals for kinematics, leveling 2016-09-13 03:32:59 -05:00
Scott Lahteine e354cf5884 Apply sw_endstops_enabled to manual move 2016-08-21 00:10:08 -05:00
Scott Lahteine 71319adbb8 Wrap ULTIPANEL-dependent code 2016-08-20 18:33:11 -05:00
Scott Lahteine 305913545e Move number-to-string function to utility.* 2016-08-20 18:33:11 -05:00
Scott Lahteine 628dcbc764 extruder_multiplier => flow_percentage 2016-08-18 22:13:47 -05:00
Scott Lahteine 132322e4d9 Fix #4614: currentScreen only defined with ULTIPANEL 2016-08-14 00:29:46 -07:00
Scott Lahteine 405afec393 Include decimeters in filamentUsed display 2016-08-12 05:16:43 -07:00
Scott Lahteine 432e9a1f50 Use configured feedrates, center for DELTA_CALIBRATION_MENU 2016-08-11 12:05:55 -07:00
Scott Lahteine 58c8e6cef2 Fixes #4576: Convert filamentUsed to long for display 2016-08-09 23:57:28 -07:00
Scott Lahteine 3be4511230 Patch command order in delta calibration menu 2016-08-08 21:15:25 -07:00
Scott Lahteine 88540d8ecf Fix: LCD displays SD status at startup 2016-08-08 20:53:18 -07:00
Scott Lahteine b16ea09498 Make DELTA_CALIBRATION_MENU more universal 2016-08-08 20:42:58 -07:00
Scott Lahteine 42927530fe Explicitly clear the screen in lcd_goto_screen 2016-08-06 18:10:39 -07:00
Scott Lahteine a6d2c2479f Minor cleanup of lcd_goto_screen calls 2016-08-06 18:10:39 -07:00
Scott Lahteine e47c8b9829 Save bytes for custom chars (Hitachi LCD) 2016-08-06 18:10:39 -07:00
Scott Lahteine 938e6d15c4 Patch up some flaws, here and there 2016-08-05 08:17:37 -07:00
Scott Lahteine 7e2bd9a233 Z_RAISE_PROBE_* => Z_PROBE_*_HEIGHT 2016-08-03 21:18:38 -07:00
Scott Lahteine c9123adc59 Improved SCREEN / MENU macros 2016-08-02 18:05:34 -07:00
Scott Lahteine 3cccaa9885 Allow encoder pulse/step override for more LCDs 2016-08-02 15:57:26 -07:00
Scott Lahteine 330f82971b Buzzer requires BEEPER_PIN 2016-08-02 14:05:37 -07:00
Scott Lahteine 38af251b91 Use a default argument in _lcd_move_e 2016-08-01 16:09:26 -07:00
Scott Lahteine 63fd1f49a6 PID_EXTRUSION_SCALING, disabled by default 2016-07-31 17:49:34 -07:00
Scott Lahteine ad68b4cb8b Followup to #4468 2016-07-30 03:49:42 -07:00
Scott Lahteine 696b63e300 Specify manual-movable E axes by extruder type 2016-07-30 00:36:48 -07:00
Scott Lahteine b7b7c90477 Merge pull request #4389 from thinkyhead/rc_optimize_planner
Optimize planner with precalculation, etc.
2016-07-24 17:48:23 -07:00
Scott Lahteine f8b5749235 Replace division in planner with multiplication 2016-07-24 13:27:49 -07:00
João Brázio 62d96d72f3 Renamed timestamp_t to duration_t 2016-07-24 03:16:02 +01:00
Scott Lahteine 1766b990b8 Merge pull request #4376 from jbrazio/timestamp_t-short
Adds short format to timestamp_t
2016-07-22 21:17:17 -07:00
João Brázio 9e5dbf67e8 Update the stats menu to include longest job and extruded filament 2016-07-23 03:05:45 +01:00
João Brázio b4aad85c9a Rework stats menu to use timestamp_t 2016-07-23 01:42:21 +01:00
Scott Lahteine d5e2d523c7 Generalize kinematics function names 2016-07-22 16:36:34 -07:00
Scott Lahteine 0432613ad7 use enabled macro for mapper setting 2016-07-19 18:08:56 -07:00
Scott Lahteine 2bad02e60d Reprapworld Keypad: F1 opens the Move Axis menu 2016-07-19 16:40:39 -07:00
Scott Lahteine eaa6f568ee Prevent re-entrant call of Reprapworld Keypad handler 2016-07-19 16:40:39 -07:00
Scott Lahteine 06ac1f3bcf Reduce Reprapworld Keypad move code size 2016-07-19 16:40:39 -07:00
Scott Lahteine 8a2efd1155 Rename ultralcd implementation files for consistency 2016-07-19 15:26:14 -07:00
Scott Lahteine c502018eab Merge pull request #4353 from jbrazio/global-enum-file
General cleanup: enum
2016-07-19 13:37:56 -07:00
João Brázio 3ebad4e020 Moves all global enums to a central file 2016-07-19 14:31:09 +01:00
esenapaj 361307831e Follow-up the PR #4335 (Debug char, fix compile errors for lcd pins)
・Solve a flickering when SD card is inserted or removed at using a ASCII
LCD + language_kana.h
2016-07-18 20:09:24 +09:00
Scott Lahteine f242aea032 Merge pull request #4319 from thinkyhead/rc_feedrates_to_mess_with_you
Wrangle feed rate variables
2016-07-17 14:07:52 -07:00
Scott Lahteine 9f9fe043ba Apply sq macro throughout 2016-07-17 13:29:41 -07:00
Scott Lahteine 93ba5bddd7 Append units to feedrate variables 2016-07-17 13:29:41 -07:00
Scott Lahteine 94955a8bf7 pad string in lcd_finishstatus 2016-07-17 12:27:37 -07:00
Scott Lahteine 05da02f0a2 Implement MIXING_EXTRUDER and SWITCHING_EXTRUDER 2016-07-17 10:53:10 -07:00
Scott Lahteine 9766e24504 Merge pull request #4277 from thinkyhead/rc_mks_13_viki2
Support for VIKI2 with MKS 1.3 / 1.4
2016-07-16 23:49:33 -07:00
Scott Lahteine aaa0d298b9 Merge pull request #4326 from thinkyhead/rc_no_static_items_fix
Suppress compiler warnings in ultralcd.cpp
2016-07-16 23:38:08 -07:00
Petr Zahradník junior 2d7fe9dc78 LCD Longer print 2016-07-16 18:21:06 -07:00
Scott Lahteine d53dcaa796 Suppress some compiler warnings 2016-07-16 17:59:01 -07:00
Scott Lahteine 95ab2fd3ae Fix skipping of static items 2016-07-14 19:16:16 -07:00
Scott Lahteine c5e51f6b96 finished => completed 2016-07-14 11:46:35 -07:00
Scott Lahteine e481b79af1 Allow stopwatch and printcounter to go over 18 hours 2016-07-14 11:39:57 -07:00
Scott Lahteine 2224032568 Merge pull request #4285 from thinkyhead/rc_manual_move_fast_fine
No delay for the smallest LCD moves
2016-07-12 20:16:38 -07:00
Scott Lahteine a8b6b6a128 Merge pull request #4252 from thinkyhead/rc_rename_hpb
Replace PLA/ABS preheating with generic
2016-07-12 20:00:33 -07:00
Scott Lahteine ecd5e810ac No delay for the smallest LCD moves 2016-07-12 18:09:01 -07:00
Scott Lahteine 2b9515d60f Merge pull request #4281 from AnHardt/lang-system
Don't use UTF-strlen() if the text is not UTF
2016-07-12 17:21:28 -07:00
Scott Lahteine e9f62d8fdb Remove extraneous conditions for encoder position 2016-07-12 16:41:00 -07:00
AnHardt 54d35230df Don't use UTF-strlen() if the text is not UTF 2016-07-12 19:59:03 +02:00
Scott Lahteine 4865447830 Merge pull request #4276 from esenapaj/Suppress-warnings
Suppress warnings
2016-07-11 19:08:59 -07:00
Scott Lahteine 6e68dd292b Merge pull request #4243 from thinkyhead/rc_fix_static_scrolling
Improve STATIC_ITEM implementation
2016-07-11 18:25:00 -07:00
Scott Lahteine d17b161832 Don't draw current screen if simply changing screens 2016-07-11 18:14:04 -07:00
Scott Lahteine 096f9981d1 Scroll to the top when changing screens 2016-07-11 18:14:04 -07:00
Scott Lahteine 155af6b861 Rename vars, add comments for menu macros 2016-07-11 18:14:04 -07:00
Scott Lahteine 31f2cf5f6f Make encoderLine signed for proper compares 2016-07-11 18:14:03 -07:00
Scott Lahteine d2099fef0d Left-justify thermistor info 2016-07-11 18:14:03 -07:00
Scott Lahteine 85aeb02aa6 Invert headings on Graphical LCD 2016-07-11 18:14:03 -07:00
Scott Lahteine 13dc619f43 Scroll static screens more simply 2016-07-11 18:14:02 -07:00
Scott Lahteine 5051723c2e Redraw after cursor correction in STATIC_ITEM 2016-07-11 18:14:02 -07:00
esenapaj 58177a1602 Suppress warnings 2016-07-12 08:22:24 +09:00
Scott Lahteine 10ebf28ee3 Allow override of ENCODER_FEEDRATE_DEADZONE, lower default for Viki 2016-07-11 15:43:08 -07:00
Scott Lahteine 6121c9018a Merge pull request #4265 from thinkyhead/rc_buzzer_patchup
Two strategies to address a stuck buzzer
2016-07-10 19:46:15 -07:00
Scott Lahteine 71674059c3 Two strategies to address a stuck buzzer 2016-07-10 19:25:23 -07:00
Petr Zahradnik eaf9e615ce Total print time for LCD correction (hours:minutes format) 2016-07-10 13:08:05 +02:00
Scott Lahteine f9e08b1fcd Merge pull request #4254 from AnHardt/killscreen
Add a kill-screen
2016-07-09 20:44:42 -07:00
AnHardt faac2bcfdb Add a kill-screen 2016-07-10 04:50:45 +02:00
Scott Lahteine 1026e5b071 Replace PLA/ABS preheating with generic 2016-07-09 18:06:51 -07:00
AnHardt de3a169336 Always define MIN_Z_HEIGHT_FOR_HOMING even if 0
Always define MIN_Z_HEIGHT_FOR_HOMING even if 0
Always make a potential rise to `home_offset[Z_AXIS]` possible in G28.
Get rid of some very ugly constructs in MBL (ultralcd.cpp).
2016-07-08 15:08:32 +02:00
Scott Lahteine 834ad14c8d Add quickstop_stepper to update current position with stepper.quick_stop() 2016-07-07 16:37:22 -07:00
Scott Lahteine 160a2be117 Change cancel_heatup to wait_for_heatup 2016-07-06 09:17:50 -07:00
Scott Lahteine ef8980bfa0 Shorter labels for Print Stats info 2016-07-03 16:00:24 -07:00
Scott Lahteine 2ed625dafa Fix compiler warnings for static screens 2016-07-03 15:26:17 -07:00
Scott Lahteine 982f10e6a0 Use STATIC_ITEM for LCD message display 2016-07-02 15:47:15 -07:00
Petr Zahradnik 43ff0ce35f Rewritten FILAMENT_CHANGE_ENABLE feature 2016-07-02 15:34:33 -07:00
Scott Lahteine 51b7820686 Patch up About Printer sub-menus 2016-07-02 15:22:34 -07:00
Anthony Birkett 7a377c1d75 Add "About Printer" information menu.
Includes:
  *firmware version / branch / date.
  *extruder count
  *board information (name, serial details, power supply type)
  *thermistors (names, min/max temperatures)
  *printer statistics (PRINTCOUNTER details)

Thanks to @thinkyhead for contributions.
2016-07-02 15:22:26 -07:00
Scott Lahteine bd491818d6 Reduce storage requirements for strings, make some PGM 2016-06-27 20:36:18 -07:00
Edward Patel da88b00585 MBL: Add support for max z endstop
See https://github.com/MarlinFirmware/Marlin/issues/4088
2016-06-25 21:58:02 +02:00
Scott Lahteine 74878d1f16 Always do a brief delay in lcd_quick_feedback 2016-06-24 14:46:10 -07:00
Scott Lahteine bb9c67b4b5 Tweak some feedrate vars 2016-06-22 03:27:31 -07:00
Scott Lahteine bbf5b486c3 Add an SD Card stop function, use in ultralcd 2016-06-17 18:27:14 -07:00
Scott Lahteine 1000563d80 Make M851 standard with a bed probe 2016-06-17 15:19:42 -07:00
edwilliams16 114d9db7d0 Show babysteps on the LCD in mm, not steps 2016-06-15 23:03:24 -07:00
Alexander Leisentritt c2b7ef1e7e "e" was renamed to "eindex" in a previous commit 2016-06-15 11:11:16 +02:00
Scott Lahteine 4d2119f83a _lcd_move => _lcd_move_xyz 2016-06-12 17:14:19 -07:00
Scott Lahteine 811967923a Fix manual_move to move the correct E stepper 2016-06-12 17:14:19 -07:00
Scott Lahteine b322ac4417 No need to check ULTIPANEL with DOGLCD 2016-06-11 16:50:06 -07:00
Scott Lahteine ae9b09fe94 menu => screen 2016-06-11 14:53:39 -07:00
Scott Lahteine 45ea8749d3 Wrap all items depending on ULTIPANEL 2016-06-11 14:27:34 -07:00
Blue-Marlin 378ff92e98 manage_manual_move(); -> ULTIPANEL
Makr the call of   `manage_manual_move() ` depandent of `ULTIPANEL`
2016-06-10 23:36:57 +02:00
Scott Lahteine e2d4919c01 Merge pull request #3991 from thinkyhead/rc_axis_units
Rename some vars to clarify their relationship to acceleration
2016-06-09 20:57:01 -07:00
João Brázio 5b5aa1572b Non-blocking buzzer 2016-06-09 20:20:05 -07:00
Scott Lahteine 72c6f2923f axis_steps_per_unit => axis_steps_per_mm 2016-06-09 17:04:51 -07:00
Scott Lahteine cb4704e07a Rename some planner acceleration vars
- `per_sq_second` => `per_s2`
- `per_sqr_second` => `per_s2`
- `axis_steps_per_sqr_second` => `max_acceleration_steps_per_s2`
2016-06-09 17:04:50 -07:00
Scott Lahteine b23f710034 Cleanup and naming for num-to-string functions 2016-06-08 13:12:27 -07:00
Scott Lahteine 47b5c55c29 Implement the delayed-move technique 2016-06-05 02:29:49 -07:00
Scott Lahteine a3e25a0fca Instead of trying to move now, set a flag to move asap 2016-06-05 02:29:48 -07:00
Scott Lahteine 43947072d5 Merge pull request #3895 from thinkyhead/rc_singlenozzle_part_2
SINGLENOZZLE: EXTRUDERS versus HOTENDS
2016-06-04 15:23:17 -07:00
Scott Lahteine c2362c1b3c Apply Marlin coding standards to MBL class 2016-06-03 21:43:32 -07:00
Edward Patel c06de0f097 MBL: Added keeping MBL active when homing single axises for #3750 2016-06-03 21:42:29 -07:00
Scott Lahteine cd441ce652 SINGLENOZZLE: EXTRUDERS versus HOTENDS 2016-06-03 17:38:03 -07:00
Scott Lahteine 32f8300cc6 Merge pull request #3944 from thinkyhead/rc_eboston_lcd_contrast
Improved LCD contrast handling
2016-06-03 17:08:41 -07:00
Scott Lahteine 664b299a51 This fix is not DELTA compatible 2016-06-02 17:16:19 -07:00
Scott Lahteine 064efb20e0 Also call clear_command_queue for lcd_sdcard_stop 2016-06-02 17:16:19 -07:00
Scott Lahteine 6277395e1e set_current_position_from_planner() after stepper.quick_stop() 2016-06-02 17:16:19 -07:00
Scott Lahteine 381bc6f0b0 set_position => set_position_mm 2016-06-02 17:16:19 -07:00
Scott Lahteine efa7209acf Improved LCD contrast handling
Based on MarlinFirmware/MarlinDev#200 from @eboston
2016-06-02 16:17:34 -07:00
Scott Lahteine bd97bbc52a Make HAS_LCD_CONTRAST a boolean flag 2016-05-31 11:47:02 -07:00
Scott Lahteine 3861f1e0da Merge pull request #3908 from jbrazio/bugfix/3826
Closes #3826: SD printing will now pause and stop the print counter
2016-05-30 00:08:57 -07:00
Scott Lahteine dc22097b3a Fix some of array initializations
- In `stepper.h` init `count_direction` array
- In `ultralcd.cpp` init `autotune_temp` array
2016-05-29 20:55:13 -07:00
João Brázio 40e64b36de
Closes #3826: SD printing will now pause and stop the print counter
The LCD menu items for SD printing pause/stop have been updated to control
also the print job timer. This commit also fixes a small output bug with
M78, the failed print counter was displaying the wrong value.
2016-05-30 00:56:39 +01:00
Scott Lahteine a4ed988c60 Two index finding functions for MBL 2016-05-23 14:25:42 -07:00
Scott Lahteine 8218558953 Update comments, rename next_ping_ms, followup to #3797 2016-05-19 16:44:57 -07:00
AnHardt 0c4d885d5b Speedup sreen update delay
Speedup sreen update delay
and correct a comment.

A module division by 10 is slooooow. (powers of 2 are fast - but then you can AND a bitmask with the same result)
2016-05-19 15:41:09 +02:00
Scott Lahteine 754b0152f5 Fix MBL zigzag calls 2016-05-15 12:35:01 -07:00
Scott Lahteine 14cd0f4c92 Merge pull request #3740 from thinkyhead/rc_lcd_home_options
Individual Axis Homing LCD menu items
2016-05-12 11:59:46 -07:00
João Brázio 09150cae79 Individual Axis Homing LCD menu items 2016-05-11 19:28:19 -07:00
Scott Lahteine 4dc4e2063f Add REVERSE_ENCODER_DIRECTION option 2016-05-11 15:39:28 -07:00
Scott Lahteine 51109d4af7 Use AxisEnum with _lcd_babystep() 2016-05-05 21:04:30 -07:00
Scott Lahteine b65ea98d6b Localize babystepping in the Temperature class
So that `ultralcd.cpp` doesn’t need to worry about the details.
2016-05-05 15:00:31 -07:00
esenapaj 1a97442d19 Follow-up the PR #3643(Temperature singleton)
Follow-up the PR #3643(Temperature singleton)

・Change from fanSpeedSoftPwm[0] to thermalManager.fanSpeedSoftPwm[0] in planner.cpp
It fix compilation error when FAN_SOFT_PWM is enabled.

・Remove declaration of setExtruderAutoFanState() in temperature.h
Because that function was abolished.

・Change from babystepsTodo to thermalManager.babystepsTodo in ultralcd.cpp
It fix compilation errors when BABYSTEPPING is enabled.
2016-05-05 18:01:39 +09:00
Scott Lahteine 084f6b5b44 Temperature singleton class 2016-05-04 19:42:12 -07:00
Scott Lahteine b4b5c7a6b7 Merge pull request #3670 from thinkyhead/rc_scoovo_controller
Use directional buttons when defined
2016-05-03 17:42:18 -07:00
Scott Lahteine ddafb859e2 Use directional buttons when defined 2016-05-03 12:50:49 -07:00
esenapaj 605808fe37 Additional follow-up the PR #3631(Encapsulate S...
Additional follow-up the PR #3631(Encapsulate Stepper, Planner, Endstops in singleton classes)

・Change from abort_on_endstop_hit to stepper.abort_on_endstop_hit in endstop.cpp, Marlin_main.cpp, and ultralcd.cpp
・Add include path to cardreader.h and temperature.h in endstop.cpp(for CardReader class and disable_all_heaters())
It fix compilation error when ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED and SDSUPPORT are enabled.

・Change from digipot_current() to stepper.digipot_current() in Marlin_main.cpp
・Change from digitalPotWrite() to stepper.digitalPotWrite() in Marlin_main.cpp
It fix compilation errors when HAS_DIGIPOTSS is enabled.

・Change from microstep_mode() to stepper.microstep_mode() in Marlin_main.cpp
・Change attribute of microstep_mode() from private to public in stepper.h
・Change from microstep_readings() to stepper.microstep_readings() in Marlin_main.cpp
・Change from microstep_ms() to stepper.microstep_ms() in Marlin_main.
It fix compilation errors when HAS_MICROSTEPS is enabled.
2016-05-03 18:28:37 +09:00
Scott Lahteine 60c6efb75c Merge pull request #3653 from thinkyhead/rc_bed_temp_watch_merge
Introduce temp watch protection for the bed
2016-05-01 13:58:28 -07:00
gralco 908229dbb3 Introduce temp watch protection for the bed
When setting the bed temp via M140/M190 if the thermistor does not read an increase of WATCH_BED_TEMP_INCREASE degrees by WATCH_BED_TEMP_PERIOD seconds then it will throw "Error:Heating failed, system stopped! Heater_ID: bed" and call the kill() function.

Conflicts:
	Marlin/Configuration_adv.h
2016-05-01 13:12:51 -07:00
Scott Lahteine 96f51f400f Planner singleton class 2016-04-30 17:26:50 -07:00
Scott Lahteine 5e4e535ce8 Stepper and Endstops as singleton objects 2016-04-30 17:26:50 -07:00
Scott Lahteine 88c6693b9e Fix a typo in #3586 to fix MBL 2016-04-22 20:04:08 -07:00
Scott Lahteine 003aab6dfd Revert MBL menus to "known" working point 2016-04-21 12:59:55 -07:00
Scott Lahteine dc2281d2f4 Add nextMenu, nextEncoderPosition to change menus after handler loop 2016-04-20 20:19:12 -07:00
Scott Lahteine 7fa2bda1b9 Give the "alive dot" its own blink 2016-04-20 18:57:17 -07:00
Scott Lahteine 9d5e1f32fd Use axis_homed in _lcd_level_bed_homing, item in Prepare before homing 2016-04-20 18:53:33 -07:00
Scott Lahteine 9bcb72e7f8 Further patches to MBL - break up into more handlers 2016-04-20 16:37:35 -07:00
Scott Lahteine 3f6ae85748 Fix some MBL display issues for DOGLCD 2016-04-20 16:36:45 -07:00
Scott Lahteine 3db5a75f30 Merge pull request #3568 from thinkyhead/rc_various_fixes
General code cleanup, improved naming, etc.
2016-04-19 20:53:38 -07:00
Scott Lahteine 78747b1328 min_pos/max_pos => sw_endstop_min/sw_endstop_max 2016-04-19 19:43:38 -07:00
Scott Lahteine ba84d8d091 Allow setting PIDTEMP and PIDTEMPBED together or apart 2016-04-19 18:09:29 -07:00
Scott Lahteine 4f04bf7fe8 Show steps done in the babystep display 2016-04-18 20:52:38 -07:00
Scott Lahteine c242bee449 Add a final lift, if configured, in Manual Bed Leveling 2016-04-17 00:12:46 -07:00
Scott Lahteine 234987ee2f Fix MBL lift 2016-04-16 14:17:06 -07:00
Scott Lahteine e0830bf8f1 Don't use LCD alert unless error or alert level is reset later 2016-04-15 18:48:49 -07:00
Scott Lahteine 866c5be395 Merge pull request #3500 from thinkyhead/rc_shrink_menu_macros
Reduce redundancy in MENU_ITEM code
2016-04-14 19:09:14 -07:00
Scott Lahteine 4fb8013be1 Reduce redundancy in MENU_ITEM code 2016-04-14 18:42:06 -07:00
Scott Lahteine 2129db581e Simplify MBL movement, zigzag 2016-04-14 16:58:42 -07:00
Scott Lahteine 0493fccc0b mbl.active is a bool now 2016-04-14 16:58:42 -07:00
Scott Lahteine b05f448317 Comments on MBL menu items 2016-04-14 16:58:42 -07:00
Scott Lahteine fda8f96f00 Fix bug in lcd_preheat_pla0123 and lcd_preheat_abs0123
Trying to preheat a non-existent extruder causes a crash.
2016-04-14 15:48:43 -07:00
Scott Lahteine 2ae7394640 More fine-grained control of LCD redraw 2016-04-12 21:34:34 -07:00
Scott Lahteine 3a1ac14bbc Merge pull request #3437 from thinkyhead/rc_lcd_encoder_movement
More bits when encoderPosition is cast as signed
2016-04-11 17:03:23 -07:00
Scott Lahteine 386140f361 Test time difference in safe way 2016-04-10 18:09:31 -07:00
Scott Lahteine 8198cc30b5 More bits when encoderPosition is cast as signed 2016-04-09 14:22:12 -07:00
Scott Lahteine 4e17187c96 Merge pull request #3426 from thinkyhead/rc_no_unhomed_lcd_move_on_delta_scara
No LCD Move for unhomed Delta/SCARA
2016-04-07 19:29:45 -07:00
Scott Lahteine 5fc6daba2b Disallow REPRAPWORLD_KEYPAD moves on Delta/SCARA until homed 2016-04-07 18:40:54 -07:00
Scott Lahteine 165e73794a Tweak encoderPosition non-zero test 2016-04-07 16:09:42 -07:00
Scott Lahteine 479d307a44 Disable LCD Move XYZ for unhomed Delta/SCARA 2016-04-07 16:09:42 -07:00
Scott Lahteine fb38d698db Add feedback after "Click to Begin" 2016-04-05 15:35:05 -07:00
Scott Lahteine 582b58e660 Add audio feedback to edit items 2016-04-05 14:51:11 -07:00
Scott Lahteine a70c3ffc21 Minor syntax tweak with encoderPosition 2016-04-05 14:51:11 -07:00
Scott Lahteine 0f247187b8 Drop extra setting of currentMenu 2016-04-05 14:51:11 -07:00
Scott Lahteine 24cde86a4f Fix syntax highlighting of menu_edit_type lines 2016-04-05 14:51:11 -07:00
Scott Lahteine 86372cd394 Add underscore to internal lcd move function names 2016-04-05 14:51:11 -07:00
Scott Lahteine aa97328cd3 Use min_pos/max_pos for _lcd_move 2016-04-05 14:51:10 -07:00
Scott Lahteine f936df9507 Small cleanup of feedrate dead-zone 2016-04-05 14:51:10 -07:00
Scott Lahteine f5c2fb27cd Handle defer_return_to_status in lcd_goto_menu 2016-04-05 14:51:10 -07:00
Scott Lahteine 8459f7fa5c Use ms where possible. 2016-04-05 14:51:10 -07:00
Scott Lahteine 34ce9c4c1c Restore save previous for menu edit items 2016-04-05 14:26:36 -07:00