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

    Duet Buddy - a proof of concept remote monitor

    Scheduled Pinned Locked Moved
    General Discussion
    19
    85
    8.0k
    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.
    • zaptaundefined
      zapta @richardmckenna
      last edited by zapta

      @richardmckenna, very nice!

      The IP5306 seems to have only 25% increments for the LEDs and possibly the IP5306_I2C has the same resolution but with I2C interface instead of LEDs. Hard to find information about the IP5306_I2C.

      M5Stack Schematic
      http://community.m5stack.com/assets/uploads/files/1515402963959-97994060-2969-49dc-ad9c-7b3887d95a17-image.png

      IP5306 (non I2C) Datasheet
      https://datasheet.lcsc.com/szlcsc/1809201029_INJOINIC-IP5306_C181692.pdf

      The expression (data & 0xF0) returns the 8 bit value of 'data' with the four right bits forces to '0'.

      BTW, the two temperature fields in your picture seems to have extra characters. Is it intentional?

      richardmckennaundefined 1 Reply Last reply Reply Quote 0
      • richardmckennaundefined
        richardmckenna @zapta
        last edited by

        @zapta said in Duet Buddy - a proof of concept remote monitor:

        @richardmckenna, very nice!

        The IP5306 seems to have only 25% increments for the LEDs and possibly the IP5306_I2C has the same resolution but with I2C interface instead of LEDs. Hard to find information about the IP5306_I2C.

        Yeah that is all I could find. Oh well 25% increments are better than nothing. I’ve added a charging status now as well so when it is plugged in it shows “Charging” and when full “Charged”.

        BTW, the two temperature fields in your picture seems to have extra characters. Is it intentional?

        That was me trying to find the degrees symbol only to discover it doesn’t exist in the included font. It seems to be standard ASCII with only some of the extended ASCII characters. I’ve given up on that and removed them.

        zaptaundefined 1 Reply Last reply Reply Quote 0
        • zaptaundefined
          zapta @richardmckenna
          last edited by

          @richardmckenna, how did you implement the 'Kossel Max' title? Is it hard coded in your arduino code? One option is to add a title field to the config file on the SD card.

          Or, anybody knows if it's possible to query the printer name from the printer using a HTTP request?

          richardmckennaundefined 2 Replies Last reply Reply Quote 0
          • richardmckennaundefined
            richardmckenna @zapta
            last edited by

            @zapta I added an extra field to the json file and parsed it like the others. Didn’t even think about pulling from the duet, I will explore that possibility.

            The reason behind me wanting the name displayed was that I’m thinking about the best way of adding multiple machines to it. So having an array of machine objects defined in the json. Then you can navigate between the different machines with the left and right buttons.

            zaptaundefined 1 Reply Last reply Reply Quote 0
            • richardmckennaundefined
              richardmckenna @zapta
              last edited by

              @zapta The printer name is available through /rr_status?type=2 so should be easy enough to do an initial call to that to get the name and other info about the printer.

              1 Reply Last reply Reply Quote 0
              • dc42undefined
                dc42 administrators
                last edited by

                In the forthcoming RRF 3.01-RC2 it's also available via M409 K"network.name".

                Duet WiFi hardware designer and firmware engineer
                Please do not ask me for Duet support via PM or email, use the forum
                http://www.escher3d.com, https://miscsolutions.wordpress.com

                zaptaundefined 1 Reply Last reply Reply Quote 1
                • zaptaundefined
                  zapta @richardmckenna
                  last edited by

                  @richardmckenna, if type=2 has also the other relevant information we can just switch to it instead of type=3.

                  Does it require changes in the duet response json parser?

                  richardmckennaundefined 1 Reply Last reply Reply Quote 0
                  • zaptaundefined
                    zapta @dc42
                    last edited by

                    @dc42 said in Duet Buddy - a proof of concept remote monitor:

                    In the forthcoming RRF 3.01-RC2 it's also available via M409 K"network.name".

                    Thanks for the info. This require posting gcode to the duet, right? What is a reasonable and simple way of doing it?

                    Once we figure this out it will be useful for other functionality such as pressure-advance up/down buttons for interactive experimentation.

                    1 Reply Last reply Reply Quote 0
                    • richardmckennaundefined
                      richardmckenna @zapta
                      last edited by

                      @zapta type 1,2 and 3 all seem to share some information but unfortunately not all the bits we are are looking at.

                      status-type-1.json
                      status-type-2.json
                      status-type-3.json

                      So I think it would need a single call to 2, to get the name and repeated calls to 3 as it currently does.

                      the duet parser will need tweaking as it only looks for:

                      char state_char;
                      float progress_percents;
                      float z_height;
                      float temp1;
                      float temp2;
                      

                      But that's straight forward. And if the JSON config file is changed just to have the IP, the rest of the URL can be provided by the code depending on which call it is doing.

                      I will continue to have a play with it, see what I can do.

                      You can see my updated battery code in my fork here https://github.com/richard-mckenna/misc/tree/master/duet3d_buddy/arduino

                      Would you be able to separate Duet Buddy into it's own git repo?

                      1 Reply Last reply Reply Quote 0
                      • zaptaundefined
                        zapta
                        last edited by

                        Hi Richard, I create a separate duet_buddy repository here https://github.com/zapta/duet_buddy

                        If you will send me your github id I can add you as a contributor.

                        richardmckennaundefined 1 Reply Last reply Reply Quote 1
                        • richardmckennaundefined
                          richardmckenna @zapta
                          last edited by

                          @zapta excellent thanks. GitHub id is just "richard-mckenna".

                          zaptaundefined 1 Reply Last reply Reply Quote 0
                          • zaptaundefined
                            zapta @richardmckenna
                            last edited by zapta

                            @richardmckenna, sent you an invite via github.

                            Please feel free to touch anything, including the project page and documentation files.

                            1 Reply Last reply Reply Quote 1
                            • DK90undefined
                              DK90
                              last edited by

                              This post is deleted!
                              1 Reply Last reply Reply Quote 0
                              • PastThePointundefined
                                PastThePoint
                                last edited by

                                I know I am late to the party, but did this ever get figured out for the Duet 3's? Mine just keeps saying "Bad response from duet"??

                                PastThePointundefined 2 Replies Last reply Reply Quote 0
                                • PastThePointundefined
                                  PastThePoint @PastThePoint
                                  last edited by

                                  @pastthepoint @zapta

                                  1 Reply Last reply Reply Quote 0
                                  • PastThePointundefined
                                    PastThePoint @PastThePoint
                                    last edited by PastThePoint

                                    @pastthepoint I'm an idiot. I'm running a Duet 3 w/ SBC. I don't know if it means this will not work or changes need to be made.

                                    zaptaundefined richardmckennaundefined 2 Replies Last reply Reply Quote 0
                                    • zaptaundefined
                                      zapta @PastThePoint
                                      last edited by

                                      @pastthepoint, this one will require code changes to support Duet3 which has a different HTTP/Json format.

                                      I believe that this one, which is newer, works with Duet 3 but didn't try it myself. https://forum.duet3d.com/topic/15198/reppanel-a-diy-alternative-to-the-paneldue-with-wifi-support

                                      1 Reply Last reply Reply Quote 0
                                      • richardmckennaundefined
                                        richardmckenna @PastThePoint
                                        last edited by

                                        @pastthepoint @zapta I’ve rewritten this recently (I know it’s taken me a while to get round to it) and it works with duet3. I don’t use an SBC so can’t confirm if it works. Not sure what the difference, if any is with the returned json between duet3 in standalone mode and with an SBC. I can share the code tomorrow.

                                        zaptaundefined 1 Reply Last reply Reply Quote 0
                                        • zaptaundefined
                                          zapta @richardmckenna
                                          last edited by zapta

                                          @richardmckenna, do you want to send a github pull request with the changes? Or you can get write access if you don't have it already.

                                          richardmckennaundefined 1 Reply Last reply Reply Quote 0
                                          • o_lampeundefined
                                            o_lampe
                                            last edited by

                                            I must confess I haven't read all the thread, but wanted to ask if it's possible with M5stack to poll a ESPCAM or other WiFi webcam to display the current print as background-pic and show the json-info as insert ?
                                            The other thing I was wondering reading the first few posts was, why not use a smartphone to poll json-status? Is it harder to write an app, than buying an M5stack and program it?

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