SoftFever / OrcaSlicer

G-code generator for 3D printers (Bambu, Prusa, Voron, VzBot, RatRig, Creality, etc.)
https://discord.gg/P4VE9UY9gJ
GNU Affero General Public License v3.0
7.19k stars 846 forks source link

Orca slicer hangs printing large files #5531

Open Oscilllator opened 5 months ago

Oscilllator commented 5 months ago

Is there an existing issue for this problem?

OrcaSlicer Version

OrcaSlicer_Linux_V2.0.0.AppImage

Operating System (OS)

Linux

OS Version

Ubuntu 22.04.3

Additional system information

No response

Printer

Bambu P1P

How to reproduce

Both the zip and .stl versions when sliced with the default 0.4mm profile of the p1p. When I press 'print' the program hangs. I don't think it is hanging just to transfer the file, I left it for 2 hours and nothing happened. 2024-05-31_21-28

Actual results

Program stops responding

Expected results

printer should start printing.

Project file & Debug log uploads

log.zip Part Studio 1.zip

Checklist of files to include

Anything else?

No response

SoftFever commented 5 months ago

does it happen every time?

Oscilllator commented 5 months ago

Yes, every time. I am attempting to split the model right now to print it in halves to get around the problem.

SoftFever commented 5 months ago

Might be a network issue, the log didn't show errors.

Oscilllator commented 5 months ago

Interesting, on startup I have been getting the message:

use system SSL certificate: /etc/ssl/certs/ca-certificates.crt
To manually specify the system certificate store, set the SSL_CERT_FILE environment variable to the correct CA and
restart the application

image

I wonder if this is related.

KollegeX commented 4 months ago

Probably related to #5273
Experience the same thing on every large gcode with 2.0 and 2.1 beta Using the Appimage of 1.8 allowed me to print

edit: linked the wrong issue

olehmykhalchenko commented 4 months ago

Its related to bambu network driver. Works good on Orca Slicer v1.8.1, also works on bambu studio. All newer versions of orca slicer are broken.

olehmykhalchenko commented 4 months ago

Interesting, on startup I have been getting the message:


use system SSL certificate: /etc/ssl/certs/ca-certificates.crt
To manually specify the system certificate store, set the SSL_CERT_FILE environment variable to the correct CA and
restart the application

I wonder if this is related.

This is not related. You can get the same message in Bambu Studio or Orca Sliver v1.8.1, but they work with any file size.

olehmykhalchenko commented 4 months ago

Also important to mention this problem is not reproduced with Klipper integration. So its 100% bambu network driver.

disconn3ct commented 4 months ago

It is happening here in 2.0 appimage. The app is hammering a single cpu at 100% and strace shows it read()ing all of the gcode as ascii.

read(86, "982.376\nG1 X198.363 Y103.503 E.0"..., 8191) = 8191
read(86, "F12000\nG1 X126.81 Y67.289 E.0101"..., 8191) = 8191
read(86, "343.004\nG1 X174.396 Y72.967 E.01"..., 8191) = 8191
read(86, "3\nG1 X200.823 Y110.183 E.00173\nG"..., 8191) = 8191
read(86, "8.264 Y159.591 E.01463\nG1 F12000"..., 8191) = 8191
read(86, "00828\nG1 X146.381 Y180.343 E.011"..., 8191) = 8191

FD 86 (and 85 for some reason) is /tmp/orcaslicer_model/Thu_Jun_20/11_39_58#2836763#269/Metadata/.2870340.0.gcode and it is 75MB.

This happens at the "pick a printer" dialog of the "print plate" button, BEFORE the "send to printer" was clicked. I'm running with an AMS, and the slicer is connected (device page) but it hangs before the filament selection on the dialog. This particular model is fuzzy skin.

Edit: Looking at the offsets, it is reading the whole thing over and over in a loop. Omitting any read(86, lines:

strace: Process 2870340 attached
close(86)                               = 0
recvmsg(4, {msg_namelen=0}, 0)          = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(4, {msg_namelen=0}, 0)          = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=4, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6, events=POLLIN}, {fd=39, events=POLLIN}, {fd=47, events=POLLIN}, {fd=50, events=POLLIN}, {fd=51, events=POLLIN}, {fd=53, events=POLLIN}], 8, 0) = 0 (Timeout)
statx(AT_FDCWD, "/tmp/orcaslicer_model/Thu_Jun_20/11_39_58#2836763#269/Metadata/.2870340.0.gcode", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_TYPE|STATX_MODE, {stx_mask=STATX_ALL|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0664, stx_size=77863188, ...}) = 0
poll([{fd=4, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=4, revents=POLLOUT}])
writev(4, [{iov_base="+\0\1\0", iov_len=4}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 4
poll([{fd=4, events=POLLIN}], 1, -1)    = 1 ([{fd=4, revents=POLLIN}])
recvmsg(4, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\2^\3\0\0\0\0\v\0\240\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
recvmsg(4, {msg_namelen=0}, 0)          = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(4, {msg_namelen=0}, 0)          = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(4, {msg_namelen=0}, 0)          = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(4, {msg_namelen=0}, 0)          = -1 EAGAIN (Resource temporarily unavailable)
openat(AT_FDCWD, "/tmp/.mount_OrcaSlEIWxGR/resources/printers/C12.json", O_RDONLY) = 86
close(86)                               = 0
openat(AT_FDCWD, "/tmp/orcaslicer_model/Thu_Jun_20/11_39_58#2836763#269/Metadata/.2870340.0.gcode", O_RDONLY) = 86
close(86)                               = 0
olehmykhalchenko commented 4 months ago

Also not working in new 2.1.0 release

af7v commented 4 months ago

I can confirm that v2.1.1 hangs on large gcode files when trying to print. Appimage on Linux. Smaller files work fine. In my case I'm trying a stacked multiboard sending to a BambuLab X1C

Opened source and sliced to a 15.3MB file in Bambu Studio 1.9.3.50 and was able to send to the printer.

Highcooley commented 4 months ago

I can confirm that v2.1.1 hangs on large gcode files when trying to print. Appimage on Linux. Smaller files work fine. In my case I'm trying a stacked multiboard sending to a BambuLab X1C

Opened source and sliced to a 15.3MB file in Bambu Studio 1.9.3.50 and was able to send to the printer.

Same finding in v2.1.1 running as appimage on Linux: larger files (did not check the size limit) hang, while they can be printed with Bambulab easily. Also sending to SD card has the same issue. And, I can also confirm, that the issue already starts in the "pick a printer" dialogue, before hitting send.

Highcooley commented 4 months ago

Maybe the ticket should be renamed "Orca slicer hangs printing large files", to make it more generic as the problem seems to be.

bhaal2 commented 3 months ago

Can confirm this is still an issue in current Ubuntu nightly build as of the 01/08/24 (AEST). FWIW, I can "Send" to a printer, and then print from the touchscreen (I'm in LAN only mode). But LAN only or cloud makes no difference, not sure if that's been covered in this thread, but I tried both...

nsfilho commented 2 months ago

The problem persists in version 2.2.0-dev. I'm using Debian 12, and if I reduce the G-code, I can select the printer and send it. However, with large G-code files, it freezes.

Is there any way I can assist in resolving this bug? If a developer could provide some guidance on the possible cause, I would be happy to investigate and try to help with a PR.

eous commented 1 month ago

So here is a bit that I don't see yet. I think its continuously re-reading the gcode because the printer keeps rejecting whatever handshake its trying to do.

(Modified to remove some sensitive bits)


     > : ICMP  udp port 16147 unreachable, length 461
    IP (tos 0x0, ttl 64, id 39621, offset 0, flags [DF], proto UDP (17), length 453)
     > : [udp sum ok] UDP, length 425
    0x0000:  c0f5 354e caa4 107c 610c 04c1 0800 45c0  ..5N...|a.....E.
    0x0010:  01e1 835f 0000 4001 7332 c0a8 0004 c0a8  ..._..@.s2......
    0x0020:  0076 0303 808a 0000 0000 4500 01c5 9ac5  .v........E.....
    0x0030:  4000 4011 1c98 c0a8 0076 c0a8 0004 07e5  @.@......v......
    0x0040:  3f13 01b1 3418 4854 5450 2f31 2e31 2032  ?...4.HTTP/1.1.2
    0x0050:  3030 204f 4b0d 0a53 6572 7665 723a 2055  00.OK..Server:.U
    0x0060:  506e 502f 312e 300d 0a44 6174 653a 2054  PnP/1.0..Date:.T
    0x0070:  7565 2c20 3130 2053 6570 2032 3032 3420  ue,.10.Sep.2024.
    0x00b0:  616d 6275 6c61 622d 636f 6d3a 6465 7669  ambulab-com:devi
    0x00c0:  6365 3a33 6470 7269 6e74 6572 3a31 0d0a  ce:3dprinter:1..
    0x00f0:  6865 2d43 6f6e 7472 6f6c 3a20 6d61 782d  he-Control:.max-
    0x0100:  6167 653d 3138 3030 0d0a 4465 764d 6f64  age=1800..DevMod
    0x0110:  656c 2e62 616d 6275 2e63 6f6d 3a20 424c  el.bambu.com:.BL
    0x0120:  2d50 3030 310d 0a44 6576 4e61 6d65 2e62  -P001..DevName.b
    0x0130:  616d 6275 2e63 6f6d 3a20 5831 430d 0a44  ambu.com:.X1C..D
    0x0140:  6576 5369 676e 616c 2e62 616d 6275 2e63  evSignal.bambu.c
    0x0150:  6f6d 3a20 2d33 340d 0a44 6576 436f 6e6e  om:.-34..DevConn
    0x0160:  6563 742e 6261 6d62 752e 636f 6d3a 2063  ect.bambu.com:.c
    0x0170:  6c6f 7564 0d0a 4465 7642 696e 642e 6261  loud..DevBind.ba
    0x0180:  6d62 752e 636f 6d3a 206f 6363 7570 6965  mbu.com:.occupie
    0x0190:  640d 0a44 6576 7365 636c 696e 6b2e 6261  d..Devseclink.ba
    0x01a0:  6d62 752e 636f 6d3a 2073 6563 7572 650d  mbu.com:.secure.
    0x01b0:  0a44 6576 496e 662e 6261 6d62 752e 636f  .DevInf.bambu.co
    0x01c0:  6d3a 2077 6c61 6e30 0d0a 4465 7656 6572  m:.wlan0..DevVer
    0x01d0:  7369 6f6e 2e62 616d 6275 2e63 6f6d 3a20  sion.bambu.com:.
    0x01e0:  3031 2e30 382e 3032 2e30 300d 0a0d 0a    01.08.02.00....
13:57:23.981469 IP (tos 0x0, ttl 64, id 43117, offset 0, flags [DF], proto UDP (17), length 109)
     > : [udp sum ok] UDP, length 81
13:57:23.991535 IP (tos 0x0, ttl 64, id 43122, offset 0, flags [DF], proto UDP (17), length 101)
     > : [udp sum ok] UDP, length 73``` 
JacobTheEldest commented 20 hours ago

Same issue as https://github.com/SoftFever/OrcaSlicer/issues/5273?