Hi Olvin,
I just tested it and this sadly doesn't do the trick for me.
Hi Olvin,
I just tested it and this sadly doesn't do the trick for me.
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
Better fix:
if line.startsWith(b"ok") and b"T:" in line
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
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
Recommended Posts
Olvin 0
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 Olvinspelling
Link to post
Share on other sites