Commit graph

6478 commits

Author SHA1 Message Date
Brian 6cb0fa4128 Cleanup previous implementation of new quiet probing
Saves a few lines of code.
2017-05-08 08:13:46 -04:00
bgort 4b7f8ad9c6 Merge pull request #6610 from bgort/pio-improvements2
PlatformIO-related changes
2017-05-08 07:52:42 -04:00
Scott Lahteine 56ca47ab9d Patch configuration temp units 2017-05-07 21:32:01 -05:00
Scott Lahteine 421dd62800 Adjust spacing of "spaces" 2017-05-07 21:28:54 -05:00
Scott Lahteine 26dba44cd3 Patch redundant lcd settings 2017-05-07 21:28:54 -05:00
Scott Lahteine 34b5041576 Spacing adjustment, ubl_G29 2017-05-07 21:28:54 -05:00
Scott Lahteine 1c4ed8b106 Note 5 extruders in config comments 2017-05-07 21:28:54 -05:00
Scott Lahteine 6e4a5cc8c6 Patch missing const in temp_abs 2017-05-07 21:13:44 -05:00
bgort d35e2fda10 Merge pull request #6622 from bgort/silentprobing
Improve BLTOUCH_HEATERS_OFF functionality
2017-05-07 21:33:44 -04:00
Scott Lahteine 6ed52fb765 Adjust spacing in LSF 2017-05-07 19:11:52 -05:00
Roxy-3D 110afff415 More misc UBL fixes and update gMax examples (#6632)
I think I forgot to Sync before I committed last time.   Some UBL
changes did not stick.

Also, update the gMax configuaration.h file so other than unique numbers
and settings, it exactly matches the default configuration.h file.
2017-05-07 19:02:24 -05:00
Roxy-3D d92fa40c62 misc. UBL fixes (#6631)
* Restore LSF functionality

Some of the typo's persisted...   Hopefully this gets them all fixed.

* Restore user's expectations of how G28 should behave

* Allow Nozzle size control with ornery host programs
2017-05-07 18:23:48 -05:00
Brian faa270071d Improve BLTOUCH_HEATERS_OFF functionality
- rename to PROBING_HEATERS_OFF
 - move heater pausing functionality into thermalManager
   - add variables, pause(), ispaused(), other functions
 - add fan pausing functionality -> PROBING_FANS_OFF
 - add probing_pause() wrapper
 - move pausing into do_homing_move() and do_probe_move() to minimize quiet time and so other probe types can benefit
 - example configs
2017-05-07 16:22:08 -04:00
lrpirlet d66e9efac5 G29 P1 stops reporting Invalid location with this patch 2017-05-07 15:07:26 +02:00
Scott Lahteine ce507deb9f Support temperature units in M503 2017-05-06 20:24:51 -05:00
bgort a59066bca9 Various improvements - mostly UBL-related (#6607)
UBL Clean up.
2017-05-06 18:59:16 -05:00
Brian 0446dd3ad8 PlatformIO-related changes
- move platformio.ini out of source directory to be more consistent with 'normal' PlatformIO usage
  - facilitates IDE integration
- add related .gitignores
2017-05-06 06:22:10 -04:00
Scott Lahteine 77769e284f Edit configuration comments 2017-05-05 13:32:31 -05:00
Scott Lahteine 6876e79d42 Tweak command index increment 2017-05-05 13:32:31 -05:00
Scott Lahteine 7fcb5c1424 Minor fix in K8200 readme 2017-05-05 11:25:11 -05:00
Max Matveev 267f3a03d9 Fixed USE_CONTROLLER_FAN #define usage 2017-05-04 23:38:29 +02:00
bgort ae7c602031 fix error in M105 output -- use SERIAL_PROTOCOL for ints instead of SERIAL_PROTOCOL_F (#6584)
also removed wayward 'address of' ampersand in setTargetHotend and setTargetBed parameters
2017-05-04 16:09:45 -05:00
Scott Lahteine 3cd9af2409 bugfix-1.1.x ReadMe, Version, helper scripts 2017-05-04 07:17:10 -05:00
Florian Heilmann 15268770f5 Fix broken fwretract recovery extruder feedrate
When both lowering and recovery are performed using the same "prepare_move_to_destination()" the extruder recovery feedrate ends up being ignored and, instead, is only capped by either the maximum e-speed or the time it takes to perform the z-lowering. 
Performing the two moves separately from each other ensures a correct recovery feedrate.
2017-05-04 11:34:28 +02:00
Scott Lahteine 58210c3a19 Merge pull request #6568 from thinkyhead/rc_bilinear_extension
Add EXTRAPOLATE_BEYOND_GRID option to bilinear leveling
2017-05-04 00:46:05 -05:00
Scott Lahteine da08e11acd Add EXTRAPOLATE_BEYOND_GRID option to bilinear leveling 2017-05-04 00:19:07 -05:00
Scott Lahteine 6834e36871 Merge pull request #6567 from thinkyhead/rc_sdcard_stop
Shutdown heaters, autotemp on SD Cancel
2017-05-03 23:54:29 -05:00
Scott Lahteine 399efd66ed Click to resume 2017-05-03 22:26:06 -05:00
Scott Lahteine 1196e3ca59 SDCard print completion can use "M0" 2017-05-03 22:24:03 -05:00
Scott Lahteine 6854f08d22 Shut down autotemp in disable_all_heaters 2017-05-03 20:54:26 -05:00
Thomas Moore acec237092 Shutdown heaters and fan after canceling a print from the SD card 2017-05-03 20:43:09 -05:00
Scott Lahteine 11b6a3cbb6 Fix regression in least_squares_fit.cpp 2017-05-03 19:21:44 -05:00
Scott Lahteine e1b85ff67b Merge pull request #6559 from thinkyhead/rc_more_optimal
Compact smart_fill_mesh slightly
2017-05-03 19:07:36 -05:00
Scott Lahteine 9890141f7b M100 tweak 2017-05-03 17:28:09 -05:00
Scott Lahteine 2658cc707a Treat temperature as integer, when possible 2017-05-03 17:27:25 -05:00
Scott Lahteine 1b2c7ec20a Make G26 compatible with inches and thermal unit modes 2017-05-03 17:12:48 -05:00
Scott Lahteine 241bdffe65 Dress up Bilinear Leveling code 2017-05-03 17:12:35 -05:00
Scott Lahteine 67ecf06cc4 Patch issue in gcode_M900
Noted in #6550
2017-05-03 15:26:00 -05:00
Scott Lahteine de5e485ed7 Explicit upward angle solution 2017-05-03 01:19:44 -05:00
Scott Lahteine ecdf68735f Compact smart_fill_mesh slightly 2017-05-03 01:06:58 -05:00
Scott Lahteine 628391304f Merge pull request #6552 from thinkyhead/rc_more_ubl_cleanup
Further cleanup of UBL
2017-05-02 22:46:04 -05:00
Scott Lahteine 902fe76db9 Merge pull request #6556 from thinkyhead/rc_use_controller_fan
Implement USE_CONTROLLER_FAN as a feature
2017-05-02 22:43:26 -05:00
Scott Lahteine 7ba7474a73 Drop extra parens from address-of operator 2017-05-02 22:22:23 -05:00
Scott Lahteine 0bf5add075 Use UBL_MESH_(MIN|MAX)_[XY] for G29 move limits 2017-05-02 22:22:23 -05:00
Scott Lahteine b8ba3b7647 Use 'sq' macro where possible 2017-05-02 22:22:23 -05:00
Scott Lahteine 66eba3346b Remove G29 lcd control debugging 2017-05-02 22:22:23 -05:00
Scott Lahteine 3517154135 Reduce code size, fix bug in smart_fill_mesh 2017-05-02 22:22:23 -05:00
Scott Lahteine c4e34adcf1 Apply formatting, coding standards to UBL 2017-05-02 22:22:23 -05:00
Scott Lahteine f4239e62b1 Merge pull request #6557 from thinkyhead/rc_hotend_status_item
Keep refreshing LCD if hotend status is on-screen
2017-05-02 22:04:21 -05:00
Scott Lahteine fc857c5b78 Merge pull request #6549 from thinkyhead/rc_bltouch_refix
Fix BLTOUCH_HEATERS_OFF bug
2017-05-02 21:53:09 -05:00
Thomas Moore b39f634252 Continuously update LCD when hotend status is displayed in Filament Change screens 2017-05-02 21:49:40 -05:00
Scott Lahteine 2c13922c46 Implement USE_CONTROLLER_FAN as a feature 2017-05-02 20:18:52 -05:00
Scott Lahteine 492bc536bf Modify debug methods to take PSTR 2017-05-02 17:53:40 -05:00
Bob-the-Kuhn e5a27d9f36 G29 P2 & P4 bug fixes & improvements 2017-05-02 17:53:40 -05:00
Scott Lahteine b93be716cf Remove trailing whitespace 2017-05-02 17:53:40 -05:00
Scott Lahteine 76eca9732d Fix mis-named language string define in Dutch 2017-05-02 16:08:09 -05:00
Scott Lahteine 806f670092 Merge pull request #6511 from Bob-the-Kuhn/UBL--G26-minor-improvements
UBL: G26 minor improvements
2017-05-02 16:06:22 -05:00
Scott Lahteine 0803c9d997 Merge pull request #6533 from thinkyhead/rc_autocal_patches
General cleanup of G33
2017-05-02 16:01:02 -05:00
Brian ff5fed137f Fix BLTOUCH_HEATERS_OFF bug 2017-05-02 15:53:52 -05:00
Scott Lahteine ca1dd739a3 Organize ubl.h defines by the files they serve 2017-05-02 15:47:06 -05:00
Scott Lahteine 0449f69179 Cleanup patch to recent merge 2017-05-02 15:47:06 -05:00
LVD-AC da2abad636 Various cleanups of G33
- update comment section
- redefined P5 grid
- minor clean to probe radius routine
- updated EEPROM version to V37 according remark in #6517
2017-05-02 15:47:06 -05:00
Bob-the-Kuhn 7ce613db0a Fix Conditionals test for endstop plug used by Z2 or probe. 2017-05-02 15:41:47 -05:00
Scott Lahteine ef750ae86b Towards supporting Z2 in Endstops::report_state 2017-05-02 15:39:32 -05:00
Scott Lahteine c03c623951 Sanity-check Z2 endstop assigned to a nonexistent pin. 2017-05-02 15:39:00 -05:00
Scott Lahteine 70f31b6c76 Throw an error if no E stepper is free for X2, Y2, Z2 2017-05-02 15:13:47 -05:00
Scott Lahteine ac69eca586 Merge pull request #6538 from bgort/ubl_gridlbls
Fix, cleanup, prettify `G29 O` output
2017-05-02 14:09:18 -05:00
Scott Lahteine 99b11db1a1 Merge pull request #6537 from thinkyhead/rc_cleanup_sunday
Various leveling-related patches
2017-05-02 00:59:59 -05:00
Roxy-3D 41e63bbb7c Fix Horizontal and Vertical UBL optimization bug. (#6540)
* Fix Horizontal and Vertical optimization bug.

And drastically reduce the debug code foot print....

* Yeah Baby!

The debug print is going A - OK !
2017-05-01 23:52:33 -05:00
Scott Lahteine e79b335367 Patches for leveling reactivation in G28 / M48 2017-05-01 17:38:57 -05:00
Brian 92e22c3bf2 Fix, cleanup, prettify G29 O output 2017-05-01 18:19:57 -04:00
Scott Lahteine 7d5cd7e0d7 Tweak set_bed_leveling_enabled 2017-05-01 16:46:52 -05:00
Scott Lahteine ed81e9b3d3 Adjust leveling conditionals 2017-05-01 16:46:48 -05:00
Scott Lahteine a64e5659ce Clean up G26 external references, private vars 2017-05-01 15:17:52 -05:00
Scott Lahteine 2887c20788 Add a function to home all axes (i.e., gcode_G28) 2017-05-01 15:03:37 -05:00
Scott Lahteine 8f895d5e01 Merge pull request #6530 from thinkyhead/rc_cleanups_2
Fixes for DUAL_NOZZLE_DUPLICATION_MODE
2017-05-01 12:34:11 -05:00
Scott Lahteine 8002672938 Fixes for DUAL_NOZZLE_DUPLICATION_MODE 2017-05-01 12:20:25 -05:00
Scott Lahteine f69acde966 Merge pull request #6528 from MarlinFirmware/revert-6416-negative-mesh-fix
Revert "Fix for Meshpositions if printer has negative endstop positions"
2017-05-01 11:51:13 -05:00
Scott Lahteine 4803a4322e Revert "Fix for Meshpositions if printer has negative endstop positions" 2017-05-01 11:25:07 -05:00
Scott Lahteine 4f74c416a4 Patch for BLTOUCH_HEATERS_OFF 2017-05-01 11:13:40 -05:00
Scott Lahteine 1823a6ea29 Patch for missing DELTA_HEIGHT 2017-05-01 11:05:35 -05:00
Scott Lahteine d814e468d2 Fix set_heaters_for_bltouch and usage
- Only call `set_heaters_for_bltouch` when actually deploying/stowing
- Clear `next_emi_protection` when re-enabling heaters
2017-05-01 02:27:52 -05:00
Brian 4e1448e75a Various fixes for compiler warnings
add BLTouch-related messages in english and (rusty) french;
add missing endstops.h in ultralcd.cpp;
fix misc. compiler warnings;
fix lsf_reset - ZERO macro can't handle a pointer as it would only memset the size of the pointer, not the size of the entire struct
2017-05-01 02:12:40 -05:00
Scott Lahteine fc9919b749 Merge pull request #6515 from thinkyhead/rc_cleanup_sunday
Some minor cleanups to code formatting
2017-04-30 22:58:16 -05:00
Scott Lahteine c12bc51a59 cardreader.cpp spacing tweak 2017-04-30 22:27:47 -05:00
Scott Lahteine 46b714a52f Cleanup spacing in pinsDebug.h 2017-04-30 22:27:26 -05:00
Scott Lahteine 88141ca717 Remove things that aren't pins from pinsDebug_list.h 2017-04-30 22:24:51 -05:00
Scott Lahteine ff35b11d08 Resolve compiler complaint about memset volatile * 2017-04-30 22:24:03 -05:00
Scott Lahteine 0b421e97c9 Rename some (unused) OMCA pins 2017-04-30 22:16:44 -05:00
Scott Lahteine c2c9f01c8e Patch newly-introduced bug in IS_Z2_OR_PROBE 2017-04-30 20:17:10 -05:00
Scott Lahteine 819df5e06d Cleanups to pins debugging 2017-04-30 20:17:10 -05:00
Scott Lahteine 42824b0e1f Use new serial spacing function to save PROGMEM 2017-04-30 20:14:42 -05:00
Scott Lahteine cd72901fb7 Cleanups to UBL code 2017-04-30 20:14:42 -05:00
Bob-the-Kuhn ce87c7803e implement G26 changes per review 2017-04-30 19:05:25 -05:00
jaysonkelly 769817ce5e Need to define this for Rigidboard V2
Motor current defaults need to be defined for Rigidboard
2017-04-30 19:04:27 -05:00
Scott Lahteine 39c6c5621b Merge pull request #6416 from SkyNet3D/negative-mesh-fix
Fix for Meshpositions if printer has negative endstop positions
2017-04-30 17:38:41 -05:00
Scott Lahteine 671a44b8aa Merge pull request #6410 from teemuatlut/LVD-Delta
Delta auto-calibration updates
2017-04-30 16:39:51 -05:00
Scott Lahteine 5d5c9a040a Merge pull request #6509 from thinkyhead/rc_config_patches
Configuration cleanup
2017-04-30 16:10:27 -05:00
Scott Lahteine d480b6f75a Enable E1 stepper for DUAL_NOZZLE_DUPLICATION_MODE 2017-04-30 16:01:01 -05:00
Bob-the-Kuhn dcde202157 Add startup notice & update host temperatures while waiting
Right now G26 doesn't send a notice to the host that it's running.  It's
not until the heaters are at temperature that you know for sure if it's
running or not.

Added host temperature prints so that someone watching the host
interface will see the temperatures change during the warm up period.
Updates are sent every 5 seconds.
2017-04-30 15:51:58 -05:00
Scott Lahteine 54751e8557 Put DISTINCT_E_FACTORS adjacent to the affected settings 2017-04-30 15:30:31 -05:00
Scott Lahteine 0dbe4b3e54 Edit configurations to reduce verbosity, arrange logically 2017-04-30 15:30:31 -05:00
Scott Lahteine 0750933bc6 Merge pull request #6490 from Bob-the-Kuhn/Missing-X-stop
Endstop not enabled if pin is zero
2017-04-30 15:09:36 -05:00
bgort 5ace3699b1 Output (commented) coordinates on G29 S-1; helps identify the x/y points that correspond with i/j coordinates, which eases manual tweaking of z values (#6507) 2017-04-30 14:59:34 -05:00
Scott Lahteine d7d4378481 Remove inaccurate version description 2017-04-30 14:57:19 -05:00
Scott Lahteine f169c04604 Merge pull request #6491 from thinkyhead/rc_cleanup_wednesday
Various cleanups for recent merges
2017-04-30 14:56:48 -05:00
Scott Lahteine 6d63255ddc Merge pull request #6508 from bgort/pio_improvements
PlatformIO-related improvement
2017-04-30 14:53:22 -05:00
LVD-AC cafc48dff8 little oops 2017-04-30 22:17:49 +03:00
Brian 627730948d Add U8glib as a dependency to platformio.ini for those who use PlatformIO; this makes compiling even easier as u8glib will be downloaded and included automatically.
Also added the new .pio-related directory to .gitignore, and a few ignores for those who use cmake.
2017-04-30 15:13:51 -04:00
bgort 5974d8e168 change G26 default nozzle size to 0.4, consistent with instructions (#6506) 2017-04-30 13:23:46 -05:00
LVD-AC 471a321624 leaner code for probe routine 2017-04-30 19:15:16 +03:00
bgort 3c0d5ba0a1 allow idle() to be called - fixes sometimes crash/hang in G29 I; (#6505) 2017-04-30 10:22:31 -05:00
Roxy-3D 2509587b5a Correct over optimization of pre-initialized variables (#6500)
* Correct over optimization of pre-initialized variables

NEAR_ZERO() works most of the time...  But it leaves corner cases
uncovered.  We need to explicitly check if these variables are +/-
infinity.

* Correct over optimization of pre-initialized variables
2017-04-29 22:01:29 -05:00
LVD-AC 585c00a728 Proposed changes
This is what I did yesterday:

- basicly gave the tests more comprehensive names; put all the
declarations at the top; got rid of the magic negative C-value (renamed
to P + A, O, T)

- "cos(RADIANS(180 + 30 * axis)) * (1 + circles * 0.1 * ((zig_zag) ? 1 :
-1)) * delta_calibration_radius" compiles wrong is zig_zag statement is
without brackets

- DELTA_TOWER_ANGLE_TRIM reset to 3 values (the calcs use the 3th value
to normalize will not compile otherwise)

-Wrote 3 dummies to keep EEPROM lenght the same

-Reset the configs to the 'original' with autocal + menu disabled (but
can be enabled of course)
2017-04-29 18:53:14 +03:00
Scott Lahteine 29fa241617 Initial patches to G33 2017-04-29 15:29:49 +03:00
Scott Lahteine 12ce051b55 Add a function to output spaces to serial 2017-04-29 15:29:49 +03:00
Scott Lahteine 42f4c53254 Starting on G33 rewrite 2017-04-29 15:29:49 +03:00
Scott Lahteine baf3b91460 DELTA_TOWER_ANGLE_TRIM only needs AB 2017-04-29 15:29:49 +03:00
emartinez167 27cd165adf Last three Spanish language strings
Updates as per @thinkyhead request.
2017-04-29 11:33:30 +08:00
Scott Lahteine 2cc9774f34 Apply bltouch_menu
As proffered in #6252
2017-04-28 18:43:03 -05:00
Scott Lahteine 1a111180de Clean up set_heaters_for_bltouch 2017-04-28 18:32:39 -05:00
Scott Lahteine 7db805930a Cleanup configurations 2017-04-28 18:32:39 -05:00
Scott Lahteine 8bf3a3fcdb Remove inaccurate comments from ubl.h 2017-04-28 18:32:38 -05:00
Scott Lahteine 47557d5a19 Fix up formatting in ubl.h 2017-04-28 18:32:38 -05:00
Scott Lahteine 0a8e09c723 Clean up excess whitespace, comment formatting 2017-04-28 18:32:38 -05:00
Scott Lahteine a35c681453 Clean up least_squares_fit 2017-04-28 17:33:28 -05:00
Bob-the-Kuhn 40089249c3 add PIN_EXISTS to HAS_xyz_MIN macro 2017-04-28 16:47:59 -05:00
Scott Lahteine 8020069371 Apply coding standards for indentation 2017-04-28 15:43:06 -05:00
Scott Lahteine dabca83742 Merge pull request #6437 from Kaibob2/patch-1
Update language_de.h
2017-04-28 14:47:47 -05:00
Kai 3d0a4c4ea9 Update language_de.h 2017-04-28 21:09:10 +02:00
Silvio 6bf1d50188 Added missing translations (#6458) 2017-04-28 13:49:16 -05:00
Mehmet Sutas 404f767d44 Update language_tr.h (#6463) 2017-04-28 13:48:31 -05:00
Petr Zahradnik 5e701524f8 Update language_cz.h for new translations (#6465)
* Update language_cz.h for new translations

* Correction translate

* Revert correction back to hotend
2017-04-28 13:47:43 -05:00
gege2b 0a92ce7a98 Completed french translation (#6475) 2017-04-28 13:46:09 -05:00
Ernesto Martinez ff4fb42e7d Add new strings as per recent changes in RCBugFix (#6482)
Adding missing strings to Spanish language, as per changes recently
done to the RCBugFix branch.
2017-04-28 13:45:22 -05:00
paulusjacobus 67d1fc5556 Update language_nl.h (#6478)
updated the RCbugfix release with additional Dutch translations
2017-04-28 13:42:39 -05:00
benlye 8c6b4537a6 Fix issue in itostr4sign with numbers <100 (#6487)
The first character in the string wasn't blanked if the number went from >= 100 to <100, resulting in artefacts in the displayed string.
2017-04-28 13:35:11 -05:00
LVD-AC 4ea8d0f89b Solved "The Travis CI build failed " 2017-04-28 19:55:21 +03:00
LVD-AC ed6b361e27 cleanup ready to squash 2017-04-28 18:09:18 +03:00
LVD-AC 7a6a1ef583 M666 normalize positive values to <=0
M666

+ tower radians absolute value
2017-04-28 18:05:24 +03:00
Roxy-3D 4075b95519 Allow BL-Touch users to control heaters during probe event (#6485)
The Configuration.h file entries for BL-Touch have been updated to:
```cpp
//#define BLTOUCH
//#define BLTOUCH_DELAY 375      // (ms) Enable and increase if needed
//#define BLTOUCH_HEATERS_OFF // if defined the printer's heaters are
turned off during probe event
```
2017-04-28 09:19:55 -05:00
Roxy-3D 6e8ecb908a Shut down heaters during BL-Touch probe event
The electro-magnetic interference from the bed and nozzle are affecting
the BL-Touch repeatability for some users.   This problem can be helped
by shutting down the heaters during the actual probe event and then
quickly turning them back on.

Because this code is messing with the heaters, it is written in a
paranoid manner.  It only turns the heaters back on if everything is
EXACTLY as it expects things to be.  The BL-Touch probe must have been
put into a deployed state less than 20 seconds prior, or the stow()
function will NOT turn the heaters on.

This code has been tested and works for both G28 and probing functions.
2017-04-27 18:52:58 -05:00
LVD-AC d8102aeca8 Cn negative : no tower angle calibration
Giving a negative number of probe points disables the tower angle
correction calibration ('4point' instead of '7point' solution)

EEPROM version updated
2017-04-27 21:13:07 +03:00
Roxy-3D 3601f08e87 Better tuned FolgerTech i3-2020 example file 2017-04-27 11:16:38 -05:00
Roxy-3D a20b7d9581 Better tuned Example file for FolgerTech i3-2020
Also setting up Z-Probe on the machine.
2017-04-27 11:16:38 -05:00
Kai bf2fe46062 Update language_de.h 2017-04-27 10:13:02 +02:00
Kai 11d34be060 Update language_de.h 2017-04-27 10:06:26 +02:00
Scott Lahteine 817ecb9ff4 Merge pull request #6453 from thinkyhead/rc_cleanup_wednesday
Minor cleanups, work-in-progress
2017-04-26 19:41:52 -05:00
Roxy-3D 22f6e277af Get example files fully into compliance
Change to support new name GRID_MAX_POINTS_XY
Start UBL at version 1.0 in the CUSTOM_MACHINE_NAME
2017-04-26 16:22:17 -05:00
LVD-AC a9bc1d30cc z_offset change
Avoids to have to recalibrate the delta_height after a z_offset change
2017-04-26 21:57:11 +03:00