MagoKimbra
1f92b9a4ed
Fix do_probe_move with fr_mm_s ( #10576 )
2018-04-30 16:28:20 -05:00
Scott Lahteine
4dfc011d86
Fix homing with probe feedrates
2018-04-30 03:35:07 -05:00
Scott Lahteine
59fda986ea
Allow Z_AFTER_PROBING to be 0
2018-04-30 03:25:47 -05:00
Scott Lahteine
1dab44213a
Fix the TMC26X initializer CS pin argument
...
From #10531
Co-Authored-By: chriscg9 <chriscg9@users.noreply.github.com>
2018-04-28 12:02:45 -05:00
Scott Lahteine
7546f87949
Allow a home bump of 0 when homing Z with probe
2018-04-28 10:26:31 -05:00
Scott Lahteine
683dc24e0f
When homing with Z probe bump at Z_PROBE_SPEED_SLOW
2018-04-28 08:50:23 -05:00
Scott Lahteine
5ac226aa93
Further cleanup of inline delays
2018-04-27 19:22:22 -05:00
Chris Pepper
2242b98248
[LPC176x] Emergency Parser Feature ( #10516 )
2018-04-25 06:44:26 -05:00
Scott Lahteine
9789c1c719
Fix current_temperature_chamber compile error
...
Fix #10505
2018-04-24 07:55:58 -05:00
Eduardo José Tagle
0c428a66d9
Proper AVR preemptive interrupt handling ( #10496 )
...
Also simplify logic on all ARM-based interrupts. Now, it is REQUIRED to properly configure interrupt priority. USART should have highest priority, followed by Stepper, and then all others.
2018-04-23 22:05:07 -05:00
Scott Lahteine
f423e54f77
Strip trailing spaces
2018-04-23 18:00:43 -05:00
Scott Lahteine
cb46cb8480
Add HAS_HEATED_BED conditional ( #10495 )
2018-04-23 17:13:01 -05:00
Scott Lahteine
a90cbc6339
[2.0.x] Wait for bed heaters between probing ( #10472 )
2018-04-21 15:43:21 -05:00
Scott Lahteine
5a064d0e94
Fix bug in planner.set_position_mm
2018-04-16 04:19:58 -05:00
Scott Lahteine
8f57e098de
Use end-of-line comments in planner.cpp
2018-04-15 19:02:30 -05:00
Scott Lahteine
36b97bde9f
clear_block_buffer, kill_current_block in quick_stop
2018-04-13 22:04:53 -05:00
Luc Van Daele
12785583d0
[2.0.x] G33 MIN_STEPS_PER_SEGMENT ( #10386 )
2018-04-12 20:22:29 -05:00
Luc Van Daele
646aa20b43
Overhaul of G33 Delta Calibration ( #8822 )
2018-04-11 21:14:48 -05:00
Luc Van Daele
ac2e0afb62
Low Point for delta calibration ( #10363 )
2018-04-11 18:59:46 -05:00
Eduardo José Tagle
57a899a412
[2.0.x] 6th-order jerk-controlled motion planning in real-time for AVR ( #10373 )
2018-04-11 18:13:42 -05:00
Sean
2d9b0a66fe
Add Filament Change accelerations
2018-04-09 23:57:27 -05:00
Scott Lahteine
8b8ad14178
Add Z_PROBE_LOW_POINT to prevent damage
2018-04-09 17:23:03 -05:00
etagle
a29adde5c0
Implement BEZIER_JERK_CONTROL
...
Enable 6th-order jerk-controlled motion planning in real-time.
Only for 32bit MCUs. (AVR simply does not have enough processing power for this!)
2018-04-07 21:03:28 -05:00
Lenbok
0e8242180d
Chamber temperature monitoring and auto fan control.
...
This is an initial cut for feedback, updated for 2.0.x.
Chamber temperature is currently reported along with hot end and bed
temperatures to serial. The format is just like that used for hot end
and bed temperatures, but using 'C' prefix. As there is no heater,
target is always 0. Is this appropriate, is there a better way to report
chamber temperatures?
Chamber temperatures are not reported on the LCD in any way.
When auto chamber fan is enabled, it currently just uses the same
temperature threshold as the other auto controlled fans.
As the chamber temperature is not connected to any heater, it doesn't
undergo mintemp/maxtemp monitoring. This would need to change in the
future if chamber heating became a feature.
2018-04-06 23:09:06 -05:00
Marcio Teixeira
75037493fa
Default active low for TMC2130 DIAG1 ( #10294 )
...
- Added sanity check to inform users to set the endstop to inverting
when using SENSORLESS_HOMING
2018-04-06 19:48:46 -05:00
Scott Lahteine
e8e60263c8
Scale feedrate (mm/s to deg/s) for SCARA
2018-04-06 19:47:48 -05:00
Scott Lahteine
1c36606886
Fix MSG_HEATING_FAILED_LCD_BED macro evaluation
2018-04-04 19:01:22 -05:00
Scott Lahteine
fe91514395
MBL should add z_offset regardless of fade ( #10308 )
2018-04-04 18:57:33 -05:00
Marcio Teixeira
8bc93c6f2b
Improve heating/cooling LCD messages ( #10293 )
2018-04-04 18:29:27 -05:00
GMagician
21a47b50f4
Additional tool-change fixes ( #10304 )
...
Followup to #10257
2018-04-04 17:06:33 -05:00
Karl Andersson
7cbbc2af7a
[2.0.x] Optional heater signal inversion ( #10260 )
2018-04-02 19:37:41 -05:00
Scott Lahteine
241996d5d6
Merge pull request #10257 from thinkyhead/bf2_tool_change_debug
2018-04-02 19:33:45 -05:00
Scott Lahteine
4c79dc1093
Fix a Serial+EEPROM compile error
...
Fixes #10278
2018-04-02 03:11:20 -05:00
Scott Lahteine
adcb87f0db
Z Endstop Servo => Z Probe Servo
2018-04-01 23:54:21 -05:00
Scott Lahteine
02f0f95d40
Handle disabled HYBRID_THRESHOLD in EEPROM ( #10275 )
2018-04-01 16:58:37 -05:00
Scott Lahteine
2672120a97
Do a small raise for all move-back
2018-03-31 22:43:05 -05:00
Scott Lahteine
5acccbacc1
Simplified leveling-based tool change
2018-03-31 22:43:05 -05:00
Scott Lahteine
d1734a089a
Split up tool_change for some setups
2018-03-31 22:43:05 -05:00
Scott Lahteine
7d8a46519f
Output ABC for delta stepper counts
2018-03-31 20:13:32 -05:00
Scott Lahteine
ac7e97f4fe
Change order of inactive stepper disable/enable
...
This ensures that steppers that share an enable pin will only be disabled for a miniscule time.
2018-03-30 15:07:38 -05:00
Scott Lahteine
b6a55f0891
Temporary workaround for tool-change compile error
...
Pending a more complete solution to tool-change Z deviation.
2018-03-29 17:55:57 -05:00
Scott Lahteine
b852781eba
Fix BLTOUCH compile error
...
Followup to #10250
2018-03-29 17:55:57 -05:00
Scott Lahteine
8b7381b626
Clear sensorless homing in home_delta after first move-to-top
2018-03-28 22:01:42 -05:00
Scott Lahteine
dbe2b6f7b0
Do moves towards endstops differently in do_homing_move
2018-03-28 22:01:42 -05:00
Scott Lahteine
2bc7f416ee
Fix missing comma in tmc_sgt
...
Fixes #10209
2018-03-28 17:05:14 -05:00
Bob-the-Kuhn
9656a82609
Fix G53/CNC_COORDINATE_SYSTEMS compilation, Travis testing ( #10227 )
2018-03-28 14:14:39 -04:00
Scott Lahteine
b287560258
Fix say_M603
2018-03-28 12:54:58 -05:00
Scott Lahteine
a891af2f7a
Enforce minimum TMC2130 / TMC2208 libs
2018-03-24 15:57:22 -04:00
Bob-the-Kuhn
8870f9b1da
Fix M503 helper functions following TMC updates ( #10197 )
2018-03-23 16:43:43 -05:00
Scott Lahteine
bb7236a750
Z correction on tool-change for all HAS_MESH ( #10199 )
2018-03-23 13:12:00 -05:00
Scott Lahteine
9da0797e29
Fix EEPROM size of tmc_hybrid_threshold
...
Followup to #10102
2018-03-23 02:08:35 -04:00
Roxy-3D
1628a9e864
make data declarations consistent
2018-03-22 19:25:28 -05:00
Scott Lahteine
1cb810ff1c
[2.0.x] Automatically reset stepper timeout ( #10179 )
...
* Automatically reset stepper timeout in manage_inactivity
Any code that adds moves to the planner can skip resetting the stepper timeout. We can let `idle` / `manage_inactivity` reset the timer whenever it detects any moves in the planner.
* blocks_queued => has_blocks_queued
2018-03-21 19:30:06 -05:00
Eduardo José Tagle
97e8a6ebd9
Various fixes for DUE... ( #10152 )
...
- Watchdog reset during SD Card initialization.
- Move `DebugMonitor` to `DebugMonitor_Due.cpp`.
- Since the watchdog is enabled on boot do extra resets during init.
- Have `thermalManager` do watchdog reset before its ISR starts to prevent reset.
- Ensure that timers are stopped before reprogramming them to address tone issues.
- Improve SAM3XE reset when reflashed through the native port.
2018-03-21 19:04:45 -05:00
Scott Lahteine
9fd1016bb1
Trust the bootloader to clear globals
2018-03-21 05:49:39 -05:00
Scott Lahteine
bc45fb6b13
Tweak use of move_z_after_probing
2018-03-21 01:25:08 -05:00
Scott Lahteine
c352954882
Allow no raise after run_z_probe in probe_pt
2018-03-21 01:24:51 -05:00
Scott Lahteine
8dfaf1539e
Merge pull request #10102 from thinkyhead/bf2_eeprom_M913
...
[2.0.x] More complete Trinamic driver options
2018-03-20 23:14:19 -05:00
AnHardt
837ac2fdbd
[2.0.x] Fix_Autotune_THERMAL_PROTECTION_BED_off ( #10166 )
...
- Fix Autotune Thermal Protection
- Make 2 constants in autotune configurable
2018-03-20 16:48:36 -05:00
Scott Lahteine
a5c6d3c7b8
Prevent null pointer crash in Endstops::update
...
Thanks to Evgeny Kotsuba!
2018-03-20 04:21:18 -05:00
Scott Lahteine
a46bac3100
Add 'I' parameter to M906/M913/M914; 'T' to M906/M913
2018-03-19 22:05:16 -05:00
Scott Lahteine
c95450016b
Improve Trinamic support in the EEPROM
2018-03-19 22:05:16 -05:00
Scott Lahteine
48d7036874
Consolidate smart stepper driver initialization
2018-03-19 22:05:16 -05:00
Scott Lahteine
eaefc1e410
Add CorePQ support for BABYSTEPPING ( #10155 )
2018-03-19 02:51:40 -05:00
Scott Lahteine
772810fb24
Followup to PORTVAR patch
2018-03-18 19:23:58 -05:00
Scott Lahteine
93af8aa157
Fix home_delta for SENSORLESS_HOMING ( #10145 )
2018-03-17 20:52:06 -05:00
Scott Lahteine
c6ff39cc14
Spacing cleanup
2018-03-17 16:49:08 -05:00
Scott Lahteine
a6feb58837
Delta support for multiple hotends with offsets ( #10118 )
2018-03-16 00:46:42 -05:00
Scott Lahteine
1e946d681d
Update Marlin for newest TMC libraries
...
- TMC2130Stepper v2.2.0
- TMC2208Stepper v0.0.4
2018-03-15 22:23:31 -05:00
Scott Lahteine
4aebe3d82e
Pretty up EEPROM port args
2018-03-14 22:44:25 -05:00
Scott Lahteine
51bf3c9503
Fix E direction for MK2_MULTIPLEXER with LIN_ADVANCE
2018-03-14 07:56:18 -05:00
Studiodyne
e7a61de8af
[2.0] FWRetract Reset (Best way) ( #10083 )
2018-03-14 01:35:30 -05:00
Scott Lahteine
e7570f3195
Improve TMC config organization, naming
2018-03-14 00:18:41 -05:00
Scott Lahteine
07cf2cd9c4
Fix sensorless_homing_per_axis compile warning
2018-03-14 00:18:40 -05:00
Scott Lahteine
14c03cb6f4
[2.0.x] Make MIN_PROBE_EDGE a general option (for electronic probes) ( #10069 )
...
Some probes don't work near the edges of the bed. This change promotes MIN_PROBE_EDGE to a general setting that applies to all probing functions.
2018-03-13 01:15:22 -05:00
Scott Lahteine
468f34104b
Patch do_blocking_move_to so 'destination' can be used
2018-03-12 08:16:17 -05:00
Scott Lahteine
28f1276286
[2.0.x] Add Z_AFTER_PROBING option ( #10058 )
...
Some "fix-mounted" probes need manual stowing. And after probing some may prefer to raise or lower the nozzle. This restores an old option but tailors it to allow raise or lower as preferred.
2018-03-11 13:07:55 -05:00
Scott Lahteine
751785fc97
Followup to recent patches
...
- `M666` is static, not inline
- Disambiguate some stepper macros
2018-03-10 21:41:17 -06:00
Scott Lahteine
a0211f5d6c
Disambiguate else in stepper_indirection.h
2018-03-10 19:56:22 -06:00
Scott Lahteine
f10c87b442
Update Endstops class for 1.1.x parity
2018-03-10 06:57:31 -06:00
Scott Lahteine
239902f861
Fix E2END and add EEPROM to Smart RAMPS
...
Reference #9983
2018-03-10 06:57:31 -06:00
Scott Lahteine
419d12ca1b
Add UNKNOWN_Z_NO_RAISE option
...
With this option enabled, Z won't ever be raised until after `G28` has been completed, and it won't raise if Z becomes unknown. This is good for machines whose beds fall when Z is powered off.
2018-03-10 00:17:34 -06:00
Scott Lahteine
3b4c89e4b5
Move do_probe_raise closer to set_probe_deployed
...
…and limit the raise to Z_MAX_POS
2018-03-10 00:17:34 -06:00
Scott Lahteine
2908e76151
Fix position_is_reachable_by_probe typo, add comment
...
Fix #10029
2018-03-10 00:15:41 -06:00
Scott Lahteine
161ff9ff35
Fix UPDATE_ENDSTOP for CorePQ compatibility
...
Fixes #9939
2018-03-09 08:54:48 -06:00
Scott Lahteine
49ca67202f
Patch configuration_store for extra serial port
...
Fix #9948
2018-03-09 07:42:27 -06:00
Scott Lahteine
16a8edc5f0
Add more delay before pulse off in Linear Advance ISR
...
A capital idea from https://github.com/MarlinFirmware/Marlin/pull/9914#issuecomment-371614153
2018-03-09 05:26:29 -06:00
Scott Lahteine
dfd5d2fe75
Have position_is_reachable_by_probe use the whole bed ( #10020 )
...
Previously `position_is_reachable_by_probe` was limited to the area specified for `G29` mesh leveling (even if leveling was disabled). This change will properly consider the entire bed area so that `G30` and other non-leveling probing may take place.
2018-03-09 03:37:30 -06:00
Scott Lahteine
3c2bfa5e53
Update powersupply_on in power_on/off ( #10015 )
...
Fix #10004
2018-03-08 18:56:47 -06:00
Scott Lahteine
8d32fd997f
Wrap NORM_E_DIR/REV_E_DIR macros in do{}while(0)
2018-03-08 16:20:24 -06:00
Scott Lahteine
98d48fc731
Followup to HAL_timer_restrain
...
Followup to #9985
2018-03-07 22:18:37 -06:00
Chris Pepper
a1a88ebabc
HAL function to ensure min stepper interrupt interval ( #9985 )
2018-03-07 17:53:25 -06:00
Scott Lahteine
9515e5aefb
Fix LA_active_extruder (static)
2018-03-07 05:49:20 -06:00
Scott Lahteine
e5ec793f7e
Wrap stepper indirection macros
2018-03-07 05:42:45 -06:00
Sebastianv650
5b85464791
Fix for LA ( #9964 )
...
Missed in the original LA 1.5 PR: eISR has to use a local copy of
current_block->use_advance_lead because it might still run wenn the last
block has been set to NULL.
2018-03-07 05:33:13 -06:00
Scott Lahteine
ffbf63e6af
Add HAS_TEMP_SENSOR conditional
2018-03-07 01:53:50 -06:00
Scott Lahteine
2057177184
Make enums into implicit char
2018-03-06 23:39:56 -06:00
Scott Lahteine
ca0def766e
LIN_ADVANCE single stepper optimization
2018-03-06 19:26:54 -06:00
Scott Lahteine
8291ae34f2
Support duplication mode in LIN_ADVANCE
2018-03-06 19:12:23 -06:00
Scott Lahteine
0dd1c4458d
Put more code between pulse start and stop ( #9959 )
2018-03-05 23:06:57 -06:00
Scott Lahteine
36262a0479
Use static classes for job timers ( #9938 )
2018-03-04 21:23:43 -06:00
Scott Lahteine
930720bbbb
Fix broken reverse planner ( #9943 )
...
From #9914 by @Sebastianv650
2018-03-04 21:19:06 -06:00
Bob-the-Kuhn
025118da3e
Init print_job_timer in setup() instead of "early" ( #9937 )
2018-03-04 16:23:44 -06:00
Scott Lahteine
07ae23fe14
No pulse delay on last e_steps in advance isr
2018-03-04 15:06:31 -06:00
Scott Lahteine
ed758de80d
tweak comment in stepper.cpp
2018-03-04 04:03:23 -06:00
Scott Lahteine
d1dc863962
autotemp_factor is not value_celsius_diff
...
See https://github.com/MarlinFirmware/Marlin/issues/9852#issuecomment-369861822
2018-03-03 23:27:54 -06:00
Thomas Moore
f3914a432e
Clear retracted status when homing the Z axis
2018-03-03 23:18:40 -06:00
Scott Lahteine
6d7f4f84e2
Add board MKS_BASE_HEROIC ( #9926 )
...
Followup to #9008
- Don't define micro-stepping pins for boards that lack them.
- Allow setting of 128 microsteps with `M350`.
2018-03-03 23:14:52 -06:00
Scott Lahteine
649f375494
Fix: M112 calling kill from interrupt ( #9923 )
...
Fix #9906
2018-03-03 23:14:01 -06:00
Studiodyne
23a576faf7
[2.0] Fix for FW retract ( #9878 )
2018-03-01 15:15:40 -06:00
Scott Lahteine
91db7930dc
Drop SCARA_FEEDRATE_SCALING
...
The updated planner takes the length of the move, so this pre-calculation is no longer needed.
2018-03-01 04:30:41 -06:00
Scott Lahteine
1746749361
Followup to #9868
2018-03-01 01:53:12 -06:00
Scott Lahteine
a446433c87
Fix SENSORLESS_HOMING for Core Kinematics ( #9868 )
2018-03-01 01:37:31 -06:00
Zachary Hill
c22f8dd660
Get duration_t in printcounter.h for its clients ( #9843 )
2018-02-28 04:15:29 -06:00
Scott Lahteine
966d9af98a
Mesh export in Bilinear + UBL M503
2018-02-25 23:25:39 -06:00
Scott Lahteine
8d5a77001e
EEPROM parity with 1.1.x
2018-02-25 23:03:09 -06:00
Sebastianv650
cb4cb86d80
Useless line removed ( #9814 )
...
nextAdvanceISR is set in the next if structure in every possible
situation, so it's useless to set it once more before.
2018-02-25 21:20:37 -06:00
Scott Lahteine
0557ab5780
Fix CONFIG_ECHO_START bug
...
In reference to #9633
2018-02-25 05:34:52 -06:00
UtterlyD
813f9f3082
[bugfix_2.0.x] - LIN_ADVANCE V1.5 stepper.cpp ( #9797 )
...
Removal of obsolete (i) from port of LIN_ADVANCE from V1.1.x to V2..0.x.
2018-02-24 16:37:23 -06:00
Scott Lahteine
3f89bbeab5
Drop a conditional only used once
2018-02-24 16:35:31 -06:00
Scott Lahteine
689bc99402
Correction to acceleration
2018-02-24 11:09:36 -06:00
Scott Lahteine
2bd252b501
[2.0.x] LIN_ADVANCE v1.5 ( #9712 )
2018-02-23 00:53:29 -06:00
Scott Lahteine
2c9775313a
Fix Z position on HD44780
...
Fix #9732
2018-02-23 00:42:42 -06:00
teemuatlut
5968a3e60e
Add ADVANCED_PAUSE_FEATURE include
2018-02-22 20:28:46 +02:00
Scott Lahteine
73cd34b121
Finish AUTO_POWER_CONTROL implementation
...
Followup to #9503
2018-02-19 16:12:04 -06:00
Scott Lahteine
b3deadd898
Don't raise FIX_MOUNTED_PROBE on stow
...
Reference #9336
2018-02-19 08:36:43 -06:00
Scott Lahteine
3d1692d1fd
Fix X2 enable with X_DUAL_STEPPER_DRIVERS
...
From #9286
2018-02-18 22:50:47 -06:00
Scott Lahteine
c241da32e8
stepper.h parity with 1.1.x
2018-02-18 22:50:38 -06:00
Scott Lahteine
ca55f2927a
Pulldown pin mode support ( #9701 )
...
Implemented for LPC1768.
2018-02-18 19:26:23 -06:00
Scott Lahteine
83d7e95de0
Add MSG_THERMAL_RUNAWAY_BED ( #9691 )
2018-02-18 02:23:55 -06:00
Scott Lahteine
472229b974
Fix #9681
2018-02-17 08:28:12 -06:00
Scott Lahteine
03d790451f
[2.0.x] HAL timer set/get count => set/get compare ( #9581 )
...
To reduce confusion over the current timer count vs. the compare (aka "top") value. Caution: this re-uses the function name, changing its meaning.
2018-02-10 20:42:00 -06:00
Scott Lahteine
7280fa1e31
Patch Power class
2018-02-10 15:41:18 -06:00
Scott Lahteine
e698998343
More reliable PROBING_HEATERS_OFF with BED_LIMIT_SWITCHING
2018-02-08 21:10:11 -06:00
Thomas Moore
1541224a81
Enable Z axis and delta sensorless homing ( #9516 )
2018-02-08 04:20:44 -06:00
Scott Lahteine
d168ee9bed
Drop leveling include from steppers.cpp
2018-02-08 01:32:19 -06:00
Scott Lahteine
b5e92f4f90
[2.0.x] Enable / disable PSU automatically ( #9503 )
2018-02-06 00:22:30 -06:00
ABH10
ac6bf7226a
Update of comments in thermistor files. No functional changes. ( #8986 )
2018-02-04 06:06:21 -06:00
Thomas Moore
786746404b
[2.0.x] Apply feedrate to nozzle movement for kinematic machines ( #8778 )
2018-02-04 00:26:05 -06:00
Thomas Moore
e1fd9c08b3
[2.0.x] Add support for LPC1769 at 120 MHz ( #9423 )
2018-02-03 19:33:26 -06:00
Scott Lahteine
9b9350e010
Fix jerky Z motion between probes
...
Suggested by #9375
2018-02-02 02:32:11 -06:00
GMagician
ea9ad4e46d
[2.0.x] Fix compile error on delta when NO_WORKSPACE_OFFSETS ( #9388 )
2018-02-02 01:44:48 -06:00
Scott Lahteine
c251601916
Simplified SET_BIT, moved to endstops.cpp
2018-02-02 00:34:23 -06:00
Scott Lahteine
f8227abf1c
Merge pull request #9384 from tcm0116/2.0.x-retract
...
[2.0.x] Clear retracted status when homing the Z axis
2018-02-01 23:36:36 -06:00
teemuatlut
5c69d45f5b
[2.0.x] TMC2130 support for LPC platform ( #9114 )
2018-02-01 21:49:40 -06:00
Thomas Moore
7035471982
Clear retracted status when homing the Z axis
2018-01-29 19:40:04 +00:00
Scott Lahteine
2bea1bda56
Move more strings to PROGMEM
2018-01-24 00:06:06 -06:00
Scott Lahteine
1dcfe193ac
Optimize some serial strings
2018-01-23 19:14:00 -06:00
Scott Lahteine
9644fe1839
Lightly optimize arc length calculation
2018-01-23 19:13:59 -06:00
Scott Lahteine
3217da6fa5
Followup patch for TMC stepper init
2018-01-23 14:00:06 -06:00
Scott Lahteine
db031d5d76
Add missing SoftwareSerial begin for TMC2208
...
Based on #9299
2018-01-22 10:43:24 -06:00
Scott Lahteine
f7f8569bbf
Fix skew settings report precision
...
Followup to changes from #8843
2018-01-22 08:32:47 -06:00
Scott Lahteine
205c5fa078
Merge pull request #9277 from oysteinkrog/fix/DualX_Endstops
...
[2.0.x] Fix DUAL_X_CARRIAGE endstop tests
2018-01-22 07:42:49 -06:00
Scott Lahteine
90d011cc48
Use ADD_PORT_ARG for all cases
2018-01-22 06:27:22 -06:00
Scott Lahteine
51c7b5d46f
Fix set_home_offset bug from bad porting
2018-01-22 06:16:21 -06:00
Scott Lahteine
61bf8478a2
Add hotEnough methods
2018-01-22 04:38:37 -06:00
Scott Lahteine
7d6c009104
Add thermistor 15 tuned for JGAurora A5
2018-01-22 01:27:11 -06:00
Scott Lahteine
382a5e3318
Clean up trailing whitespace
2018-01-21 17:19:38 -06:00
Øystein Krog
441517bbe1
Fix DUAL_X_CARRIAGE endstops
...
\#8170 fixed
2018-01-21 15:32:19 +01:00
Scott Lahteine
887664aa61
Restore broken Dual X Carriage
2018-01-20 15:08:50 -06:00
Scott Lahteine
2e2fd8fd79
Merge pull request #9261 from tcm0116/2.0.x-delta_softstops
...
[2.0.x] Allow DELTA to compile with soft endstops disabled
2018-01-20 14:16:30 -06:00
Scott Lahteine
750cc02b3a
Use delay() in serial temp report
2018-01-20 14:13:17 -06:00
Thomas Moore
44239b1062
Allow DELTA to compile with soft endstops disabled
2018-01-20 09:40:36 -06:00
Scott Lahteine
afec16e644
Merge pull request #9240 from tcm0116/2.0.x-eeprom
...
[2.0.x] Follow-on to #9161
2018-01-19 22:36:24 -06:00
Thomas Moore
429e6ba8a6
Fix lcd_preheat dummy variable types
2018-01-19 15:24:13 -06:00
Scott Lahteine
d5bf9e74c4
Merge pull request #8996 from p3p/pr_bf2_more_adc_filter
...
[2.0.x] PID control fix and more LPC1768 ADC filtering
2018-01-15 05:14:25 -06:00
Scott Lahteine
42933c804a
Cleanups for STM32F7
2018-01-15 02:46:37 -06:00
Morten
a0246c5c96
Add support for STM32F7 MCU
2018-01-15 01:13:03 -06:00
Scott Lahteine
a408209d24
More reliable temperature serial report?
2018-01-15 00:43:51 -06:00
Scott Lahteine
4f5e087ff4
Planner anti-stutter by Sebastian Popp
2018-01-14 21:07:10 -06:00
Thomas Moore
cfd989d7c5
Fix EEPROM SettingsData for 32-bit architectures
2018-01-12 19:38:23 -06:00
Bob-the-Kuhn
da600e5fbe
Merge pull request #9132 from Bob-the-Kuhn/add-VIKI2-to-Travis
...
[2.0.x] add VIKI2 test to Travis & fix LCD contrast (again)
2018-01-12 00:42:04 -06:00
Thomas Moore
84de428d30
[2.0.x] Fix compile errors ( #9141 )
...
* Update persistent_store_impl.cpp
* Remove define BYTE from serial functions since Arduino docs typically show 0 for the normal case.
2018-01-11 21:43:26 -06:00
Bob-the-Kuhn
e633ce06c7
LCD contrast type mismatch is back
...
WORKS!
2018-01-11 10:32:58 -06:00
Thomas Moore
f7efac57b7
Multi-host support
2018-01-10 00:14:47 -06:00
Scott Lahteine
7e000e6af4
More EEPROM field debugging ( #9123 )
2018-01-09 18:33:44 -06:00
GMagician
5295b4713d
[2.0.x] add semitec 104NT-4 ( #9119 )
...
Table is very very similar to old 104-GT2 so I added only the name and recycled old ID
2018-01-09 16:53:12 -06:00
Scott Lahteine
99516572b1
Fix TMC current read from EEPROM
2018-01-07 20:48:46 -06:00
Christopher Pepper
14dcad6bbc
LPC1768: Increase ADC median filter from 3 values to 23
...
Clarify the HAL_adc_get_result method to make sure correct values enter the filters
HAL: Fix the PID control loop for non-AVR platforms
2018-01-07 22:15:20 +00:00
Scott Lahteine
60d07f20e7
Make mbl.has_mesh() a method
2018-01-07 00:13:36 -06:00
Scott Lahteine
2b5a9be49c
Fix M503 skew output
...
Followup to 19e75ccf86
2018-01-06 20:55:57 -06:00
Scott Lahteine
702c8acdd5
Settings FIELD_TEST fix
2018-01-05 19:13:30 -06:00
Scott Lahteine
e89f1453ab
UBL G29 works without settings.load()
2018-01-05 15:48:34 -06:00
Scott Lahteine
950be70a33
Add FIELD_TEST to validate storage
2018-01-05 15:48:34 -06:00
Scott Lahteine
760c912ab9
Add data size validation
2018-01-05 15:48:34 -06:00
Scott Lahteine
b91ca168fb
Add a struct defining EEPROM storage
2018-01-05 15:48:34 -06:00
Scott Lahteine
51e0f2bee3
Add MarlinSettings::validate()
2018-01-05 14:35:24 -06:00
Scott Lahteine
878f54c27b
Write filler with NO_VOLUMETRICS
2018-01-05 10:29:49 -06:00
Scott Lahteine
3ea6745b36
Pretty up TMC current write
2018-01-05 10:29:49 -06:00
Scott Lahteine
1c41de16d4
Trailing whitespace clean
2018-01-05 10:11:31 -06:00
Scott Lahteine
1746a7352e
Merge pull request #9042 from thinkyhead/bf2_M701_M702
...
[2.0.x] Improved Pause/Load/Unload, M701-M702
2018-01-04 19:41:58 -06:00
Roxy-3D
3a4e107b6b
use SERIAL_EOL(); instead of new line string
2018-01-04 16:20:18 -06:00
Roxy-3D
19e75ccf86
Add enough precision so planner.xy_skew_factor doesn't print as 0.00
2018-01-04 16:02:22 -06:00
Scott Lahteine
7541316bb4
Add M701/M702 Filament Load/Unload, M603
2018-01-04 15:07:37 -06:00
Scott Lahteine
a80f2eea23
Group leveling reports for folding
2018-01-04 03:56:36 -06:00
revilor
0e93506985
Fix for issue #9005 , #8942 - Bed PID autotuning ( #9036 )
2018-01-04 03:26:14 -06:00
Scott Lahteine
4af3d436b2
M303 pid autotune cleanup, commentary
2018-01-03 21:30:45 -06:00
Tannoo
e43f3ac989
EEPROM init fix
2018-01-03 04:31:01 -06:00
Scott Lahteine
fc67c64b8f
Merge pull request #8989 from tcm0116/2.0.x_ubl
...
[2.0.x] Fix UBL compilation warnings
2018-01-02 21:38:45 -06:00
Thomas Moore
8afc4f8d9d
Fix UBL compilation warnings
2018-01-02 21:00:06 -06:00
Scott Lahteine
5e01ee8adf
Temperature updates for parity with 1.1.x
2018-01-01 18:29:08 -06:00
Scott Lahteine
d80c4f1a6e
Fix typo in delta call to buffer_line
...
Fix #8901
2017-12-31 01:40:07 -06:00
Scott Lahteine
5effe1590c
Fix NO_VOLUMETRICS bug
2017-12-26 20:04:44 -06:00
Scott Lahteine
4b49ea1e92
General cleanup of config-store, reset_bed_level
2017-12-25 05:16:01 -06:00
Scott Lahteine
705ea98fd3
Comment return false
in motion functions
2017-12-24 22:57:15 -06:00
Scott Lahteine
50366b00d5
Tweak cleaning buffer / SD finished command
2017-12-24 20:35:05 -06:00
Scott Lahteine
869c89d83f
Merge pull request #8865 from thinkyhead/bf2_more_scara_scaling
...
[2.0.x] SCARA Feedrate Scaling for G2/G3 - using HYPOT
2017-12-24 19:18:13 -06:00
Thomas Moore
2917d1217d
Revert "Followup to #8698 "
...
This reverts commit 4e891e9fb7
.
2017-12-23 17:00:33 -06:00
Scott Lahteine
caa5093498
General DELTA_IK macro
2017-12-21 22:41:57 -06:00
Scott Lahteine
c694608450
Apply SCARA_FEEDRATE_SCALING to G2/G3
2017-12-21 22:33:27 -06:00
Scott Lahteine
97d509d4d2
Revert "Improved Core-compatible jerk code"
...
Reverting commit 3cd7659
2017-12-21 16:54:30 -06:00
Scott Lahteine
5bc2acc072
Restore position_float to fix LIN_ADVANCE
2017-12-21 16:45:46 -06:00
Scott Lahteine
913d9e9a59
Matching sign across filwidth vars
2017-12-20 00:17:19 -06:00
Scott Lahteine
fdc5e72720
A single setting to validate filament width
2017-12-19 21:33:25 -06:00
Scott Lahteine
933f76fda3
Option to disable all volumetric extrusion
2017-12-19 19:51:25 -06:00
Scott Lahteine
fc9ee1a4de
Fix up serial sanity check
2017-12-19 19:11:43 -06:00
Scott Lahteine
de5ca96654
More parity with 1.1.x, plus whitespace
2017-12-19 18:36:16 -06:00
Scott Lahteine
8df5955da4
Revert "Reset timer count before first block step"
...
This reverts commit 5cf6a062e3
.
2017-12-17 02:37:35 -06:00
teemuatlut
0cd1e91056
[2.0.x] TMC driver update ( #8769 )
2017-12-15 15:03:14 -06:00
Scott Lahteine
09d13f186f
Correct unskew, after all
2017-12-15 14:24:20 -06:00
Dave Johnson
0d531d9655
Missing HAS_HEAT_BED conditional
...
Fixes issue found in #8779
2017-12-15 11:33:37 -08:00
Scott Lahteine
368c124de8
Fix Planner::unskew parity with skew
2017-12-13 17:46:48 -06:00
Scott Lahteine
cf2193c07f
Comment, fix filament width sensor
2017-12-13 02:32:34 -06:00
Scott Lahteine
24f9bec6f4
UBL + DUAL_X_CARRIAGE compatibility
2017-12-11 03:08:18 -06:00
Scott Lahteine
3255712343
Skew Correction for UBL
...
Also remove unused grid slicing function when using UBL segmented.
2017-12-11 03:08:15 -06:00
Scott Lahteine
3db5303bfe
_buffer_line => buffer_segment
2017-12-11 00:27:06 -06:00
Scott Lahteine
a71d2f3f40
UBL_DELTA => UBL_SEGMENTED
2017-12-11 00:27:06 -06:00
Scott Lahteine
73e32925e4
References are better for array args
2017-12-11 00:27:06 -06:00
victorpv
a5150c83a2
[2.0.x] Multiple updates to STM32F1 HAL ( #8733 )
...
* STM32F1 HAL
Adding files for STM32F1 HAL based on libmaple/stm32duino core.
Current persistent_store uses cardreader changes to be sent in separate
commit, but could be changed to use i2c eeprom.
There is another persistent_store implementation that uses the MCU flash memory
to emulate eeprom
Adding readme with some information about the stm32 HAL.
* Switch to Timer4 to avoid a hard reset on STM32F103C6 boards
On bluepill STM32F103C6 boards, using Timer5 results in a error() vector call. Switch to 4 since these are both general purpose, 16 bit timers.
* Add support for EEPROM emulation using Flash
Some low end machines doe not have EEPROM support. Simulate it using the last two pages of flash. Flash does not allow rewrite between erases, so skip writing the working version if that's enabled.
* Basic Pins for a malyan M200
This is a work in progress to go hand in hand with the STM32 work.
* Add support for ADC with DMA. This work has exposed a problem with the pin enumerations in STM boards vs what marlin expects (i.e, try defining PA0 as a temp pin). The hack can be removed with we go to fastio completely. To see this work, set something in adc_pins to a value like PA0 and connect your pullup resistor'd thermistor.
* Missing file - change HAL_adc_init to actually do something
We have an actual ADC init function now.
* Remove pinmode hack
Remove the pin mode hack that I was using to init PA0.
Updated Readme.md
* Several changes to timers and GPIO
Faster GPIO, and faster timer functions by accesing registers and
libmaple.
Still more changes pending for the Timer's code to skip using the
HardwareTimer class altogether.
Switch all enums to be within #defines
This change allows a user to have, for instance, TEMP_4 and TEMP_BED definied but nothing else. The enums which are not defined move "out", allowing the first ones to take the slots in the enum, and since the array is sized on ADC_PIN_COUNT, we always have the right size data and in order.
* Update Malyan M200 pins
Update Malyan M200 pins with correct fan values.
* Test all pins on actual hardware, update definitions
Some of the pin definitions were from knowlege base/pdfs. Now they've been tested against actual hardware. This should be very close to final.
* Update HAL_timers_Stm32f1.cpp
* Add sample configurations for Malyan M200
Add sample configuration for Malyan M200 without bed leveling, and move fan to auto cool E0 since this printer by default has only one fan.
Choose the timer based on MCU defintion. Timer5 is not valid on C8/CB class boards, so use Timer4 for the step timer.
readme.md update
* Updates to timers, and some stm32 boards definitiions
* Correct pin toggle macro.
* Remove duplicated Malyan M200 entry from pins.h
* Update configuration_store.cpp
* Formatting, indentation
* Formatting in HAL_Stm32f1.cpp
2017-12-10 23:12:45 -06:00
Scott Lahteine
204199e1ce
Only compare XYZ to check motion
2017-12-10 23:00:00 -06:00
Scott Lahteine
6686d937fb
Always report position on config load/reset
2017-12-10 21:47:14 -06:00
Scott Lahteine
03ba79f144
Sync and report changed position
2017-12-10 21:39:49 -06:00
Scott Lahteine
5cf6a062e3
Reset timer count before first block step
2017-12-10 18:38:53 -06:00
Scott Lahteine
82ef6b5242
Add an option to specify "pulse" timer
2017-12-10 18:38:53 -06:00
Scott Lahteine
4fa65a5c25
TCNT0 => HAL_timer_get_current_count
...
Fix #8710
2017-12-08 22:35:28 -06:00
AnHardt
b3daf6b5db
[2.0.x] better reverse pass ( #8722 )
...
* repair reverse_pass()
And make it readeble.
This was broken a long time ago.
Not competely unfunctional but far from optimal.
* Minor speedup when calling calculate_trapezoid_for_block
2 float / to 1 foat / and 2 float *
* Various style changes
2017-12-08 21:38:45 -06:00
Bob-the-Kuhn
65d0f32f82
divide only when required
2017-12-08 18:14:27 -06:00
Scott Lahteine
728acf521c
Followup to #8706
2017-12-08 03:49:33 -06:00
Scott Lahteine
85c6ffbe0d
Discard all "continued" blocks on interrupted move
2017-12-08 02:32:58 -06:00
Scott Lahteine
4e891e9fb7
Followup to #8698
2017-12-08 01:01:12 -06:00
Scott Lahteine
de3d3b9cb1
Put FORCE_INLINE before static
2017-12-08 00:46:22 -06:00
Scott Lahteine
ae663a4198
PROBE_DOUBLE_TOUCH => MULTIPLE_PROBING
2017-12-07 16:44:13 -06:00
Scott Lahteine
3cd7659924
Improved Core-compatible jerk code
2017-12-06 23:57:57 -06:00
Scott Lahteine
81c0a918af
feed_factor => inverse_secs
2017-12-06 23:03:33 -06:00
Scott Lahteine
9898b96992
No lcd_map_control flag in quick_stop
2017-12-06 22:23:34 -06:00
Scott Lahteine
840289e7cc
Use block cleaning instead of split flag
2017-12-06 22:22:58 -06:00
Scott Lahteine
2fde60da12
Changes for parity with 1.1.x
2017-12-06 21:50:54 -06:00
Scott Lahteine
6040d4080e
Cleanup stepper ISR. Allow cleaning for endstops.
2017-12-06 21:23:37 -06:00
Scott Lahteine
a4e1d83599
Fix M503 S parameter
2017-12-06 21:23:37 -06:00
AnHardt
a993c5227d
Don't split first_move while homing or probing
...
While homing or probing it might be bad if the stop/trobe triggers during the first part and the second is still in the buffer.
2017-12-06 14:13:05 +01:00
Scott Lahteine
5fbb2f121e
Remove skew warning that could crash the planner
2017-12-05 20:27:20 -06:00
Richard Wackerbarth
c1184552ac
Change K1 to required option PID_K1
2017-12-05 19:59:59 -06:00
Scott Lahteine
d8b444c144
Cleanup constextpr in planner.cpp
2017-12-05 18:55:57 -06:00
Scott Lahteine
a2372cfab5
Fix SKEW_CORRECTION without leveling
2017-12-05 18:48:34 -06:00
Scott Lahteine
b27bc67271
Set initial endstops state
2017-12-05 01:10:31 -06:00
Scott Lahteine
53694ebaa1
Folllwup to planner splitting
2017-12-04 18:55:23 -06:00
Scott Lahteine
4b612f590c
Split first move to planner for better chaining
2017-12-04 15:27:47 -06:00
Scott Lahteine
dd8febca1a
Revert "Merge pull request #8611 from thinkyhead/bf2_planner_split_first"
...
This reverts commit 824980e70e
, reversing
changes made to aa7efb96bf
.
2017-12-03 17:50:19 -06:00
Scott Lahteine
3a97de52ef
Split first move to planner for better chaining
...
Address #8573 , #8595
2017-12-03 01:27:14 -06:00
Scott Lahteine
63a91cd37a
Fix a homing comment
2017-12-02 21:02:37 -06:00
Scott Lahteine
8056120195
Rename inverse_mm_s => inverse_secs
2017-12-02 20:28:09 -06:00
Scott Lahteine
23557f8e77
Remove obsolete de_float
2017-12-02 20:23:10 -06:00
Jonathan Barchi
05f8e98c4a
Fix for issue #8629 - mismatch between number of stored and loaded dummy items on non-delta machines. ( #8631 )
2017-12-02 19:04:58 -06:00
Scott Lahteine
000b3b3117
Comment/cleanup of motion code
2017-12-02 01:09:55 -06:00
Scott Lahteine
45c2388a58
Apply const to thermal_runaway_protection args
2017-12-01 19:42:44 -06:00
Scott Lahteine
0154e3480c
New feature: BED_SKEW_CORRECTION
2017-12-01 19:39:49 -06:00
Scott Lahteine
91fb6231b2
Fix EEPROM V45 header, layout
2017-11-30 22:45:17 -06:00
Scott Lahteine
dd3ce40826
Drop Planner::position_float, use int types
2017-11-30 17:43:31 -06:00
Scott Lahteine
ec6ca37ed3
Fix (un)apply_leveling fade bug
2017-11-30 17:25:44 -06:00
Scott Lahteine
a52fec6ac4
Planner class parity with 1.1.x
2017-11-30 15:55:08 -06:00
Scott Lahteine
23e45fa3c4
Apply const to some planner vars
2017-11-29 21:02:55 -06:00
Scott Lahteine
ef2531558c
Add an option to segment leveled moves
2017-11-29 16:57:30 -06:00
Scott Lahteine
285b868e9b
Tweak planner code style
2017-11-29 15:22:18 -06:00
Scott Lahteine
1f2acc33bc
Tweaks for check_axes_activity
2017-11-28 18:41:13 -06:00
Scott Lahteine
a8aa43ce2d
Merge pull request #8587 from AnHardt/2_Fix_WDTO_during_long_DELTA_moves
...
[2.0.x] Fix WDTO during long delta moves
2017-11-28 17:29:18 -06:00
Scott Lahteine
16baa48699
Fix #8579
...
Fan speed code fell into a curly brace
2017-11-28 16:12:14 -06:00
AnHardt
02aa93a6ad
Fix Watchdog time out during long lasting DELTA moves
...
During long lasting moves of a delta machine neither the temperatures are maintained nor buttons checked nor ... .
The fix is to call 'manage_heater()' and 'idle()' every now and then in the loop where the move is segmented.
The code is abot the same as in G2_G3 wher we had the same problem with too large circles lasting too long.
Fixing #7510
2017-11-28 17:03:51 +01:00
Scott Lahteine
fadf9eb2d7
Simplify midpos calculation
2017-11-27 14:00:35 -06:00
Scott Lahteine
a67cf78c6b
Clean up whitespace, spacing
2017-11-26 20:18:52 -06:00
Scott Lahteine
25674da90c
Tweaks to do_blocking_move
2017-11-25 23:31:16 -06:00
Scott Lahteine
27c5692b13
Syntax tweaks
2017-11-25 18:13:36 -06:00
LVD-AC
65f365333f
[2.0.x] G33 probe error handling
2017-11-25 16:19:10 -06:00
Roxy-3D
d29cb646e3
Fix erroneous reference to temperature in time calculations
...
Travis is having problems at: https://github.com/MarlinFirmware/Marlin/pull/8560
So... doing a direct commit to get things correct. Bugfix_v1.1.x does not have this bug. Nothing needs to be done to that branch.
2017-11-25 10:40:56 -06:00
Scott Lahteine
a9ecb975b2
Apply LINEAR_UNIT to M503 output for M200
2017-11-24 17:32:48 -06:00
Scott Lahteine
80ada58818
One fewer function call in probe_pt
2017-11-24 17:10:38 -06:00
Scott Lahteine
01e207213f
Fix MK2_MULTIPLEXER stepper indirection
2017-11-24 12:49:28 -06:00
Scott Lahteine
a03f93bab4
Fix fan kickstart
2017-11-23 21:42:45 -06:00
Scott Lahteine
9e3c41f9e8
Tweak fan kickstart / speed code
2017-11-23 15:20:35 -06:00
GMagician
118ac61e59
[2.0.x] Tool change bad behaviour fix
...
Previous fix did not work as expected when axeis not homed. It raise Z but never return to original position
2017-11-22 20:24:03 -06:00
Scott Lahteine
617993d0ea
Patch for !!TEST (was _BV once?)
2017-11-21 16:12:08 -06:00
GMagician
a61127a421
[2.0.x] tool change bad behaviours
...
This will solve 2 issues on tool change.
1) when no home is done ("no_move" is set) tool change should never move X & Y because... I don't know where I am...only Z should be adjusted to avoid bed collision if other nozzle is lower than current.
Since no move no bed level matrix should be applied
2) When SWITCHING_NOZZLE is enabled and system is homed there are two movements to go to destination, but first can move Z to older position and then crash on the bed
2017-11-20 16:34:55 -06:00
Vitaliy Sapyanov
e2724c68ab
Update pins_RURAMPS4D.h
...
Add and bugfix pins
2017-11-20 15:36:13 -06:00
Unknown
33912fa7e8
Update Temperature::setPwmFrequency prototype to match source
...
Introduced with #8446
2017-11-20 01:50:41 -08:00
Scott Lahteine
25af9decfe
Remove enum.h include of MarlinConfig.h
2017-11-19 15:43:38 -06:00
Scott Lahteine
1d4571b88d
Dependency adjustments
2017-11-19 15:43:38 -06:00
Scott Lahteine
c0000a0cdc
Move servo code to modules/servo.*
2017-11-19 14:23:02 -06:00
Bob-the-Kuhn
c14000775b
PWM fixes, slow down fan update
...
include LPC1768 syntax for M42
couple more pin_t changes
consistency
change M42 to R, P format
Revert "change M42 to R, P format"
This reverts commit 01f12f579ec9ccc1bb9126e68d2c86449e9b7edf.
2017-11-18 07:05:50 -06:00
Scott Lahteine
60adc6ff02
Display filwidth ratio in terms of E mm
2017-11-18 07:01:49 -06:00
Scott Lahteine
485abb023b
Merge pull request #8456 from thinkyhead/bf2_wednesday_tweaks
...
[2.0] No retroactive adjustment with M851 Z
2017-11-18 04:49:53 -06:00
Scott Lahteine
3bba7d60f3
No retroactive changes with M851 Z
...
If using babystep to adjust the Z probe offset, the axis will move and the mesh will be updated at the same time, causing a doubling of the Z offset over the rest of the print.
To correct for this, the current Z position would need to be modified in the opposite direction, canceling out the additional Z offset added to the mesh. This would be confusing to users, and moreover it would not be accurate without also taking the current Z fade level and current Z height into account.
It might make sense to change the mesh in the case where no babystepping is taking place, but this could be considered an undesirable side-effect of changing the `zprobe_zoffset`.
One way to remedy this would be to return to storing the mesh with `zprobe_zoffset` included, then subtracting `zprobe_zoffset` from the returned Z value. Thus, a babystep moving the Z axis up 1mm would subtract 1 from `zprobe_zoffset` while adding 1 to all mesh Z values.
Without including the `zprobe_zoffset` in the `z_values` there is no safe way to alter the mesh in conjunction with babystepping, although it's fine without it.
2017-11-18 03:36:39 -06:00