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.02k stars 826 forks source link

Unable to send job to Bambu Lab Printer's SD card #3971

Open samwiseg0 opened 8 months ago

samwiseg0 commented 8 months ago

OrcaSlicer Version

1.9.0

OS version

13.4.1 (c) (22F770820d)

Additional system information

Apple M1 Max

Printer

Bambu Lab X1

How to reproduce

  1. Slice any object.
  2. Click the drop down and select "Send" instead of print plate
  3. Observe that OrcaSlicer never sends the file to the printer.

Actual results

The window hangs and never sends the Job to the printer's SD card. It says sending file over LAN but nothing happens.

2024-02-04_19-03

Expected results

The file to be uploaded to the printer's SD card.

I have tested this same method with Bambu Slicer and it works just fine.

Project file & Debug log uploads

logs.zip

Checklist of files to include

jerworrall commented 8 months ago

seeing same behavior on windows 11

CCS86 commented 8 months ago

I'm suddenly getting this on 1.9.0 too. Windows 10.

I checked Bambu Studio and it also did not send, but it popped up another dialog where I could input the IP address and access code, then click test. It passed the test and then could send gcode after that. Orca still cannot, despite having connectivity to the printer, including live view, SD card contents, etc.

image

image

image

image

CCS86 commented 8 months ago

@SoftFever?

This one is a pretty big deal.

tlhintoq commented 8 months ago

Maybe give the nightly build a try. (That would be 2.0-dev) Its working for me. image image

samwiseg0 commented 8 months ago

@tlhintoq

I tested with nightly and still have the same issue.

Note my printer is not in lan only mode.

logs.zip

tlhintoq commented 8 months ago

@samwiseg0

Note my printer is not in lan only mode. I don't recall making any change like that to my setup. Its pretty stock. Did the installation per the instructions. Got it on the LAN. Can print to it, view the camera, blah blah blah. Been cranking out parts ever since. I honestly don't know what/where "lan only" mode is. I don't think I'm there as I also commonly walk SD cards to the printer to run jobs.

samwiseg0 commented 8 months ago

Not sure why your setup is working. Hopefully someone can look into this issue when they get some time.

tlhintoq commented 8 months ago

Not sure why your setup is working. Hopefully someone can look into this issue when they get some time.

I notice your machine name is "X1C-86". Nice name. But not in the same format as the name issued to my machine automatically when I registered with the Bambu network. image Did you rename it? I'm just wondering what other changes might exist between versions of our machines. Firmware?

There's nothing special about configuration at the machine: Everything is really at the slicer. Have you tried doing a total factory reset so its like new out of the box and then just not change anything? See if its happy then?

And of course the obvious stuff like: Both networking issues. I'm ethernet to my router then wifi to the printer, so its only 1 leg of wifi traffic: Maybe speed of transmission has something to do with it. Or that you don't have PC and printer on the same 2.4g network if your router has the 5.0 and 2.4 on the same name as they often do.

samwiseg0 commented 8 months ago

@tlhintoq its not a printer issue since it works on bambu slicer. Secondly, I would prefer to troubleshoot based off of data and not guess as to what the cause may be. I have not had a lot of time to dive into orca slicer logs and decipher what the issue may be.

I am almost certain it is a software bug in orca slicer since this effects other users as confirmed above.

tlhintoq commented 8 months ago

I am almost certain it is a software bug in orca slicer since this effects other users as confirmed above.

Just got to figure out what the magic combination is. The more the user-base can figure out the more likely the developers are to fix something. They've got 500 tickets to work on. It just stands to reason that if someone can narrow down the hunt then that ticket gets more attention.

If a few people find a pattern that helps: It only happens when the job is bigger than 500k It only happens on machines that got renamed It only happens on jobs with 10 or less parts on the plate It only happens when my PC is connected to the network over wifi but never when I'm ethernet cabled It only happens when the SD card has less than 500mb free space If my house network is busy with 3 different 4k movies streaming, then it fails. etc.

Yeah I know it feels like being free QA help for the developers - but then again the program is free - and everyone gains from everyone's contributions.

SoftFever commented 8 months ago

Unfortunately BBL has encrypted network activity log file so we can't diagnose it.
@samwiseg0 Can you try to delete following two folder and try again?

c:\Users\<your_user_name>\AppData\Roaming\OrcaSlicer\plugins\
c:\Users\<your_user_name>\AppData\Roaming\OrcaSlicer\ota\

It also worth to try to unbind/bind the machine see if it fixes the issue based on @CCS86 's experience.

SoftFever commented 8 months ago

I tried with my P1P machine. I'm able to send to SD with 1.9.1 + updated plugin.

samwiseg0 commented 8 months ago

@SoftFever I had tried that before and once again now with the same result.

Could it be something where the UI is blocking the popup or not invoking it? In bambu slicer I have a popup that appears after first trying to send a file.
2024-02-24_08-34

SoftFever commented 8 months ago

@SoftFever I had tried that before and once again now with the same result.

Could it be something where the UI is blocking the popup or not invoking it? In bambu slicer I have a popup that appears after first trying to send a file. 2024-02-24_08-34

It's very unlikely. Most likely a network related issue.

samwiseg0 commented 8 months ago

It's very unlikely. Most likely a network related issue.

It works fine in Bambu studio. I did the same plugin and ota wipe and tested again and it worked fine in bambu studio

samwiseg0 commented 8 months ago

In orca I have never been presented with the second dialogue to enter my bbl user/ lan password.

samwiseg0 commented 8 months ago

Orca slicer:

https://github.com/SoftFever/OrcaSlicer/assets/2241731/1de7c595-18f6-40b5-a7a5-739c905f4ce2

Bambu Studio: 2024-02-24_08-48

SoftFever commented 8 months ago

the dialog will only prompt when use LAN mode. Can you try to switch to LAN mode then switch back?

samwiseg0 commented 8 months ago

the dialog will only prompt when use LAN mode. Can you try to switch to LAN mode then switch back?

I popped up in bambu studio in non lan mode. I assume its the same plugin being used for both?

Edit: Also to be clear I invoked the popup in bambu studio by wiping the app support directory and starting from scratch. After the dialogue is confirmed I do not have to enter the information again.

SoftFever commented 8 months ago

the dialog will only prompt when use LAN mode. Can you try to switch to LAN mode then switch back?

I popped up in bambu studio in non lan mode. I assume its the same plugin being used for both?

With so little info, it's hard to tell what's wrong. Maybe the plugin confused itself when BS and Orca using different version of it.

You can try to close BS. Then try to delete Orca's plugin and ota folder see if it fixes the issue.

samwiseg0 commented 8 months ago

@SoftFever I will do some more investigation and possibly some packet captures to see what maybe happening.

I will report back once I have done some more testing.

Thank you for your time!

SoftFever commented 8 months ago

@SoftFever I will do some more investigation and possibly some packet captures to see what maybe happening.

I will report back once I have done some more testing.

Thank you for your time!

👍

samwiseg0 commented 8 months ago

@SoftFever After a bit more digging I discovered what that dialouge was doing in BS. It appears to write the serial and the IP of the device to config file.

Bambu Studio: Before dialogue 2024-02-24_10-06 After dialogue 2024-02-24_10-07

Now. Taking that information and placing it in the OrcaSlicer.conf allows OrcaSlicer to send the file to the printer. 2024-02-24_10-09

Once my printer is converted into lan only mode it is no longer discoverable over the network via BS or OS. I am still investigating as to why as the printer and my laptop are on a flat L2 network with no multicast mitigation. That is only limited to discovery. They can still talk to each other via their IPs so this maybe a L2 discovery issue only.

I believe this could be easily replicated if someone places their printer on a separate L2 network, still has it connected to Bambu's cloud, and can still access it via its IP. The cloud at that point facilitates the discovery.

But with that said, I still think there is an issue where OS does not pop the dialogue to be able to write the IP of the printer to the config file.

Is there a way to backtrack how that is written to config file? Maybe that will help shed some light on the issue?

SoftFever commented 8 months ago

@SoftFever After a bit more digging I discovered what that dialouge was doing in BS. It appears to write the serial and the IP of the device to config file.

Bambu Studio: Before dialogue 2024-02-24_10-06 After dialogue 2024-02-24_10-07

Now. Taking that information and placing it in the OrcaSlicer.conf allows OrcaSlicer to send the file to the printer. 2024-02-24_10-09

Once my printer is converted into lan only mode it is no longer discoverable over the network via BS or OS. I am still investigating as to why as the printer and my laptop are on a flat L2 network with no multicast mitigation. That is only limited to discovery. They can still talk to each other via their IPs so this maybe a L2 discovery issue only.

I believe this could be easily replicated if someone places their printer on a separate L2 network, still has it connected to Bambu's cloud, and can still access it via its IP. The cloud at that point facilitates the discovery.

But that said I still think there is an issue where OS does not pop the dialogue to be able to write the IP of the printer to the config file.

Is there a way to backtrack how that is written to config file? Maybe that will help shed some light on the issue?

This is helpful. The dialog is in this function bool GUI_App::show_modal_ip_address_enter_dialog(wxString title)

It is supposed to be triggered if send job failed. Unclear why it didn't trigger

    m_send_job->on_check_ip_address_fail([this](int result) {
        wxCommandEvent* evt = new wxCommandEvent(EVT_CLEAR_IPADDRESS);
        wxQueueEvent(this, evt);
        wxGetApp().show_ip_address_enter_dialog();
    });
cadriel commented 8 months ago

fwiw - I've been having this problem. My X1C is cloud only setup - and I've never had that dialog show. I opened my orcaslicer.conf and added the entry for the IP address (my machine is set to a fixed IP) and I can now send gcode files without issue. I've seen no other adverse affects as yet.

samwiseg0 commented 8 months ago

fwiw - I've been having this problem. My X1C is cloud only setup - and I've never had that dialog show. I opened my orcaslicer.conf and added the entry for the IP address (my machine is set to a fixed IP) and I can now send gcode files without issue. I've seen no other adverse affects as yet.

This is certainly a workaround. I am not familiar with C++ enough to know how to track this down but there is something going on where the dialogue is not invoked. I am trying to see if I can understand the code enough to try and figure it out. Possibly a comparison of this part of the code with BS and see what maybe different.

As far as adverse effects. There should not be any unless your IP changes. If it does you will have to edit the config file again and point it to the correct place until the dialogue issue is figured out.

CCS86 commented 8 months ago

Thanks for really digging into this guys!

I had poked around and compared the .conf files, but apparently didn't transfer the correct lines across. Working for me too with the configuration graft.

github-actions[bot] commented 5 months ago

Orca bot: this issue is stale because it has been open for 90 days with no activity.

samwiseg0 commented 5 months ago

Bump

witchrobin commented 4 months ago

I am also seeing the exact problem with OS when sending to sdcard. First time I try to send, it will say sending via clould but doesnt' actually do anything. If I cancel and send again, it will say sending via LAN and also sits there.

Same test works within BS where it will pop up with a diaglog box to let me enter the IP address of my printer and then it start the transfer. My printer is NOT in LAN only mode and my PC and P1S are on different VLAN. I am able to ping P1S from PC.

I also tried modifying the orcaslicer.conf to put in the ip_address json object, but it doesn't seem to stick. As soon as I launch OS, that block gets deleted from the conf file.

Edit: forgot to mentioned that I tried 2.0, 2.1.0beta, 2.1.0RC. Also tried deleting plugins folder to let OS redownload the plugin.

CCS86 commented 4 months ago

Yes, this is still an issue.

My printer recently grabbed a different IP address from the router and Orca Slicer was lost. It can see the printer, and even "print" jobs, but it cannot send to SD card. It lacks the pop-up in BS that lets you change the IP and LAN code and test.

npopson commented 3 months ago

I started having this issue several months ago (exactly as described by @samwiseg0) and decided to look into it further today. I am currently on OrcaSlicer 2.1.1.

Additional notes if it helps identifying the bug:

Nitroxid commented 3 months ago

I'm having the same issue, but only on one of my PCs.

My Desktop-PC has the issue, my Laptop doesn't. Both have OS 2.1.1 on Win 10. Both OrcaSlicer.conf file basically look the same. Some differences in the presets, but I doubt this will have an effect.

My Desktop is connected via LAN to a router which acts as a Wifi-Bridge to the Router. My Laptop and the X1C are connected to the Router directly via Wifi.

If I try to send a job to the printer, it fails with error code 0. It does this when trying to send via cloud service and via LAN. Directly printing is working though.

When I add the IP address to the OrcaSlicer.conf on my Desktop it is working.

doudar commented 2 months ago

I completely re-installed windows on this machine (due unrelated hard drive failure), and Orcaslicer still doesn't send to the SD.

doudar commented 2 months ago

Okay. I was able to get this working. Steps:

  1. Go into my router and assign a static IP to the X1C.
  2. Reboot the X1C.
  3. Set the new IP address for the X1c in ~AppData/Roaming/OrcaSlicer/OrcaSlicer.conf
  4. On the front panel of the X1C, generate a new access code by clicking the circle icon next to the current code.
  5. Open Bambu Studio, try to send a file, and enter the new access code in the box that pops up.

I tried all of the other variations posted, and none of them worked for me. This did the trick. fwiw, my internet is hosted by Verizon 5g, and while it's fast and cheap, it's not good, and it has caused other networking issues around my house, so possibly this is related.

pontos-dev commented 1 month ago

After I have formatet computer and had to install orca slicer again (2.1.1) I had the same issue with my bambu lab x1 carbon, it could'nt send a file to the printer, while bambu studio could with a problem After reaading this issue here, I tried to find my bambustudio.conf and orcaslicer.conf, and as some one has stated before, the whole ip section of the .conf file is missing, and after I added that, it just worked

Hope you guys (SoftFever) finds out why this is happening, I have never had issues with OrcaSlicer before this issue

yummypho commented 1 month ago

After I have formatet computer and had to install orca slicer again (2.1.1) I had the same issue with my bambu lab x1 carbon, it could'nt send a file to the printer, while bambu studio could with a problem After reaading this issue here, I tried to find my bambustudio.conf and orcaslicer.conf, and as some one has stated before, the whole ip section of the .conf file is missing, and after I added that, it just worked

Hope you guys (SoftFever) finds out why this is happening, I have never had issues with OrcaSlicer before this issue

Just adding a datapoint that the above fix worked for me. I ran into the same issue with "Send" not working in OS but BS worked fine. Comparing the bambustudio.conf and orcaslicer.conf to find and add the Serial + IP fixed it for me.

WimVDK commented 2 weeks ago

Using OC 2.2 beta 2, this error still exists. Especially after swapping out the X1C AP board (which gives the printer a new serial) and you rename the printer to the same name the old one had

DragonFlyer007 commented 1 week ago

Turn of your windows firewall and try again. Restart bambu studio first. If it works now, check that your settings, that its private network and bambu is allowed thru the firewall in private network also. Also check for duplicate of bambu in the firewall. Delete one if two.

This solved it for me. Fresh Win 11 install and all latest updates and firmware.

WimVDK commented 1 week ago

Worked fine for a year, didn't change anything. It's not my windows or AV/Firewall cause the standard 'print plate' works fine which would need to pass through the same firewall