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

    Duet wifi S3D

    Scheduled Pinned Locked Moved
    General Discussion
    31
    50
    12.5k
    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.
    • X4TECundefined
      X4TEC
      last edited by

      I've just been experimenting with sending the S3D output to the Duet Web Control using the rr_upload api. Its a work in progress and what I'd love to be able to do is upload to job to the SDcard via DWC from S3D, then see the job in the live preview, but not sure it will work that way.

      I'm on windows so I installed CURL, then you added the following to the additional terminal post processing section of the S3D profile.

      curl -d "@[output_filepath]" -X POST http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes\S3D

      I've just got it to work so may not be the final script. Ideally I'd like to store the upload with the model name, but I've not found the S3D attribute to send instead of "\S3D"

      1 Reply Last reply Reply Quote 0
      • Zesty_Lykleundefined
        Zesty_Lykle
        last edited by

        Interesting!
        Keep it up and perfect it. Wish I could do this stuff.
        (simple mechanical guy here)

        Lykle
        Design, make and enjoy life

        Co Creator of the Zesty Nimble

        1 Reply Last reply Reply Quote 0
        • mattbenimbleundefined
          mattbenimble
          last edited by

          @X4TEC:

          I've just been experimenting with sending the S3D output to the Duet Web Control using the rr_upload api. Its a work in progress and what I'd love to be able to do is upload to job to the SDcard via DWC from S3D, then see the job in the live preview, but not sure it will work that way.

          I'm on windows so I installed CURL, then you added the following to the additional terminal post processing section of the S3D profile.

          curl -d "@[output_filepath]" -X POST http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes\S3D

          I've just got it to work so may not be the final script. Ideally I'd like to store the upload with the model name, but I've not found the S3D attribute to send instead of "\S3D"

          i believe you can get the file name using:

          [output_filepath] = the full path to the file being saved, including extension
          [output_dir] = full path to the folder that you're saving the file in (excluding the actual file itself)
          [otuput_filename] = filename without extension or path

          1 Reply Last reply Reply Quote 0
          • schneik80undefined
            schneik80
            last edited by

            here is a script that works for me:

            [[language]]
            path=[output_filepath]
            file=${path##*/}
            curl -# -d "@[output_filepath]" -X POST http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes/$file
            
            
            1 Reply Last reply Reply Quote 0
            • schneik80undefined
              schneik80
              last edited by

              On OSX i have a folder action using a bash script

              [[language]]
              for f in "$@"
              do
              	path="$f"
              	file=${path##*/}
              	curl -# -d "@$f" -X POST http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes/$file
              done
              
              

              Any gcode file I save to this folder with the action gets uploaded. I like this better than the s3d terminal option because the upload happens on save, not preview on print. In this way i only upload once when i know the print looks right.

              1 Reply Last reply Reply Quote 0
              • FrankNPrinterundefined
                FrankNPrinter
                last edited by

                Just my 2 cents and might be off topic but if using usb, you might want to modify a cable and cut out the 5V supply especially if you have a dedicated 5v in to the board already.

                1 Reply Last reply Reply Quote 0
                • BrianHanifinundefined
                  BrianHanifin
                  last edited by

                  Thank you for this. I have fine tuned the code for Simplify3D a little, and it works great! đŸ™‚

                  curl -d "@[output_filepath]" -X POST http://hypercube.local/rr_upload?name=gcodes/[output_filename].gcode
                  
                  1 Reply Last reply Reply Quote 0
                  • BrianHanifinundefined
                    BrianHanifin
                    last edited by

                    OK. While the above code does upload a file to duet, it does something to the file that leaves it unprintable. I have experimented with it and discovered the following works. This may not be the optimal method still, but it does yield a printable GCode file.

                    curl  -F "file=@[output_filepath]" "http://hypercube.local/rr_upload?name=gcodes/[output_filename].gcode"
                    
                    

                    The reason I say it is not optimal is that is places some HTTP data at the top of the file. But, Duet appears to ignore this code and happily prints anyway. So, for now it will do.

                    --------------------------16eea21da68ae83e
                    Content-Disposition: form-data; name="file"; filename="curl_test.gcode"
                    Content-Type: application/octet-stream
                    
                    
                    1 Reply Last reply Reply Quote 0
                    • Alex9779undefined
                      Alex9779
                      last edited by

                      This is great! thumbsup Thanks for sharing…

                      1 Reply Last reply Reply Quote 0
                      • sungod3kundefined
                        sungod3k
                        last edited by

                        Hi,

                        I used a similar command with Octoprint succesfully so I was quite happy when I found this thread.

                        The command Im using is
                        curl -# -d "@[output_filepath]" -X POST http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes/[output_filename].gcode"
                        which uploads the code correctly, however when I want to print the autouploaded code, it starts the print, does nothing and then returns the message "print finished in 0h 1m".

                        The same code works normally when I upload it via the webinterface.

                        Whats the trick to get that working?

                        Cheers

                        http://www.42dimensions.de/
                        https://printnewworlds.blogspot.com/

                        1 Reply Last reply Reply Quote 0
                        • MoS-tekknixundefined
                          MoS-tekknix
                          last edited by

                          Please download the "uploaded" GCode via WebInterface and take a look into the file. Maybe there it will be clearer what happens.

                          1 Reply Last reply Reply Quote 0
                          • sungod3kundefined
                            sungod3k
                            last edited by

                            I ran the original and the autouploaded file through notepad++s compare tool and they matched 100%

                            http://www.42dimensions.de/
                            https://printnewworlds.blogspot.com/

                            1 Reply Last reply Reply Quote 0
                            • MoS-tekknixundefined
                              MoS-tekknix
                              last edited by

                              @sungod3k:

                              I ran the original and the autouploaded file through notepad++s compare tool and they matched 100%

                              Uhm, thats interesting.

                              Can you try this one, i'm using and change the IP to your DuetWifi/Ethernet IP?

                              [[language]]
                              curl -F "file=@[output_filepath]" "http://192.168.178.144/rr_upload?name=gcodes/[output_filename].gcode"
                              
                              

                              That is working even if the Printer is currently busy.

                              Regards
                              MoS-tekknix

                              1 Reply Last reply Reply Quote 0
                              • sungod3kundefined
                                sungod3k
                                last edited by

                                Great, that seems to work. Thanks

                                http://www.42dimensions.de/
                                https://printnewworlds.blogspot.com/

                                1 Reply Last reply Reply Quote 0
                                • MoS-tekknixundefined
                                  MoS-tekknix
                                  last edited by

                                  @sungod3k:

                                  Great, that seems to work. Thanks

                                  You're welcome. That's what's a forum for đŸ˜‰

                                  Regards
                                  MoS-tekknix

                                  1 Reply Last reply Reply Quote 0
                                  • tychopundefined
                                    tychop
                                    last edited by

                                    @MoS-tekknix:

                                    @sungod3k:

                                    I ran the original and the autouploaded file through notepad++s compare tool and they matched 100%

                                    Uhm, thats interesting.

                                    Can you try this one, i'm using and change the IP to your DuetWifi/Ethernet IP?

                                    [[language]]
                                    curl -F "file=@[output_filepath]" "http://192.168.178.144/rr_upload?name=gcodes/[output_filename].gcode"
                                    
                                    

                                    That is working even if the Printer is currently busy.

                                    Regards
                                    MoS-tekknix

                                    This script
                                    curl -F "file=@[output_filepath]" "http://192.168.x.x/rr_upload?name=gcodes/[output_filename].gcode"
                                    uploads the file correctly, but the print doesn't start…

                                    Am I missing something?

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

                                      You need to send a separate command to print the file.

                                      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

                                      1 Reply Last reply Reply Quote 0
                                      • tychopundefined
                                        tychop
                                        last edited by

                                        Yes, I figured that could be the issue, however, I couldn't find anything here https://github.com/chrishamm/DuetWebControl…

                                        Is there a command to print? Where can I look for it?

                                        I can see

                                        [[language]]
                                        function startUpload(type, files, fromCallback) {
                                        
                                        ```in the javascript, but am clueless how to specify 'print' as the type to upload gcode & start the print
                                        1 Reply Last reply Reply Quote 0
                                        • dc42undefined
                                          dc42 administrators
                                          last edited by

                                          Use the rr_gcode command to send M32 "filename.gcode".

                                          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

                                          1 Reply Last reply Reply Quote 0
                                          • tychopundefined
                                            tychop
                                            last edited by

                                            Yep, Got it

                                            This works:
                                            curl -F "file=@[output_filepath]" "http://192.168.x.x/rr_upload?name=0%3A%2Fgcodes%2F[output_filename].gcode"
                                            curl "http://192.168.x.x/rr_gcode?gcode=M32 0%3A%2Fgcodes%2F[output_filename].gcode"

                                            Many thanks !!

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