OctoPrint as Canvas... Error Connecting to Duet



  • I am not able to get OctoPrint to connect to DuetEth.

    A few different tests..

    Connecting to: /dev/ttyACM0
    Changing monitoring state from "Offline" to "Opening serial port"
    Connected to: Serial<id=0x6c5afd70, open=True>(port='/dev/ttyACM0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=10.0, xonxoff=False, rtscts=False, dsrdtr=False), starting monitor
    Starting baud rate detection...
    Changing monitoring state from "Opening serial port" to "Detecting baudrate"
    Trying baudrate: 115200
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #1
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #2
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #3
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #4
    Send: N0 M110 N0125
    Recv:
    Trying baudrate: 250000
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #1
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #2
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #3
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #4
    Send: N0 M110 N0
    125
    Recv:
    Trying baudrate: 230400
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #1
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #2
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #3
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #4
    Send: N0 M110 N0125
    Recv:
    Trying baudrate: 57600
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #1
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #2
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #3
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #4
    Send: N0 M110 N0
    125
    Recv:
    Trying baudrate: 38400
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #1
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #2
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #3
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #4
    Send: N0 M110 N0125
    Recv:
    Trying baudrate: 19200
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #1
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #2
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #3
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #4
    Send: N0 M110 N0
    125
    Recv:
    Trying baudrate: 9600
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #1
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #2
    Send: N0 M110 N0125
    Recv:
    Baudrate test retry #3
    Send: N0 M110 N0
    125
    Recv:
    Baudrate test retry #4
    Send: N0 M110 N0*125
    Recv:
    Changing monitoring state from "Detecting baudrate" to "Error: No more baudrates to test, and no suitable baudrate found."
    Changing monitoring state from "Error: No more baudrates to test, and no suitable baudrate found." to "Offline (Error: No more baudrates to test, and no suitable baudrate found.)"
    Connection closed, closing down monitor



  • If I start messing around, and change the Hello from "M110 N0" to "M122"
    It does give me back the Diagnostics, but OctoPrint still things its not working at each baudrate and errors out.

    Sometimes, if I keep messing it with it, the Duet2 just stops responding (per the terminal screen in OctoPi), but it will respond using YAT.



  • I'll have to boot up my Octo pi canvas hub to see if I changed anything, but I don't think there was anything in particular. I used the highest baud rate available without issue.

    I seem to recall a option for ignoring any unhandled errors in Octo prints settings.



  • Connecting to: /dev/ttyACM0Changing monitoring state from "Offline" to "Opening serial port"Connected to: Serial<id=0x712d0890, open=True>(port='/dev/ttyACM0', baudrate=500000, bytesize=8, parity='N', stopbits=1, timeout=10.0, xonxoff=False, rtscts=False, dsrdtr=False), starting monitorStarting baud rate detection...Changing monitoring state from "Opening serial port" to "Detecting baudrate"Trying baudrate: 500000Send: N0 M110 N0*125Recv: Error: Bad command: \x01\x0e\x01\x14Changing monitoring state from "Detecting baudrate" to "Error: Bad command: \x01\x0e\x01\x14"Changing monitoring state from "Error: Bad command: \x01\x0e\x01\x14" to "Offline (Error: Bad command: \x01\x0e\x01\x14)"Connection closed, closing down monitor



  • I also have used a Canvas Hub and it "just worked". Homebuilt on a PI 3B+, started with the Octoprint image, added the Mosaic plugins, cabled it to Duet USB... and it just worked.

    I do also remember checking the "ignore errors" box, but I believe it had to do with spurious tool changes that Mosaic is/was leaving in the file. I finally started just editing them out between the Mosiac Chroma Post-Process (and/or the online thingie) before putting the SD in the Hub.



  • Try a different USB cable?



  • I have tried 3 cables.
    The Cable I generally use when I connect the Duet2 to YAT, is the main cable I have been playing with.


  • administrators

    • The baud rate setting is irrelevant, because there is no async serial link involved (unlike with almost all 8-bit boards).
    • The compatibility setting in RRF needs to be set to Marlin, because Octoprint expects to receive an OK response after each command.
    • Use recent firmware e.g. 2.02. The Octoprint response parser is very fussy about having apparently redundant spaces in exactly the right places in responses, and older versions of RRF had one less space in one of the responses.


  • @dc42

    Setting M555 to P2 did it!

    Thank you! Thank you very much!

    I am guessing that everyone else who got this working and told me that it just worked, already had this set....



  • @bluedust said in OctoPrint as Canvas... Error Connecting to Duet:

    I am guessing that everyone else who got this working and told me that it just worked, already had this set....

    Very likely. I think it's the default in the configurator.


Log in to reply