Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    PanelDue no longer connecting on Duet3/io0 with 3.01-RC11

    Scheduled Pinned Locked Moved
    Beta Firmware
    4
    48
    1.7k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A Former User?
      A Former User
      last edited by

      The Arduino would have to send M408 S0 or S1 depending on how much of the data it needs to update to work independent of the PanelDue.

      Nuramoriundefined gtj0undefined 2 Replies Last reply Reply Quote 0
      • Nuramoriundefined
        Nuramori @A Former User
        last edited by Nuramori

        @bearer said in PanelDue no longer connecting on Duet3/io0 with 3.01-RC11:

        The Arduino would have to send M408 S0 or S1 depending on how much of the data it needs to update to work independent of the PanelDue.

        The arduino code is basically sniffing and parsing the JSON package for the time to complete, the bed temp, and the extruder(s) temps. That info is then graphically represented via driven neopixel rings.

        dc42undefined 1 Reply Last reply Reply Quote 0
        • gtj0undefined
          gtj0 @A Former User
          last edited by

          @bearer Maybe if you jumper io0.in to io1.in both ports will get the paneldue commands.

          A Former User? 1 Reply Last reply Reply Quote 0
          • Nuramoriundefined
            Nuramori
            last edited by

            The ultimate goal maybe/would be to negate the arduino entirely and use the Pi4 to drive the neopixels. I am digesting the way that could be done by using the API to pull the same info that is used in the JSON package to the Paneldue.

            gtj0undefined 1 Reply Last reply Reply Quote 0
            • gtj0undefined
              gtj0 @Nuramori
              last edited by

              @Nuramori There's a command /opt/dsf/bin/ModelObserver that spits out json as its updated by the Duet. All you have to do is keep reading that.

              1 Reply Last reply Reply Quote 0
              • A Former User?
                A Former User @gtj0
                last edited by A Former User

                @gtj0 said in PanelDue no longer connecting on Duet3/io0 with 3.01-RC11:

                @bearer Maybe if you jumper io0.in to io1.in both ports will get the paneldue commands.

                probably, but i think thats what Nuramori was suggesting?

                @Nuramori said in PanelDue no longer connecting on Duet3/io0 with 3.01-RC11:

                sniffing and parsing the JSON package for the time to complete, the bed temp, and the extruder(s) temps.

                yeah, you could just send M408 with different S paramters in DWC to see which one returns all you need and have the arduino send that string at regular intervals and keep the parsing code as is.
                https://duet3d.dozuki.com/Wiki/Gcode#Section_M408_Report_JSON_style_response

                The Pi route may be easier, if not maybe less reliable until the DSF stuff matures.

                1 Reply Last reply Reply Quote 0
                • A Former User?
                  A Former User @gtj0
                  last edited by A Former User

                  btw
                  @gtj0 said in PanelDue no longer connecting on Duet3/io0 with 3.01-RC11:

                  Oh, one other thing, io1.out can also be configured as a uart so you may want to use that for the Arduino.

                  @gtj0 said in RRF 3.01-RC11 DSF mode: io_1 not outputting "ok" consistently:

                  Marlin mode and raw mode on io_1...

                  M555 P2
                  M575 P1 B115200 S2
                  

                  was wondering if the typo was io_1 or P1, should be P2? (never mind, saw P2 a bit further up here)

                  gtj0undefined 1 Reply Last reply Reply Quote 0
                  • gtj0undefined
                    gtj0 @A Former User
                    last edited by

                    @bearer Unfortunately it looks like the uart on io1 is disabled in firmware. So P0 is the USB port, P1 is io0 and P2 returns Error: M575: parameter 'P' too high

                    Maybe @dc42 can enable it in a future release.

                    1 Reply Last reply Reply Quote 0
                    • Nuramoriundefined
                      Nuramori
                      last edited by

                      I'm always up to trying anything; out of pure curiosity, I am interested in what changed that would prevent both devices from sharing the data on io0.out, when it worked prior to RC11, without any hardware changes.

                      gtj0undefined 1 Reply Last reply Reply Quote 0
                      • gtj0undefined
                        gtj0 @Nuramori
                        last edited by

                        @Nuramori said in PanelDue no longer connecting on Duet3/io0 with 3.01-RC11:

                        I'm always up to trying anything; out of pure curiosity, I am interested in what changed that would prevent both devices from sharing the data on io0.out, when it worked prior to RC11, without any hardware changes.

                        I'm guessing there was a drive strength change or something. I can't get to the source code right now but I can check tomorrow if @dc42 hasn't answered by then.

                        Nuramoriundefined 1 Reply Last reply Reply Quote 0
                        • Nuramoriundefined
                          Nuramori @gtj0
                          last edited by

                          I'm guessing there was a drive strength change or something. I can't get to the source code right now but I can check tomorrow if @dc42 hasn't answered by then.

                          Interesting. I wasn't aware that something like that was controllable through software. Thanks for the help @gtj0 .

                          gtj0undefined 1 Reply Last reply Reply Quote 0
                          • gtj0undefined
                            gtj0 @Nuramori
                            last edited by

                            @Nuramori said in PanelDue no longer connecting on Duet3/io0 with 3.01-RC11:

                            I'm guessing there was a drive strength change or something. I can't get to the source code right now but I can check tomorrow if @dc42 hasn't answered by then.

                            Interesting. I wasn't aware that something like that was controllable through software. Thanks for the help @gtj0 .

                            Yeah on most "microcontroller" platforms, including the ones on the Duets, Pis and other SBCs, many pins are general purpose and have their function (uart, GPIO, SPI, etc) and capabilities (input, output, both, drive strength, pull up/pull down, tristate, etc) controlled from software.

                            1 Reply Last reply Reply Quote 0
                            • A Former User?
                              A Former User
                              last edited by

                              couldn't spot any changes to low level functions, just some conditional logic around the higher level initilization.
                              https://github.com/dc42/RepRapFirmware/commit/6f912e9ca47930d7b91d504c0e9c8be31251284a#diff-52cb419324e9c23a2e2c5a269e0e70fcR3581

                              0 dc42 committed to dc42/RepRapFirmware
                              Various changes for 3.01-RC11
                              
                              Tool change files are now run even if axes have not been homed
                              PanelDue replies are now sent immediately instead of being saved for
                              retrieval by M408
                              Added aux raw mode
                              On Duet 3, IO_0 is not configured in serial mode until M575 P1 is
                              executed
                              GCodeException class now stores a small string to allow more meaningful
                              error messages
                              1 Reply Last reply Reply Quote 0
                              • Nuramoriundefined
                                Nuramori
                                last edited by Nuramori

                                Could it be this?

                                setPullup(APIN_Serial0_RXD, true);

                                I didn’t see anywhere else where the pull-up resistor is used/set in the old code, could the setting the pull-up affect the signal enough that it “dies” enough in signal strength for two electrical connections to be too much for the paneldue circuitry?

                                gtj0undefined 1 Reply Last reply Reply Quote 0
                                • A Former User?
                                  A Former User
                                  last edited by A Former User

                                  @Nuramori said in PanelDue no longer connecting on Duet3/io0 with 3.01-RC11:

                                  setPullup(APIN_Serial0_RXD, true);

                                  click the beginning of the line and choose "git blame" to see when it was changed. (if viewed on github, otherwise git cli works as well)

                                  i'm guessing its part of the other repositories then

                                  gtj0undefined 1 Reply Last reply Reply Quote 0
                                  • gtj0undefined
                                    gtj0 @Nuramori
                                    last edited by

                                    @Nuramori said in PanelDue no longer connecting on Duet3/io0 with 3.01-RC11:

                                    Could it be this?

                                    setPullup(APIN_Serial0_RXD, true);

                                    I didn’t see anywhere else where the pull-up resistor is used/set in the old code, could the setting the pull-up affect the signal enough that it “dies” enough in signal strength for two electrical connections to be too much for the paneldue circuitry?

                                    Absolutely!
                                    I just did a build without the pullup. See this helps...
                                    http://dueui.org/download/Duet3Firmware_MB6HC.bin

                                    Nuramoriundefined 1 Reply Last reply Reply Quote 0
                                    • gtj0undefined
                                      gtj0 @A Former User
                                      last edited by

                                      @bearer It was new in the last 2 commits.

                                      1 Reply Last reply Reply Quote 0
                                      • A Former User?
                                        A Former User
                                        last edited by

                                        (for CoreNG, ofc, my bad)

                                        1 Reply Last reply Reply Quote 0
                                        • Nuramoriundefined
                                          Nuramori @gtj0
                                          last edited by

                                          @gtj0 I downloaded the file, pushed it to the printer, and performed a "M997 S0"

                                          Result was :
                                          Error: Operation failed (Reason: ArgumentNullException in SimpleCode: Value cannot be null. (Parameter 'input'))

                                          gtj0undefined 1 Reply Last reply Reply Quote 0
                                          • A Former User?
                                            A Former User
                                            last edited by

                                            But without the pull up? Comment said it was removed pending a M575, so the fix would be to enable it upon finding a M575 P1 command?

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA