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

    BtnCmd-DWC Plugin - Customise DWC - v01.03.08 01-03-25

    Scheduled Pinned Locked Moved
    Plugins for DWC and DSF
    27
    244
    38.4k
    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.
    • MintyTreborundefined
      MintyTrebor
      last edited by MintyTrebor

      BtnCmd allows you to create new dashboard layouts from standard DWC panels, plus adds new features and panels not available in standard DWC.

      You can add as many layouts as you like by adding tabs. Within each tab you can add panels & custom action buttons - each button can do one of four things:

      • run a Macro.g file from the SD card

      • issue a gcode command

      • send an MQTT message - (useful for integrating with existing IOT / home automation systems)

      • Send http post/get requests - (useful for integrating with existing IOT / home automation systems)

      You can also:

      • design your own custom panels

      • show object model variable values in real time

      • update Global Variables in the UI.

      • Create Custom Charts

      I have attempted 😥 to make a short overview video here.

      You can download the plugin here, please read the release notes for specific instructions.

      There is also a wiki.

      I hope its of use!

      PS. Big Thanks to the community on the RRF For STM/LPC TeamGloomy discord server and @jay_s_uk for help with testing and ideas.

      NodeDSF - Native Node-Red integration with Duet boards.
      BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
      ReleaseMgr - Duet update info inside DWC.
      Repo

      stuartofmtundefined MikeSundefined Stephen6309undefined SamanthaJaneyCakeundefined MintyTreborundefined 8 Replies Last reply Reply Quote 20
      • stuartofmtundefined
        stuartofmt @MintyTrebor
        last edited by

        @mintytrebor

        Hi - I wanted to try this as it looks like it would make a perfect way to launch DuetLapse3. Unfortunately I cannot get it to install.

        I tried to install on R3.2.2 with the corresponding zip file. The zip deployed and the BtnCmd directories were created with various subdirectories and files (/sys/BtnCmd-Alpha_0.14/ ... and similarly under /www)

        There was one popup during this process that listed the files as they were unzipped. There was no other popup or any indication of error (or success).

        Even after a full reboot - there is no indication that BtnCMd has installed. No listing under either General-->Plugins (the default plugins are displayed) or Machine_Specific --> Plugins.

        Any suggestions on how to troubleshoot ? Any other information I can provide ?

        MintyTreborundefined 2 Replies Last reply Reply Quote 0
        • MintyTreborundefined
          MintyTrebor @stuartofmt
          last edited by

          @stuartofmt Sorry its not gone smoothly...I've not seen DWC ever report its decompressing files installing a plugin, the only thing its ever prompted me was to confirm I wanted to install the plugin (on 3.2.2), and then to say plugin was installed. (On 3.3b2 you have to go through a wizard.).

          I have asked a friendly tester from the discord group to do a test install on one of his many boards with 3.2.2. I run 3.2.2 with an SBC (DSF) so I am concerned there might be an install quirk I have not come across on standalone 3.2.2 (the plugin system is not exactly fully mature yet).

          In the mean time have you tried to install it again after refreshing your browser...? The only other issue we came across in testing the plugin, was due to an existing DWC install problem on the SD card. A re-install of DWC cleared the issue. I'll report back later.

          NodeDSF - Native Node-Red integration with Duet boards.
          BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
          ReleaseMgr - Duet update info inside DWC.
          Repo

          stuartofmtundefined 1 Reply Last reply Reply Quote 0
          • MikeSundefined
            MikeS @MintyTrebor
            last edited by

            @mintytrebor ok i stopped at MQTT integration and i tought "Shut up and take my money!".Time to integrate my ptinter with the 4mt ws2812 led strip that is on my desk and is connected to home assistant! I'll try it as soon as possible! Thanks for the great work

            MintyTreborundefined 1 Reply Last reply Reply Quote 0
            • MintyTreborundefined
              MintyTrebor @stuartofmt
              last edited by

              @stuartofmt Tester has come back, and it looks like there is an issue with any version of the plugin after 8.1 Alpha, on 3.2.2.
              The question is why it works on my 3.2.2 with SBC. I'll look into it now.
              I'll take down the current release for 3.2.2 so it does not impact anyone else. Sorry you were the first!😖

              NodeDSF - Native Node-Red integration with Duet boards.
              BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
              ReleaseMgr - Duet update info inside DWC.
              Repo

              1 Reply Last reply Reply Quote 0
              • stuartofmtundefined
                stuartofmt @MintyTrebor
                last edited by stuartofmt

                @mintytrebor said in BtnCmd - DWC Plugin - Create custom layouts & action buttons.:

                have you tried to install it again after refreshing your browser

                Yep - I cleaned the browser history and cookies first. I originally tried to install on 3,2 and after realizing my mistake, upgraded to 3.2.2 and deleted all the BtnCmd dirs before trying again. So I'm hopefully doing a "clean" instal attempt.

                I have some prints to get done in the next few days and don't really want to upgrade to the 3.3b2 just yet.

                If it's not easily identifiable - then I'll try again next week after upgrading to 3.3b2

                Thanks - looking fwd to trying this out. I use a Pi to run a camera and DuetLapse3 (which I maintain). The Pi (in my case) is just "there" - pointing to my Duet2 Wifi. I can think of some easy url command based expansions using (say) a python http server called from a button (e.g. send a email notification).

                MintyTreborundefined 3 Replies Last reply Reply Quote 0
                • MintyTreborundefined
                  MintyTrebor @stuartofmt
                  last edited by

                  @stuartofmt 3.3b2 should be OK. I'm running that on a duet2 ethernet, and there are about 5 or six other users running it on that version....I'm beginning to suspect it might be one of the framework plugins I use. Still doesn't explain why it works on SBC 3.2.2 though...

                  I've dug out a spare board, which I'm going to flash 3.2.2 onto and test...(But its gonna take a while - sorry).If it does turn out to be a framework plugin issue, I may just stick with a 3.3b2+ version. The plugin system is much much better than in 3.2.2.

                  NodeDSF - Native Node-Red integration with Duet boards.
                  BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
                  ReleaseMgr - Duet update info inside DWC.
                  Repo

                  stuartofmtundefined 1 Reply Last reply Reply Quote 0
                  • MintyTreborundefined
                    MintyTrebor @MikeS
                    last edited by MintyTrebor

                    @mikes make sure your MQTT broker is configured to also use web -sockets. You should also check out my NodeDSF nodes for node-red, which is great with HA. Might give you some ideas...

                    NodeDSF - Native Node-Red integration with Duet boards.
                    BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
                    ReleaseMgr - Duet update info inside DWC.
                    Repo

                    MikeSundefined 1 Reply Last reply Reply Quote 0
                    • MintyTreborundefined
                      MintyTrebor @stuartofmt
                      last edited by

                      @stuartofmt said in BtnCmd - DWC Plugin - Create custom layouts & action buttons.:

                      I use a Pi to run a camera and DuetLapse3 (which I maintain). The Pi (in my case) is just "there" - pointing to my Duet2 Wifi. I can think of some easy url command based expansions using (say) a python http server called from a button (e.g. send a email notification).

                      Coincidentally I put a POC print queue together to help a fellow forum user out a couple of days ago (https://forum.duet3d.com/topic/22811/print-queue-feature-for-true-sequential-printing/7?_=1619110275916), it used BtnCmd to send http commands to a node-red websocket to start and stop the print queue, so I'm fairly confident your python idea will work..

                      NodeDSF - Native Node-Red integration with Duet boards.
                      BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
                      ReleaseMgr - Duet update info inside DWC.
                      Repo

                      1 Reply Last reply Reply Quote 0
                      • MikeSundefined
                        MikeS @MintyTrebor
                        last edited by

                        @mintytrebor so i played around a bit and i ended using the http request (wled also accept this). Btw i would like to light up my strip based on print progress...it would need a new event trigger and the ability to send custom http request with variables (maybe taken from Object Model?). I'm not asking you to add this, but it would be really cool and add a lot of possibilities.

                        example: http://wledIp/win&FX=98&IX=50
                        this will set the strip to percentage effect and set it to 50%. Instead of 50 it would need to output the current percentage from object model.

                        MintyTreborundefined 1 Reply Last reply Reply Quote 0
                        • MintyTreborundefined
                          MintyTrebor @MikeS
                          last edited by

                          @mikes Glad you got it working. Your idea might be quite challenging to achieve in the plugin, 'status' is kind of a global parameter, so it was already available in DWC for me to use without using additional resources. I'll have to see what is needed to work with the object model in the way you describe.

                          As an aside/alternative - if what you want to achieve is:
                          If job % complete is between 0-25% send http request to wled set lights blue
                          If job % complete is between 26-50% send http request to wled set lights red
                          in general terms - then that would be easy to do with NodeDSF.

                          NodeDSF - Native Node-Red integration with Duet boards.
                          BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
                          ReleaseMgr - Duet update info inside DWC.
                          Repo

                          1 Reply Last reply Reply Quote 0
                          • stuartofmtundefined
                            stuartofmt @MintyTrebor
                            last edited by

                            @mintytrebor said in BtnCmd - DWC Plugin - Create custom layouts & action buttons.:

                            If it does turn out to be a framework plugin issue, I may just stick with a 3.3b2+ version

                            I had a bit of spare time and upgraded to 3.3b3. I installed the relevant BtnCmd and it is now working. I'll report back on what I find.
                            Thanks for this - I'm sure many will find it useful.

                            1 Reply Last reply Reply Quote 1
                            • MintyTreborundefined
                              MintyTrebor @stuartofmt
                              last edited by

                              @stuartofmt So just to report back. I have just setup a brand new board with 3.2.2, and I did get an decompression error - but it is the same error I mention in the release notes, the plugin still installed OK...So I am not entirely sure what went wrong with yours...I suspect this is not going to be a ongoing problem as I will switch to 3.3 after the beta and I won't be compiling for 2 versions of DWC going forward.

                              NodeDSF - Native Node-Red integration with Duet boards.
                              BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
                              ReleaseMgr - Duet update info inside DWC.
                              Repo

                              1 Reply Last reply Reply Quote 0
                              • OwenDundefined
                                OwenD
                                last edited by

                                Very cool plugin!
                                Haven't had time to explore it to it's fullest extent but it will definitely be useful.

                                1 Reply Last reply Reply Quote 1
                                • tristanryerparkeundefined
                                  tristanryerparke
                                  last edited by tristanryerparke

                                  Hey @MintyTrebor is it possible to have a panel which shows any value from the Object Model? Or several values in one panel?
                                  Maybe with the option for a text string in front of the value, entered as such:

                                  "Tool2XOffset: " , {tools[2].offsets[0]}
                                  

                                  Displaying Like:

                                  Tool2XOffset: 26
                                  

                                  Thanks,
                                  T

                                  MintyTreborundefined 1 Reply Last reply Reply Quote 0
                                  • MintyTreborundefined
                                    MintyTrebor @tristanryerparke
                                    last edited by

                                    @tristanryerparke I have just pushed Alpha 0.8.16 for DWC 3.3b3 which includes a panel to display Machine Object Model Values.
                                    MMValue.png

                                    Use the Object Model Browser Plugin to get the model path required to create the BtnCmd panel. (highlighted in blue)
                                    OMBSelect.png

                                    This feature should be treated as experimental, as I have not had much time to look at the resource impact of adding this feature. This is also the first release for 3.3b3, so there may be other unforeseen bugs.

                                    NodeDSF - Native Node-Red integration with Duet boards.
                                    BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
                                    ReleaseMgr - Duet update info inside DWC.
                                    Repo

                                    Stephen6309undefined 1 Reply Last reply Reply Quote 1
                                    • Stephen6309undefined
                                      Stephen6309 @MintyTrebor
                                      last edited by

                                      @mintytrebor Why is it installed in the Jobs directory?

                                      MintyTreborundefined 1 Reply Last reply Reply Quote 0
                                      • MintyTreborundefined
                                        MintyTrebor @Stephen6309
                                        last edited by

                                        @stephen6309 If you are referring to the plugin files, you will have to ask the DWC maintainer, I have no control over where the plugin files go.

                                        NodeDSF - Native Node-Red integration with Duet boards.
                                        BtnCmd - Customise DWC with user defined buttons/layouts/panels (DWC Plugin)
                                        ReleaseMgr - Duet update info inside DWC.
                                        Repo

                                        1 Reply Last reply Reply Quote 0
                                        • Stephen6309undefined
                                          Stephen6309 @MintyTrebor
                                          last edited by Stephen6309

                                          This post is deleted!
                                          1 Reply Last reply Reply Quote 0
                                          • Stephen6309undefined
                                            Stephen6309
                                            last edited by Stephen6309

                                            @chrishamm Why are the install files put in Jobs? I now have to scroll to find my print files.

                                            Edit: It took a delete and reinstall to fix it.

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