Commit graph

805 commits

Author SHA1 Message Date
Scott Lahteine d13991ae18 Use same config name for all mesh dimensions 2017-04-06 16:05:59 -05:00
Scott Lahteine c56eec29f0 Configurable delay for BLTouch servo emulation 2017-04-02 11:14:53 -05:00
Scott Lahteine 9e22184936 Add a "manual" option for ABL 2017-03-31 11:50:18 -05:00
Scott Lahteine 81136c1e82 Merge pull request #6177 from thinkyhead/rc_tinyboy
Support for TinyBoy 2 3D printer (and its OLED display)
2017-03-31 04:31:47 -05:00
Stefan Brüns 0fe57ad4f5 Add Support TinyBoy2 OLED/Encoder panel
The OLED is driven by an SSD1306, connected to the board via
I2C, the rotary encoder is connected to 3 GPIO pins.

Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
2017-03-31 04:05:34 -05:00
Scott Lahteine edbc024d76 Disable UBL_G26_MESH_EDITING by default 2017-03-31 02:20:20 -05:00
Scott Lahteine 5a2abeca78 Merge pull request #6100 from thinkyhead/rc_soft_pwm_dither
Enhancement of PWM, with dithering
2017-03-24 04:57:40 -05:00
Stefan Brüns 35a55d5757 SOFT_PWM: Implement dithering if SOFT_PWM_SCALE is 1 or more
If dithering is enabled, the remainder of the soft_pwm_X duty value at
turnoff time is added to the next cycle. If e.g. the duty is set to 9 and
SCALE is set to 2, the PWM will be active for 8 counts for 3 cycles and
12 counts on each fourth cycle, i.e. the average is 9 cycles.

This compensates the resolution loss at higher scales and allows running
fans with SOFT_PWM with significantly reduced noise.

Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
2017-03-24 04:13:36 -05:00
Scott Lahteine 783338a0b8 Add UBL_MESH_EDIT_ENABLED to configs 2017-03-24 00:44:55 -05:00
Scott Lahteine e244399766 Additional cleanup of UBL code 2017-03-22 20:51:10 -05:00
Scott Lahteine 2512871a36 Patch configs UBL followup 2017-03-18 12:32:03 -05:00
Scott Lahteine 27b5666e15 Move Allen Key probe definition to the top 2017-03-18 12:27:37 -05:00
Scott Lahteine cf94688925 Univeral Bed Leveling - configuration 2017-03-18 11:35:19 -05:00
Scott Lahteine 0e410c9dfd Software endstop options as simple switches 2017-03-17 06:05:17 -05:00
Scott Lahteine 3e927ff204 Replace MBL Z hacking 2017-03-17 06:05:17 -05:00
Marek Pikuła 6836b94eea Added circle pattern for nozzle cleaning feature 2017-03-06 03:03:00 -06:00
Colin Gilgenbach 48b7e0f8d8 Nozzle Wipe Vertical Zig-Zag
- Add configuration support for zigzags in either the X or Y axis, for
wipe pads significantly longer in one dimension.
- Add configuration for default number of zig-zag triangles, vs. a
magic number in `Marlin_main.cpp`.
- Update description of auto nozzle wiping to match functionality
2017-02-25 21:52:43 -06:00
Scott Lahteine e282b72151 Remove non-applicable comment on MANUAL_Z_HOME_POS 2017-02-18 05:14:43 -06:00
esenapaj d38e335272 From "microseconds" to "milliseconds"
delay() is milliseconds
2017-01-02 01:19:33 +09:00
Scott Lahteine 5ab7b91615 Comment on filament runout sensor config 2016-12-23 19:50:27 -08:00
Scott Lahteine 78d6d6e076 Merge pull request #5452 from thinkyhead/rc_save_your_mesh
Save Bed Leveling to EEPROM
2016-12-15 20:23:01 -08:00
Scott Lahteine 1b2fb2bdc7 ABL_GRID_POINTS_* => ABL_GRID_MAX_POINTS_* 2016-12-15 19:08:41 -08:00
esenapaj 069c6b38dd Remove unnecessary tabs and spaces 2016-12-16 00:21:32 +09:00
Scott Lahteine da6a094424 Sanity-check inverting and pullups for Z probe and Z endstop
`Z_MIN_ENDSTOP_INVERTING` must match `Z_MIN_PROBE_ENDSTOP_INVERTING`
when using `Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN`.
This is easy to overlook.
2016-12-08 00:12:19 -08:00
Scott Lahteine aa241c63b3 Include M205 note in configurations 2016-12-07 14:45:44 -06:00
akaJes d7b948610a Experimental bilinear subdivision option 2016-12-05 20:11:24 -06:00
Scott Lahteine 3391c785c6 Support for distinct E factors 2016-12-05 07:26:18 -06:00
Scott Lahteine 415294801f Merge pull request #5330 from thinkyhead/rc_rgb_led
Support for an RGB LED using 3 pins
2016-11-30 14:14:00 -06:00
Scott Lahteine 65c50e062e Support for an RGB LED using 3 pins 2016-11-30 00:02:31 -06:00
jes f674246397 extend Configurations files 2016-11-29 15:04:36 +02:00
Scott Lahteine 092e949b58 Merge pull request #5169 from thinkyhead/rc_core_inverted
Support for COREYX, COREZX, COREZY
2016-11-28 02:26:41 -06:00
Scott Lahteine f6f77d34a1 Add a fade factor for mesh leveling 2016-11-26 03:41:26 -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 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
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
Petr Zahradník junior d7ce5d271b
Replace const bool with #define for consistency 2016-11-16 18:55:21 +01: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
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 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
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 14e60f0d3b Correct typo in configs
As pointed out by #5044
2016-10-22 05:56:32 -05:00
Scott Lahteine 4f6bfabaad Patch BAUDRATE line in configs 2016-10-22 00:48:52 -05:00
Scott Lahteine 1e551c0688 Revert "Squashed - Removal of PID functional range" 2016-10-09 16:27:45 -05:00
Rerouter 5f5d87cad3 Update Configuration.h 2016-10-02 07:01:40 -05:00
Scott Lahteine d19cfcfc1d max_jerk array, DEFAULT_XYJERK => DEFAULT_[XY]JERK 2016-10-02 06:34:56 -05:00
Scott Lahteine 473f4a17a8 Merge pull request #4914 from Rerouter/PID-Unconstrained-Itemp
Pid unconstrained itemp
2016-10-01 06:58:07 -05:00
Scott Lahteine 2d2c9bdf92 Add PROBE_Y_FIRST option for probe order 2016-09-29 02:00:27 -05:00
esenapaj 92c03a44a9 Fix the PR #4899 (ABL: Enable by type. Bilinear for all.) etc.
About Configuration.h:
・Fix the PR #4899 (ABL: Enable by type. Bilinear for all.)
Remove Duplicated contents

・Fix the PR #4305 (Custom boot screen feature improvement)
Revert from "during boot" to "during bootup" in all the example
Configuration.h

・Fix the PR #4207 (Clean up, simplify and generalize the Allen-key-probe
code.)
Resolve and relocate the duplicated definitions in Z_PROBE_ALLEN_KEY
section

・Follow-up the PR #4805 (Additional documentation of Configuration.h)
Add forgotten changes to all the example Configuration.h

Adjust spacing

About Configuration_adv.h:
Add missing description of SLOWDOWN for DELTA

Adjust spacing
2016-09-28 14:14:04 -05:00
Rerouter 50e5ee4de4 Update Configuration.h 2016-09-28 17:38:09 +10:00
Scott Lahteine ea0dbee3c9 Enable ABL by type, support bilinear on cartesian 2016-09-25 23:35:37 -05:00
Scott Lahteine 01f1028510 Try on "CLEARANCE" for size 2016-09-20 18:29:49 -05:00
Scott Lahteine 0e7d638a7a Revert to Probe Raise rather than Probe Height 2016-09-20 18:29:49 -05:00
Scott Lahteine e05af606a8 Clean up probe config options 2016-09-19 00:26:16 -05:00
Scott Lahteine c4dcfa254e Allow override of Z_ENDSTOP_SERVO_NR with BLTOUCH 2016-09-18 22:00:32 -05:00
Scott Lahteine e5505e3b33 Allow non-square leveling grid 2016-09-18 13:11:20 -05:00
Scott Lahteine d4599fd8ed Comment patches to Configuration.h 2016-09-16 14:41:05 -05:00
Scott Lahteine 723e983073 Default EXTRUDE_MAXLENGTH to 200mm 2016-09-16 14:41:04 -05:00
Scott Lahteine a6f6ed352b Fix comment on FILAMENT_RUNOUT_SENSOR 2016-09-13 02:14:34 -05:00
Scott Lahteine aaef7c6b89 Fix a misspelling of minimum 2016-09-02 01:42:38 -05:00
Scott Lahteine f1201e11c7 Improve the Jerk description 2016-08-29 12:39:21 -05:00
Scott Lahteine 3f038bef00 Heading for movement settings 2016-08-29 02:01:34 -05:00
Scott Lahteine 01d4703429 PREVENT_DANGEROUS_EXTRUDE => PREVENT_COLD_EXTRUSION
Also improve the documentation of this and related options, and set
EXTRUDE_MINTEMP to 170 everywhere.
2016-08-20 23:35:27 -05:00
Scott Lahteine 99b22d5785 Default AUTO_BED_LEVELING_GRID_POINTS to 3 2016-08-19 04:45:32 -05:00
Scott Lahteine e113740fa3 Specify that Z_PROBE_*_HEIGHT is nozzle-relative 2016-08-07 17:54:17 -07:00
Scott Lahteine 7e2bd9a233 Z_RAISE_PROBE_* => Z_PROBE_*_HEIGHT 2016-08-03 21:18:38 -07:00
Scott Lahteine 9e21b2e51d Merge pull request #4455 from AnHardt/double-bump-feature
double bump probing as a feature
2016-07-29 20:00:10 -07:00
AnHardt 7188ce0ad6 double bump probing as a feature
Why double touch probing is not a good thing.

It's widely believed we can get better __probing__ results when using a double touch when probing.

Let's compare to double touch __homing__.
Or better let's begin with single touch __homing__.
We home to find out out position, so our position is unknown.
To find the endstop we have to move into the direction of the endstop.
The maximum way we have to move is a bit longer than the axis length.
When we arrive at the endstop - when it triggers, the stepper pulses are stopped immediately.
It's a sudden stop. No smooth deacceleration is possible.
Depending on the speed and the moving mass we lose steps here.
Only if we approached slow enough (below jerk speed?) we will not lose steps.

Moving a complete axis length, that slow, takes for ever.
To speed up homing, we now make the first approach faster, get a guess about our position,
back up a bit and make a second slower approach to get a exact result without losing steps.

What we do in double touch probing is the same. But the difference here is:
a. we already know where we are
b. if the first approach is to fast we will lose steps here to.
But this time there is no second approach to set the position to 0. We are measuring only.
The lost steps are permanent until we home the next time.

So if you experienced permanently rising values in M48 you now know why. (Too fast, suddenly stopped, first approach)

What can we do to improve probing?
We can use the information about our current position.
We can make a really fast, but deaccelerated, move to a place we know it is a bit before the trigger point.
And then move the rest of the way really slow.
2016-07-30 03:00:49 +02:00
Scott Lahteine c31f56a38c Deprecate EXTRUDER_WATTS and BED_WATTS 2016-07-29 17:34:14 -07:00
Scott Lahteine ea5ac94804 Improved MANUAL_[XYZ]_HOME_POS
No need for `MANUAL_HOME_POSITIONS`. Just set each one as-needed to
override the automatic behavior.
2016-07-28 19:51:48 -07:00
Scott Lahteine 8953e3e984 Allow Z_SAFE_HOMING without a probe 2016-07-27 04:33:56 -07:00
Scott Lahteine 24a1a16e5d Move versioning to MarlinConfig.h 2016-07-26 12:37:14 -07:00
Scott Lahteine 277899c175 Move include _Bootscreen.h where needed 2016-07-26 12:37:13 -07:00
Scott Lahteine 83c4653c71 Include boards and macros ahead of configs 2016-07-26 12:19:50 -07:00
Scott Lahteine c6226bb0aa Unify config in a single include without nested includes 2016-07-25 23:04:19 -07:00
Scott Lahteine 2d378fac1b No need to include thermistortables.h in Configuration.h 2016-07-25 22:43:50 -07:00
Scott Lahteine 0c0a63322b Patches to prepare REPRAPWORLD_GRAPHICAL_LCD 2016-07-25 12:10:25 -07:00
brupje a60a668f6b Support for REPRAPWORLD_GRAPHICAL_LCD 2016-07-25 12:10:25 -07:00
Scott Lahteine bb9da6ebdd Document DEBUG_LEVELING_FEATURE 2016-07-22 23:37:41 -07:00
Scott Lahteine 194d9521c3 Merge pull request #4356 from thinkyhead/rc_simpler_run_z_probe
Unify run_z_probe
2016-07-19 19:02:39 -07:00
Scott Lahteine 4a6ed5e221 Use HOMING_FEEDRATE_Z for Z_PROBE_SPEED_FAST 2016-07-19 18:42:48 -07:00
AnHardt 09a3cc33e6 Unify run_z_probe
Unify run_z_probe
Add double touch for DELTAs.
Introduce Z_PROBE_SPEED_FAST and Z_PROBE_SPEED_SLOW
  defaulting to homing_feedrate_mm_m[Z_AXIS] and homing_feedrate_mm_m[Z_AXIS]/2
2016-07-19 18:42:48 -07:00
Scott Lahteine e44b37cdc2 motion section marker below homing speeds 2016-07-19 17:31:58 -07:00
Scott Lahteine 204fd6ec44 Set homing feedrates individually 2016-07-19 17:31:58 -07:00
Scott Lahteine 6abf916575 Reprapworld Keypad move step is 1mm 2016-07-19 16:40:39 -07:00
João Brázio 47fef80848 Nozzle::clean() no longer requires HAS_BED_PROBE 2016-07-19 15:07:02 -07:00
Scott Lahteine 81e01152bb Merge pull request #4336 from thinkyhead/rc_bltouch_sensor
BLTouch probe sensor
2016-07-17 14:06:32 -07:00
Scott Lahteine 1583177ef4 BLTOUCH probe config option 2016-07-17 13:55:38 -07:00
Scott Lahteine 39706f3e57 Endstop invert flags as macros instead of const bool 2016-07-17 13:51:02 -07:00
Scott Lahteine 671634bf11 Fix spacing after section header 2016-07-17 13:35:21 -07:00
Scott Lahteine 22b4cff423 New extruder type configuration options 2016-07-17 00:13:56 -07:00
Scott Lahteine bf16ae5a70 Merge pull request #4299 from jbrazio/feature/g27-park-nozzle
Implements park nozzle feature
2016-07-16 23:47:12 -07:00
João Brázio fa4274cf4c Improves the custom bootscreen logo feature 2016-07-17 01:31:44 +01:00
João Brázio 9a00108cb6 Adds the WEBSITE_URL as the boot screen line 2 2016-07-16 12:24:37 +01:00
João Brázio c711701626 Implements a nozzle parking command (G27) 2016-07-16 12:07:59 +01:00
João Brázio 68c343a09a Added G12 configuration options to all configs 2016-07-14 00:38:42 +01:00
João Brázio 021544f572 Improves G12 zig-zag pattern 2016-07-13 21:14:56 +01:00
João Brázio b05a75655a Implements a nozzle cleaning pattern generator (G12) 2016-07-13 21:14:19 +01: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 928ff6487a Greek language pack from @psavva 2016-07-10 18:59:04 -07:00
Scott Lahteine 182c8d7f8f Dyze High Temp Thermistor Support 2016-07-10 17:59:05 -07:00
Scott Lahteine 1026e5b071 Replace PLA/ABS preheating with generic 2016-07-09 18:06:51 -07:00
Petr Zahradnik e282d69f63 Print job timer comment changed 2016-07-09 17:57:54 -07:00
Scott Lahteine 683975cf90 Fix spelling in a config comment 2016-06-28 16:49:13 -07:00
Scott Lahteine 10da7ac86c Combine Z raise before/after options 2016-06-26 13:56:30 -07:00
Scott Lahteine 03c70c1990 SERVO_DEACTIVATION_DELAY => SERVO_DELAY 2016-06-23 14:33:29 -07:00
Scott Lahteine bd01592816 Goodbye MECHANICAL_PROBE 2016-06-22 17:13:33 -07:00
Scott Lahteine b590a7dee0 Make Z_RAISE_BETWEEN_PROBINGS a more general option 2016-06-22 14:00:44 -07:00
Scott Lahteine d50539583a Make XY_PROBE_SPEED a general probe option 2016-06-22 03:04:47 -07:00
Scott Lahteine 2798499b71 XY_TRAVEL_SPEED => XY_PROBE_SPEED 2016-06-22 02:45:25 -07:00
esenapaj d583ea852d Standardize format description of Panel 2016-06-21 20:51:27 +09:00
Scott Lahteine 3996242e9d Allow Z_MIN_PROBE_REPEATABILITY_TEST solo 2016-06-21 01:56:40 -07:00
Scott Lahteine 9beb3f2f5e Merge pull request #4097 from thinkyhead/rc_fil_runout_cleanup
FIL_RUNOUT_INVERTING false by default
2016-06-19 19:46:14 -07:00
Scott Lahteine f215b30932 Merge pull request #4093 from thinkyhead/rc_probe_without_abl
Make Z Probe options independent of ABL
2016-06-19 19:44:25 -07:00
Scott Lahteine dfbf8b3c2c FIL_RUNOUT_INVERTING false by default 2016-06-19 19:25:26 -07:00
Scott Lahteine de12228758 Make Z Probe options independent of ABL 2016-06-19 18:47:27 -07:00
Scott Lahteine f8c278ce4d Cartesio UI display option in all configs 2016-06-19 17:39:46 -07:00
Scott Lahteine bd4ec727e7 Merge pull request #4066 from thinkyhead/rc_M851_with_probe
Make M851 standard with a bed probe
2016-06-17 17:32:55 -07:00
Scott Lahteine fc56a547d1 Rename movement section to motion 2016-06-17 15:19:43 -07:00
Scott Lahteine 1000563d80 Make M851 standard with a bed probe 2016-06-17 15:19:42 -07:00
Scott Lahteine 47ce810f52 Remove support for XY servo endstops 2016-06-17 14:19:17 -07:00
Scott Lahteine 02e5dad29a Include Croatian in language listings 2016-06-16 16:18:26 -07:00
João Brázio 8ccd97e7cc
Updated all example configuration files 2016-06-12 00:36:15 +01:00
João Brázio de8108648f
Added a versioning system to the config files 2016-06-11 23:48:10 +01:00
Reid Rankin 16212432c9 G20/21 and M149 support, and code_value() refactor
This is an update of MarlinDev PR #196.

G20/21: support for switching input units between millimeters and
inches.
M149: support for changing input temperature units.

In support of these changes, code_value() and code_value_short() are
replaced with an array of functions which handle converting to the
proper types and/or units.
2016-06-08 16:51:10 -07:00
Scott Lahteine cd441ce652 SINGLENOZZLE: EXTRUDERS versus HOTENDS 2016-06-03 17:38:03 -07:00
Scott Lahteine db0fd021d0 Z raise options independent of ABL so G28 can use them 2016-06-02 16:56:49 -07:00
Scott Lahteine 28fb1f8994 Tweak #endif comment for ABL GRID 2016-06-02 16:56:49 -07:00
Scott Lahteine a0b000d752 Support for SAV_3DGLCD OLED LCD controller 2016-05-31 14:41:16 -07:00
Edward Patel eb2746a34f MBL: Fix for negative x/y positions 2016-05-28 21:05:43 +02:00
Scott Lahteine fe3122774a Merge pull request #3806 from thinkyhead/rc_coreyz_support
Support for COREYZ. Fixes for COREXY, COREXZ
2016-05-26 18:50:43 -07:00
Scott Lahteine 89e630b2fb Merge pull request #3808 from thinkyhead/rc_singlenozzle
SINGLENOZZLE
2016-05-23 15:52:19 -07:00
Scott Lahteine 95fee8ca81 Add option for CoreYZ kinematics 2016-05-23 13:58:40 -07:00
Scott Lahteine c5130fd23b Additional instructions for controller reverse options 2016-05-20 18:14:50 -07:00
Scott Lahteine 69abfef82e Add "SINGLENOZZLE" extruder option 2016-05-20 15:45:11 -07:00
Scott Lahteine 37c6d0f4ed Reword MESH_G28_REST_ORIGIN comment 2016-05-20 11:52:27 -07:00
Edward Patel c7d90dc5ec Add option to configure G28 all axis resting position for MBL 2016-05-20 11:52:27 -07:00
João Brázio f9a62f6a8e Added PRINTJOB_TIMER_AUTOSTART section to example config files 2016-05-14 15:22:45 -07:00
João Brázio 8a18c52002 Adds an option to disable print job timer auto start 2016-05-14 15:22:44 -07:00
Scott Lahteine f13c4a9ec4 Merge pull request #3720 from jbrazio/feature/host-keepalive
Removes the DISABLE from HOST_KEEPALIVE
2016-05-14 14:39:31 -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
João Brázio 85b2c80838
Updated example configurations 2016-05-11 01:45:49 +01:00
João Brázio ac7f634956
Removed the DISABLE from HOST_KEEPALIVE_FEATURE option 2016-05-11 01:45:49 +01:00
João Brázio aa5a4716cf
Update default config 2016-05-10 13:37:21 +01:00
esenapaj 212b17d510 Fix for PR #3526(Configuration.h LCD & SDCard s...
Fix for PR #3526(Configuration.h LCD & SDCard section rewrite)

It removes duplicated BQ_LCD_SMART_CONTROLLER.
2016-05-03 21:35:02 +09:00
Scott Lahteine c3ef9993b9 Merge pull request #3625 from jbrazio/feature/print-counter
Print job statistics
2016-04-29 15:31:14 -07:00