Commit Graph

2670 Commits

Author SHA1 Message Date
DRracer
c1bf4a6288
Merge pull request #2216 from michalrudolf/MK3-miniopravy
Mk3 miniopravy
2019-09-18 11:34:17 +02:00
DRracer
9ff0b7c3a5
Merge pull request #2199 from leptun/MK3_MK2.x_fix_Default_stepper_power
Mk3 mk2.x fix default stepper power
2019-09-18 11:05:23 +02:00
Marek Bel
19a8537901 Document. 2019-09-17 20:35:18 +02:00
Marek Bel
027b6238fd Mark code unused when PINDA_THERMISTOR is defined by macro. Saves 1B of RAM and 4B of FLASH memory. 2019-09-17 20:26:03 +02:00
Marek Bel
966d9baf2b Document. 2019-09-17 19:00:03 +02:00
DRracer
14933f6b0e Fix. Sound [assist], Z-probe [5], menu_fmt_float13off format for last
string parameter from PROGMEM
2019-09-17 16:50:51 +02:00
michalrudolf
b660cb3908
ultralcd.cpp 2019-09-17 11:46:29 +02:00
D.R.racer
77c4720c8b Merge remote-tracking branch 'upstream/MK3' into translations-doc 2019-09-17 11:32:27 +02:00
michalrudolf
b4e0c2f455
Update ultralcd.cpp
Menu Support -> XYZ calibration details -> 3. obrazovka "point offset"
X value is no longer moved to the left if there’s no negative sign
2019-09-17 10:51:43 +02:00
Marek Bel
c66b4bd876 Do not ask for preheat temperature twice if calibrating first layer from wizard without filament. 2019-09-16 21:14:17 +02:00
Marek Bel
e1cfd6dc4f Remove option to heat nozzle only from mFilamentItem() when activated from wizard, as it has no use after filament unload was removed from wizard. 2019-09-16 18:48:52 +02:00
Marek Bel
ff4450489b Document. 2019-09-16 18:38:44 +02:00
Marek Bel
002a7d31a4 Make lcd_wizard() more debug friendly. 2019-09-16 18:31:12 +02:00
Marek Bel
b99038736c Use eeprom_update_byte instead of eeprom_write_byte 2019-09-16 18:22:34 +02:00
MRprusa3d
d491a9801d
Update ultralcd.cpp 2019-09-16 16:04:45 +02:00
MRprusa3d
0e1d559f03
Merge branch 'MK3' into PFW-943 2019-09-16 15:29:28 +02:00
MRprusa3d
011468598e IR sensor gen. II
disconnected PCB detection
2019-09-16 00:43:37 +02:00
leptun
695f938348 Fix conversion warnings 2019-09-14 12:24:45 +03:00
leptun
e828798209 Fixes after merge and line buffer
General fixes to the lcd_edit_off item and improved way to generate the toggles.
The old process is this: Write '>' if required -> print base -> pad everything before the last character with spaces -> write the eol character -> jump back and print the toggle over the blank characters. This resulted in noticeable flickering when the toggle was redrawn and was showing the same thing. Now the process is similar, except that everything happens in a "line buffer" (a char buffer that holds an entire line) and gets printed in one go, avoiding jump instructions for the lcd and prevents flickering since it doesn't write ' ' and the letters afterwards.
This should get even better when the lcd_buffer gets implemented since the line_buffer will get compared to the existing data on the screen and avoid overwriting what is on the lcd with the same thing.
2019-09-13 21:21:42 +03:00
Marek Bel
015b34de05 Alert user in wizard about more sheets presets. 2019-09-13 17:09:11 +02:00
DRracer
4423106fad dialogs' layouts fixes (support menu dlgs, statistics etc.)
French translation polished
2019-09-13 16:55:05 +02:00
Marek Bel
e754780717 Fix condition for returning to wizard. eFilamentAction == FilamentAction::Preheat was never true as eFilamentAction is set to eFilamentAction::None in lcd_return_to_status(). 2019-09-13 00:19:37 +02:00
Marek Bel
f1d190d2d5 Do not ask same filament related question twice if starting first layer calibration from wizard. 2019-09-12 23:41:42 +02:00
Marek Bel
ebf405d589 Preselect "yes" for filament question in first layer calibration wizard. 2019-09-12 23:20:03 +02:00
Marek Bel
d256c18635 Fix first layer calibration wizard. Do not jump to WizState::LoadFil if calibration is supposed to be performed. 2019-09-12 23:17:19 +02:00
Marek Bel
73642632f5 Do not force PLA filament in first layer calibration from wizard. Remove duplicate variable wizard_active. Saves 410 B of FLASH and 1 B of RAM. 2019-09-12 22:37:28 +02:00
Marek Bel
07a0f527d8 Reset lcd_encoder_diff in lcd_show_fullscreen_message_yes_no_and_wait_P() also when it times out. 2019-09-12 20:30:27 +02:00
Marek Bel
6630591f9e Consume lcd_encoder_diff in lcd_show_fullscreen_message_yes_no_and_wait_P().
This fixes problem encountered in lcd_v2_calibration(). Selected menu item skips to another if returning to menu after this message is used.
2019-09-12 20:20:33 +02:00
Marek Bel
d48197656c Fix lcd_v2_calibration menu not redrawn after full screen message or question. 2019-09-12 20:05:16 +02:00
Marek Bel
770e470fd5 Extract common code to function preheat_or_continue(). Saves 138B of FLASH memory. 2019-09-12 18:53:24 +02:00
Marek Bel
d80b8280a0 Remove commented out and unused functions prototypes. 2019-09-12 18:41:17 +02:00
Marek Bel
3a541488b2 Rename extr_unload_() to mmu_unload_filament() and move it to ultralcd.cpp as it is menu. 2019-09-12 18:40:02 +02:00
Marek Bel
0cdfa7a5e8 Remove dead code. 2019-09-12 18:33:02 +02:00
Marek Bel
e83b2ebe1f Rename mFilamentMenu to lcd_generic_preheat_menu to match naming convention for global function and be more descriptive. 2019-09-12 18:15:15 +02:00
Marek Bel
c26d7e50f7 Remove redundant lcd_update_enable(true) call. 2019-09-12 18:07:46 +02:00
Marek Bel
6674cbf0d7 Select material / temperature before first layer calibration. 2019-09-12 17:54:05 +02:00
leptun
ae839aee31 Merge branch 'MK3' into MK3_Translations 2019-09-12 16:28:36 +03:00
Marek Bel
6661d3aa45 Merge remote-tracking branch 'prusa3d/MK3' into MM_lay1_cal 2019-09-12 14:28:52 +02:00
DRracer
521c5eb8ef
Merge pull request #2141 from mkbel/preheat_menu
Unify preheat menu, add ASA material
2019-09-12 14:25:38 +02:00
leptun
444daceca3 Move define as requested 2019-09-12 13:39:04 +03:00
leptun
78708903e8 Also update eeprom value 2019-09-12 07:16:31 +03:00
Marek Bel
43705aae2e Rename lay1cal_preheat() to lay1cal_wait_preheat(). 2019-09-12 00:19:20 +02:00
Marek Bel
ae3e6530e6 Do not ask for PLA filament in the beginning of first layer calibration. Do not ask if filament is present if it can be detected by IR sensor. 2019-09-12 00:14:24 +02:00
Marek Bel
14dc6b86e0 Change undocumented behaviour of M190 (Wait for bed temperature). Document M190 and M109 (Wait for extruder temperature).
Do not remember CooldownNoWait property set by M190 and M109. If M190 was invoked without parameters, CooldownNoWait property was set if it was previously set by "M109 S" or "M109 S" or printer was after power up. Otherwise CooldownNoWait was not set. Now CooldownNoWait is never set if M190 is invoked without parameters.

Saves 44 B of FLASH memory.
2019-09-11 23:37:09 +02:00
Marek Bel
acb0341a1f Do not set temperature in lay1cal_preheat(). 2019-09-11 22:42:40 +02:00
leptun
bf9f668574 Fix short filenames scrolling in sdprint menu and status screen 2019-09-11 22:04:48 +03:00
Marek Bel
bb1fb49894 Use MMU cutter only as last resort. Cut filament only before last load retry. 2019-09-10 18:36:14 +02:00
Marek Běl
5a1005e143
Merge pull request #2186 from DRracer/enable-fan-pin-test-MK3
Enable fan pin test even for MK3
2019-09-10 18:21:17 +02:00
DRracer
d94356802c
Merge pull request #2187 from prusa3d/MK3_3.8.0
Mk3 3.8.0
2019-09-10 18:19:36 +02:00
DRracer
e1e40213b2 Enable fan pin test even for MK3 (was disabled in 3.7.2 due to lack of
FLASH)
2019-09-10 16:49:22 +02:00
DRracer
898e85e69f
Merge pull request #2038 from Eriobis/MK3
Add a threshold distance to Z calibration
2019-09-10 16:20:24 +02:00
DRracer
76c062b980
Merge pull request #2169 from mkbel/format
Use same format for all instances where "ok" is send to serial line.
2019-09-10 14:14:47 +02:00
DRracer
059c6b6cbf
Merge pull request #2148 from leptun/MK3_MK2.x_fix_Default_stepper_power
Mk3 mk2.x fix default stepper power
2019-09-10 14:13:51 +02:00
DRracer
60de313b8a
Merge pull request #1759 from wavexx/enhanced_longpress
Default to "Live Adjust Z" when longpressing during a print (closes #1604)
2019-09-10 14:13:00 +02:00
DRracer
f6f8f5b3b6
Merge pull request #2171 from 3d-gussner/patch-3
Update reserved space bytes as mentioned in
2019-09-10 14:07:56 +02:00
DRracer
90f85f7128
Merge pull request #2181 from leptun/MK3_fix_lcd_warning
Mk3 fix lcd warning
2019-09-10 14:07:28 +02:00
leptun
818befb91b Fix compile warning
function was defined as static in lcd.cpp and redefined in lcd.h
2019-09-09 14:05:20 +03:00
leptun
2480bd90fc Revert lcd_putchar to type int and retrun 0
Discussion: https://github.com/prusa3d/Prusa-Firmware/pull/2008#issuecomment-514500738
2019-09-09 13:59:20 +03:00
MRprusa3d
7cc9fe2e4f
Update 1_75mm_MK3S-EINSy10a-E3Dv6full.h 2019-09-09 02:20:39 +02:00
MRprusa3d
70de4d58f6
Update 1_75mm_MK3-EINSy10a-E3Dv6full.h 2019-09-09 02:20:14 +02:00
MRprusa3d
fb561b15ad
Update 1_75mm_MK25S-RAMBo13a-E3Dv6full.h 2019-09-09 02:19:52 +02:00
MRprusa3d
325e4a3403
Update 1_75mm_MK25S-RAMBo10a-E3Dv6full.h 2019-09-09 02:19:27 +02:00
MRprusa3d
0b50b2295c
Update 1_75mm_MK25-RAMBo13a-E3Dv6full.h 2019-09-09 02:18:54 +02:00
MRprusa3d
e581263bf1
Update 1_75mm_MK25-RAMBo10a-E3Dv6full.h 2019-09-09 02:18:22 +02:00
MRprusa3d
ca6937edaf
Update 1_75mm_MK2-RAMBo13a-E3Dv6full.h 2019-09-09 02:17:42 +02:00
MRprusa3d
a9a3d9d084
Update 1_75mm_MK2-RAMBo10a-E3Dv6full.h 2019-09-09 02:17:00 +02:00
MRprusa3d
978ace7fd7
Update Marlin_main.cpp 2019-09-09 02:16:06 +02:00
MRprusa3d
28c1486df2
Update Configuration.h 2019-09-09 02:14:10 +02:00
DRracer
eec8e5f8c0 Version changed (3.8.0 build 2684) 2019-09-06 19:47:05 +02:00
3d-gussner
d408fd2f42
Update reserved space bytes as mentioned in
https://github.com/prusa3d/Prusa-Firmware/pull/2170#pullrequestreview-284810840
2019-09-06 15:54:04 +02:00
DRracer
3ba2197dd3 more space for the second lang 2019-09-06 08:37:59 +02:00
Marek Bel
e73b0a88d5 Use same format for all instances where "ok" is send to serial line. 2019-09-05 22:35:01 +02:00
Marek Bel
3a5daf1c64 Change default sheet names. 2019-09-05 17:27:21 +02:00
3d-gussner
d51b3d6207 Added doxygen todos for missing LCD layout and positioning 2019-09-01 09:51:51 +02:00
vintagepc
339771a5fb Fixed info screen when selected_sheet hasn't been initialized. 2019-08-31 21:27:08 -04:00
leptun
10cdcb3ae3 SD Scroll workaround 2019-08-31 17:00:39 +03:00
leptun
795b1d1cf7 Toggle Sound 2019-08-31 16:56:14 +03:00
Yuri D'Elia
2345288d40 Fix the LCD pause function
Do not call long_pause recursively!

long_pause() is called before resetting the lcd_command_type. As
long_pause uses st_synchronize() internally, there could be time to
schedule another call to long_pause().
2019-08-31 15:28:31 +02:00
leptun
3c4fffef60 Merge branch 'MK3' into MK3_Translations 2019-08-31 15:30:51 +03:00
leptun
a5a5f5cf0b Toggle RPi port
Probably works, needs to be tested.
2019-08-31 15:25:00 +03:00
leptun
f69035323a Toggle SD Settings
This includes FlashAir support and SD Sorting type
2019-08-31 14:55:51 +03:00
leptun
a821002f02 Toggle MMU Mode 2019-08-31 07:38:40 +03:00
vintagepc
d347a36509 Merge branch 'MK3' of https://github.com/prusa3d/Prusa-Firmware into MK3-2093-sheet-display 2019-08-30 19:17:27 -04:00
vintagepc
871e29621f Fix "stuck" rename cursor 2019-08-30 19:14:22 -04:00
Marek Běl
a789a8995f
Merge pull request #2145 from mkbel/fix_sheet_reset
Fix sheet reset
2019-08-30 16:49:34 +02:00
leptun
6a8330a43b Toggle "HW Setup"*
All toggles from "HW Setup" were changed.
This includes:
-"Nozzle d."
-all "Checks"
Also added an option to provide a string from sram (not from progmem) as the toggle argument. This can be useful when toggling numbers or even when toggling sheets in the future.
2019-08-30 17:36:21 +03:00
Marek Bel
865484590b Change default sheet name from "<number>" to "Sheet <number>". 2019-08-30 16:11:41 +02:00
Marek Bel
3d292350d4 Do not activate selected_sheet in lcd_v2_calibration() as this leads to calibrating random sheet if activated from calibration menu.
selected_sheet is initialized to 0 and contains index of last Sheet menu visited.
2019-08-30 14:45:25 +02:00
Marek Bel
26423f98bc Switch to next sheet if currently selected sheet is not initialized. Move next_initialized_sheet() and change_sheet_from_menu() to eeprom.cpp, rename it to eeprom_next_initialized_sheet() and eeprom_switch_to_next_sheet(). Rename default_sheet_name() to eeprom_default_sheet_name(). 2019-08-30 12:24:13 +02:00
Marek Bel
6c78c2fad5 Fix compiler warning. 2019-08-30 12:03:35 +02:00
leptun
90e5f14309 Fix compile error on MK3 2019-08-30 13:02:00 +03:00
Marek Bel
50a8c16f27 Use EEPROM update instead of write. 2019-08-30 12:00:33 +02:00
leptun
56c949b9af Fix typo 2019-08-30 12:14:43 +03:00
leptun
d8d0069f97 Fix MK2.x Default stepper power out of sync 2019-08-30 12:12:29 +03:00
leptun
b86a92a7d6 Toggle Mode (stepper power) 2019-08-30 07:59:58 +03:00
vintagepc
8df6691819 Relocate sheet menu, show sheet on info screen
-Sheet is shown instead of percentage done either if idle, or during
print preheat.
-Relocated sheet menu to below SD menu for additional visibility to
current sheet.
2019-08-29 18:07:24 -04:00
leptun
db6e2e0525 Toggle Crash det. 2019-08-29 22:31:30 +03:00
Marek Bel
8c8619be05 Convert reset sheet sub menu to function. 2019-08-29 20:52:53 +02:00
Marek Bel
abf84e36f5 Fix sheet menu back caption to Steel sheets to match parent menu caption. 2019-08-29 20:23:02 +02:00
Marek Bel
d647cdc02c Convert sheet switcher from sub menu to function. Handle null characters in sheet name. 2019-08-29 20:13:10 +02:00
Marek Bel
cd7805ba46 Document 2019-08-29 18:26:24 +02:00
Marek Bel
0b196da6fc Migrate old vale of EEPROM_BABYSTEP_Z only if active sheet is not initialized. 2019-08-29 18:07:49 +02:00
Marek Bel
32f435d1a0 Increase number of configurable steel sheets to 8. Move sheets into sub menu of HW setup. 2019-08-29 17:21:08 +02:00
leptun
7f51e0bad8 Move SpoolJoin and Cutter to MSGs 2019-08-29 17:35:26 +03:00
Marek Běl
3413d5d486
Merge pull request #2139 from DRracer/assist-mode-fixes
Fix sound mode [assist]: encoder clicking indefinitely when MMU wants to
2019-08-29 15:55:49 +02:00
Marek Běl
fec92b33ae
Merge pull request #2137 from DRracer/illegal-fat-characters-revised
Support for more special characters allowed in file names (^ + = [ ] ;
2019-08-29 15:55:36 +02:00
leptun
0b21acec46 Minor fix to Toggle Cutter 2019-08-29 15:49:26 +03:00
leptun
d0f9f10ed6 Toggle Cutter 2019-08-29 15:43:41 +03:00
leptun
1937cf2074 Toggle SpoolJoin 2019-08-29 15:40:04 +03:00
leptun
5eea8d26fe Merge branch 'MK3' into MK3_Translations 2019-08-29 12:08:48 +03:00
Marek Bel
f3bb72be64 Reset calibration status if there is no calibrated sheet after reset. 2019-08-29 03:33:33 +02:00
Marek Bel
f64252b59b Hide sheet switcher from main menu, if there are less than 2 sheets calibrated. 2019-08-28 19:08:53 +02:00
Marek Bel
9692f94683 Move sheet menu up to be after Print from SD. 2019-08-28 19:01:48 +02:00
Marek Bel
3903dc819a Extract function next_initialized_sheet from change_sheet_from_menu(). Make it more general to depend on sizeof(Sheets::s) instead of hard coded value of 2. 2019-08-28 18:59:48 +02:00
Marek Bel
33675c6d1e Change default sheet names. 2019-08-28 18:16:35 +02:00
Marek Bel
49bc11037c Remove statements with no effect. 2019-08-28 18:14:10 +02:00
DRracer
1d23cc52e9 endstop sound alert fixes 2019-08-28 09:39:28 +02:00
Marek Bel
29c8cb2927 Fix bad merge. 2019-08-27 22:22:36 +02:00
Marek Běl
3f04c4db87
Merge branch 'MK3' into preheat_menu 2019-08-27 22:20:23 +02:00
Marek Bel
07169ad84a Make file local variable static. 2019-08-27 20:48:53 +02:00
Marek Bel
e57fcc04a7 Fix compiler warnings. 2019-08-27 20:23:48 +02:00
Marek Bel
d927d5b05d Port wizard_active to mFilamentItem(). 2019-08-27 20:19:03 +02:00
Marek Bel
cef7f31b9f Set FilamentAction to None if mFilamentMenu left by cooldown or menu back action. 2019-08-27 20:13:55 +02:00
Marek Bel
ffc5a64154 Remove commented out code. 2019-08-27 20:06:48 +02:00
Marek Bel
269aef1696 Remove unused code guarded by WATCH_TEMP_PERIOD macro as most of the functionality is duplicate to what is implemented in temp_runaway_check(). This will release us from porting setWatch() to unified preheat menu and maintaining it. 2019-08-27 20:05:10 +02:00
DRracer
1a1be5c518 Fix sound mode [assist]: encoder clicking indefinitely when MMU wants to
select filament
2019-08-27 17:10:29 +02:00
Marek Bel
bf2097342d Add ASA preheat into mFilamentMenu(); 2019-08-27 17:01:41 +02:00
DRracer
11ce786aaa Support for more special characters allowed in file names (^ + = [ ] ;
,)
2019-08-27 13:47:58 +02:00
DRracer
6aaa40b9a3
Merge pull request #2134 from mkbel/fix_power_panic
Fix repeated power panic restarted print from beginning or jumped at …
2019-08-27 08:13:26 +02:00
DRracer
a1e68c3d7f
Merge pull request #2135 from prusa3d/MK3_3.8.0
Increase version to 3.8.0-RC2 and build number to 2639.
2019-08-27 08:12:27 +02:00
Marek Bel
3da43ae8c2 Do not port print fan preheat speed preset, as it was never used. And it was broken until recently fixed when adding ASA profile. 2019-08-26 21:14:07 +02:00
Marek Bel
4792559536 Add farm preheat items. Add setWatch() call. 2019-08-26 21:00:30 +02:00
Marek Bel
aa13f9e809 Fix formatting. 2019-08-26 20:19:34 +02:00
Marek Bel
668e89e5a9 Preheat menu: Add ASA, hide menu item back when in wizard. 2019-08-26 20:18:34 +02:00
Marek Bel
52ae62bbba Fix formatting. 2019-08-26 20:14:00 +02:00
Marek Bel
3628d893ee Remove duplicate preheat menu.
Known limitations: farm_mode missing, wizard_active missing, cooldown missing, ASA missing, print fan missing.
2019-08-26 20:11:52 +02:00
Marek Bel
b9b0d6049e Fix formatting. 2019-08-26 19:48:39 +02:00
Marek Bel
159a1a70d8 Update documentation. 2019-08-26 17:19:57 +02:00
Marek Bel
c27fcf9cff Increase version to 3.8.0-RC2 and build number to 2639. 2019-08-26 17:03:18 +02:00
Marek Bel
52cb37770b Fix repeated power panic restarted print from beginning or jumped at most 65536 B back in file printed from SD card.
As sdpos_atomic was not updated after printer power up and first power panic recovery, it was equal 0. When the first command from SD card was queued its size on SD card was computed as current SD index position minus sdpos_atomic. This was equal to offset from beginning of the file limited to 16 bit storage type. When next power outage occurred earlier then this command was finished and wiped out of queue, this command size (extraordinarily big) was subtracted from sdpos_atomic and saved to EEPROM. This led to up to 65536 B jump back in file printed after next power panic recovery.
2019-08-23 19:30:20 +02:00
Marek Bel
3eb36ca194 Fix cmdqueue_dump_to_serial.
Header was historically made bigger to contain size of the command on SD card, but those debug functions wasn't updated.
2019-08-23 16:48:30 +02:00
XPila
5bb510dd2a
Merge pull request #2129 from DRracer/bed-noise-performance
Improve performance of bed PWM automaton
2019-08-22 14:45:01 +02:00
DRracer
c6df3fe012
Merge pull request #2127 from DRracer/code-size-reduction-1
Code size reduced by almost 5KB
2019-08-22 14:25:23 +02:00
3d-gussner
d3123a74b0 Updated LCD menu documentation to new form/syntax 2019-08-22 04:58:16 +02:00
3d-gussner
514b062107
Added lcd_menu format description
Added some documentation how the LCD menus look like and added max character values for translations.

There are more things needed and also the placement in the code is an open task. Depending on the decision if we use `messages.c/h`
2019-08-21 10:28:28 +02:00
DRracer
a7c2aec04c Code size reduced by almost 5KB 2019-08-21 09:59:51 +02:00
Marek Bel
3ed6d0637c Re-enable tmc2130_sg_stop_on_crash only if crash detection enabled from menu.
This fixes bug, that disabling crash detection from menu doesn't work during recovery from crash detection.
2019-08-20 19:32:39 +02:00
Marek Bel
f204cdea81 Refactor
Remove variable CrashDetectMenu. Read this state from EEPROM_CRASH_DET instead in bool lcd_crash_detect_enabled().
Rename crashdet_enable() to lcd_crash_detect_enable() and move it to ultralcd.cpp.
Rename crashdet_disable() to lcd_crash_detect_disable() and move it to ultralcd.cpp.
Rename lcd_crash_mode_set() to crash_mode_switch().
Remove forward function declarations from *.cpp file.

Saves 34B of FLASH and 2B of RAM.
2019-08-20 17:22:27 +02:00
DRracer
f07635d08a
Merge pull request #2116 from mkbel/fix_mmu_lay1cal
Fix mmu lay1cal
2019-08-19 19:07:10 +02:00
Marek Bel
f0642f88f1 Fix power panic broken when PSU_Delta defined.
Remove disable_z() call from uvlo_() and uvlo_tiny() power panic interrupt handlers. As historically this function was empty. And in case PSU_Delta macro defined it switches Z trinamic to silent mode, which could take some time and is not needed. Remove alignment to to full step from disable_force_z(), as it is not needed when switching to silent mode.
2019-08-19 17:37:23 +02:00