Jump to content
Ultimaker Community of 3D Printing Experts
leberschnitzel

Cura 3.4.1 + USB + Select Mini Pro not working

Recommended Posts

Hi Ultimaker Community,

I just started to use the new Select Mini Pro and ran into the problem that USB printing doesn't work with Cura 3.4.1

It works with Cura 3.2 though!

In Cura 3.4.1 the printer never connects, in 3.2 it's immediately connected.

I tried to move the USBPrinting plugin folder from 3.2 to 3.4.1, but that sadly doesn't work and wrecks the newer Cura Version.

It seems that the plugin got updated in 2018 since in Version 3.2 it shows the last change in 2016.

Does anyone have an idea where I could check to get it working with the newest version?

Share this post


Link to post
Share on other sites

Servus Leberschnitzel,

I had exactly the same problem with a CR-10 after updatig to new Marlin-version.

The problem:

Cura 3.4.1 (actually it's plugin "USBPrinting") is now trying to autodetect the bautrate (different to former versions) by sending gcode "M105" (request temperature) at different baudrates to the serial port. It expects at least 3 successfull response lines containing the string "ok T:" - but Marlin is only sending 1 line matching this string - containing all temps (i.e. "ok T:27.03 /0.00 B:26.91 /0.00 @:0 B@:0\n")

The solution:

Change file C:\Program Files\Ultimaker Cura 3.4\plugins\USBPrinting\AutoDetectBaudJob.py (or whereever your Cura Plugin-dir is located) line 63 from:

if successful_responses >= 3:

to 

if successful_responses >= 1:

...and restart Cura, which will then find the correct baudrate (propably 115200) and enable the serial communication

Edited by Olvin
spelling

Share this post


Link to post
Share on other sites

I had the same problem using newer versions of Cura with a MP Select Mini v1. It looks like it's because the printer gives an unusual response to the temperature command that Olvin mentioned. In the case of the Mini v1, it responds with something like:

  b'ok N0 P15 B14 T:45.9 /0.0 B:26.4 /0.0 T0:45.9 /0.0 @:0 B@:0\n'

 

I have no idea what those "N0 P15 B14" values mean, or if the Mini is wrong to send them, but the USBPrinting plugin doesn't like it. In one spot it only accepts "ok T:":

  https://github.com/Ultimaker/Cura/blob/3.4.1/plugins/USBPrinting/AutoDetectBaudJob.py#L61

 

And in another, it expects either a line containing "ok " followed by "B:" or "T:", or a line starting with "B:" or "T:":

  https://github.com/Ultimaker/Cura/blob/3.4.1/plugins/USBPrinting/USBPrinterOutputDevice.py#L308
 

I don't have a Mini Pro to test with, but I wouldn't be surprised if it's also confusing the plugin by responding with something similar. As a quick hack, I can make it work again by changing the:

 

  if b"ok T:" in line
in both those places to just:

  if b"T:" in line

Share this post


Link to post
Share on other sites

Yeah, allowing arbitrary stuff between the "ok" and the "T" (or "B"), would be the best fix, but as I mentioned, I'm not sure if the Mini is correct to add that stuff, so maybe such a fix would be rejected because it's trying to support non-standard G-code. My hacked fix was basically just reverting back to how the code was before, such as in the 3.0 branch:

 

https://github.com/Ultimaker/Cura/blob/3.0/plugins/USBPrinting/USBPrinterOutputDevice.py#L352

Share this post


Link to post
Share on other sites
11 hours ago, bstudios said:

I had the same problem using newer versions of Cura with a MP Select Mini v1. It looks like it's because the printer gives an unusual response to the temperature command that Olvin mentioned. In the case of the Mini v1, it responds with something like:

  b'ok N0 P15 B14 T:45.9 /0.0 B:26.4 /0.0 T0:45.9 /0.0 @:0 B@:0\n'

 

I have no idea what those "N0 P15 B14" values mean, or if the Mini is wrong to send them, but the USBPrinting plugin doesn't like it. In one spot it only accepts "ok T:":

  https://github.com/Ultimaker/Cura/blob/3.4.1/plugins/USBPrinting/AutoDetectBaudJob.py#L61

 

And in another, it expects either a line containing "ok " followed by "B:" or "T:", or a line starting with "B:" or "T:":

  https://github.com/Ultimaker/Cura/blob/3.4.1/plugins/USBPrinting/USBPrinterOutputDevice.py#L308
 

I don't have a Mini Pro to test with, but I wouldn't be surprised if it's also confusing the plugin by responding with something similar. As a quick hack, I can make it work again by changing the:

 

  if b"ok T:" in line
in both those places to just:

  if b"T:" in line

this worked! Thank you!

@ahoeben yours didn't work but I see where you are going with it

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Our picks

    • How to 3D print with reinforced engineering materials
      Ultimaker is hosting a webinar where we explain how you can achieve and maintain a high print success rate using these new reinforced engineering materials. Learn from Ultimaker's Product Manager of Materials and top chemical engineer Bart van As how you can take your 3D printing to that next level.
      • 2 replies
    • "Back To The Future" using Generative Design & Investment Casting
      Designing for light-weight parts is becoming more important, and I’m a firm believer in the need to produce lighter weight, less over-engineered parts for the future. This is for sustainability reasons because we need to be using less raw materials and, in things like transportation, it impacts the energy usage of the product during it’s service life.
        • Like
      • 12 replies
×

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!