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

    DuetLapse3

    Scheduled Pinned Locked Moved
    Third-party software
    20
    296
    30.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.
    • Proschi3Dundefined
      Proschi3D @stuartofmt
      last edited by Proschi3D

      @stuartofmt use the following for the mjpeg streamer

       python3 DuetLapse3.py -port 8025 -duet 192.168.178.91 -detect layer -weburl1 http://192.168.178.70:8081/?action=snapshot -camera1 web
      
      

      How do I enable it to automatically generate a video when it ends?

      pi@RepetierServer:~/Duetlapse $ 192.168.178.91 terminate - Terminating
      192.168.178.91 nextAction - ++++++ Entering terminate state ++++++
      192.168.178.91 terminate - captureLoop is not running
      192.168.178.91 nextAction - nextAction exiting normally
      192.168.178.91 terminate - Wait for video to complete
      192.168.178.91 terminate - makeVideo is not running
      192.168.178.91 terminate - *****  Cleaning up files for phase:  terminate  *****
      192.168.178.91 terminate - ********* gcodeLoopState is 0 - Waiting to complete *********
      192.168.178.91 Thread-332 - !!!!! http call: {'displayStatus': ['true']} !!!!!
      192.168.178.91 terminate - !!!!! http listener stopped  !!!!!
      192.168.178.91 terminate - Program Terminated
      Killed
      ^C
      

      Love my Duet 3 Mini.
      https://www.instagram.com/proschi3d
      https://youtube.com/@proschi3d
      https://www.proschi3d.de

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

        I am pleased to announce the release of version 5.0.0 of DuetLapse3.

        Thanks to the good graces of the Duet3D team, I will soon be developing against an SBC. This release is the first step towards a plugin. The UI is completely refactored and there are some new features as well (e.g. being able to set the maximum video length).

        See the first post for download links

        VERSION 5.0.x
        Note .x releases are issued without documentation to correct minor issues e.g. a typo or edge-case logic error.

        [1] Completely revised UI
        [2] Added display of last captured image to UI
        [3] Added ability to specify a config file with -file option This avoids the need for long command lines. Options in command line over-write those in config file
        [4] Added -maxvideo. Limits the maximum length of video by varying fps as needed
        [5] Added ability to change -fps -minvideo and -maxvideo in the UI
        [6] UI gives indication of video creation status
        [7] Changed logfile name on startup
        [8] Sequential jobs are numbered
        [9] Misc bug fixes

        Enjoy and as always, feedback and suggestions are welcome.

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

          @Proschi78

          I have no idea. You did not use -verbose.
          Instead of copy paste the log file its best to upload the logfile.

          The logfile can be downloaded by clicking on the link for the logfile. The currently running logfile is the one at the top (shown highlighted in this example). Previous logfiles are below. You can use the -keepfiles option to maintain some history.

          3-Latest Logfile.png

          1 Reply Last reply Reply Quote 0
          • Proschi3Dundefined
            Proschi3D
            last edited by

            ok i do it again with verbose

            Love my Duet 3 Mini.
            https://www.instagram.com/proschi3d
            https://youtube.com/@proschi3d
            https://www.proschi3d.de

            stuartofmtundefined 2 Replies Last reply Reply Quote 0
            • stuartofmtundefined
              stuartofmt @Proschi3D
              last edited by

              @Proschi78 said in DuetLapse3:

              ok i do it again with verbose

              Version 5.0.3 has been posted to github. It has a few changes from the version I gave you access to. Mostly these are cosmetic but its best to be on this version.

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

                @osterac

                Wanted to bring to your attention Verson 5.0.x.
                I got side-tracked with some significant code re-arangement ( same functionality). The ability to set max video length is formally included.

                Please let me know what you think.

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

                  @Proschi78 said in DuetLapse3:

                  ok i do it again with verbose

                  Is everything running correctly now ?

                  Proschi3Dundefined 1 Reply Last reply Reply Quote 0
                  • Proschi3Dundefined
                    Proschi3D @stuartofmt
                    last edited by

                    @stuartofmt I couldn't try it anymore. But the new version didn't start at all

                    Love my Duet 3 Mini.
                    https://www.instagram.com/proschi3d
                    https://youtube.com/@proschi3d
                    https://www.proschi3d.de

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

                      @Proschi78 said in DuetLapse3:

                      @stuartofmt I couldn't try it anymore. But the new version didn't start at all

                      A logfile with -verbose will reveal all.

                      1 Reply Last reply Reply Quote 0
                      • osteracundefined
                        osterac @stuartofmt
                        last edited by osterac

                        @stuartofmt said in DuetLapse3:

                        @osterac

                        Wanted to bring to your attention Verson 5.0.x.
                        I got side-tracked with some significant code re-arangement ( same functionality). The ability to set max video length is formally included.

                        Please let me know what you think.

                        @stuartofmt Thanks, I'll take a look!

                        1 Reply Last reply Reply Quote 0
                        • osteracundefined
                          osterac
                          last edited by

                          It doesn't seem to be making any videos for me. I see that the temporary folder is created during the print but no video. I'll attach a log file.
                          481_1_overhang_test_mini.log.txt

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

                            @osterac

                            Thanks for the logfile. There may be two problems and a "condition".

                            The likely problem.

                            You start Duetlapse in standby state but nothing tells it to go to start state. As a result there is no attempt to capture images hence no video can be created.

                            In the options:

                            2023-01-24 17:40:55,863 - terminate - -standby  =  True
                            

                            The logfile shows DuetLapse entering standby state:

                            2023-01-24 17:40:55,944 - terminate - ++++++ Entering standby state ++++++
                            

                            But there is nothing that takes it out of standby state. In fact, throughout most of the log, DuetLapse is simply looking for a command.

                            In the logfile, towards the end of the print (I'm assuming), there is a command to DuetLapse

                            2023-01-25 16:48:23,135 - gcodeLoop - M117 Command: DuetLapse3.completed
                            

                            Did you intended the gcode to take DuetLapse out of standby mode with:

                            M117 DuetLapse3.start   ; start
                            G4 S10
                            

                            Either , the command is missing from the gcode or DuetLapse did not "see" the command.

                            The condition

                            There are a few instances where there are network issues in the log. Most are sub-second (not uncommon in my experience). It is possible that DuetLapse did not see the start command because it was sent during a network issue. This would be plain bad luck 😞

                            There is a network disconnect that lasts about 3 minutes. On reconnect, DuetLapse goes back to its previous (standby) state :

                            2023-01-25 10:39:05,717 - gcodeLoop - Cannot connect to the printer
                            <snip>
                            2023-01-25 10:42:52,139 - checkforConnection - -----------------------  Reconnected to printer ----------------------
                            <snip>
                            2023-01-25 10:42:57,145 - nextAction - nextAction resuming after reconnect target = standby
                            

                            The same pattern occurs at 11:50

                            The second problem

                            At the end after the command to complete the print job; DuetLapse tries, correctly (for the first time), to get an image and make copies to satisfy the -extratime 2 option.

                            There is an error because this command failed
                            wget --auth-no-challenge -nv -O /home/pi/ftp/files/DuetLapse/octopi/192-168-1-8/481_1_overhang_test_mini/Camera1_00000102.jpeg "http://cam.local:8765/picture/1/current/"
                            i.e. it could not get an image from the camera.

                            I'm concerned about this for two reasons (1) Is the camera working / are the parameters correct and (2) I do not expect to see the image file being requested as number 102

                            I recommend you verify that you can capture images using the following from the command line:

                            wget --auth-no-challenge -nv -O ./test.jpeg "http://cam.local:8765/picture/1/current/"
                            

                            I will take a look and see why the image number is not what I expect. Its possible that I have a bug that somehow prevented attempts to capture images but the code logic does not change based on camera type.

                            2023-01-25 16:48:31,220 - nextAction - Command Exception: wget --auth-no-challenge -nv -O /home/pi/ftp/files/DuetLapse/octopi/192-168-1-8/481_1_overhang_test_mini/Camera1_00000102.jpeg "http://cam.local:8765/picture/1/current/"  > /dev/null 2>&1
                            2023-01-25 16:48:31,221 - nextAction - Command 'wget --auth-no-challenge -nv -O /home/pi/ftp/files/DuetLapse/octopi/192-168-1-8/481_1_overhang_test_mini/Camera1_00000102.jpeg "http://cam.local:8765/picture/1/current/"  > /dev/null 2>&1' returned non-zero exit status 1.
                            2023-01-25 16:48:31,222 - nextAction - !!!!!  There was a problem capturing an image !!!!!
                            2023-01-25 16:48:31,222 - nextAction - Copying last frame to extend video by 2 seconds
                            
                            osteracundefined 1 Reply Last reply Reply Quote 0
                            • osteracundefined
                              osterac @stuartofmt
                              last edited by osterac

                              @stuartofmt
                              I executed the command that you listed

                              wget --auth-no-challenge -nv -O ./test.jpeg "http://cam.local:8765/picture/1/current/"
                              

                              and an image file was created. I downloaded it and it was what I expected. I updated my router firmware and changed some settings, I also added a -port modifier to duetlapse, but I still get the wget --auth-no-challenge error and no images are captured. Here's another log file if it helps.
                              604_3_Fidgit3_resize.log.txt

                              PS I also did an apt full-upgrade on my duetlapse pi and my camera server and updated to the latest dev version of motioneye.

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

                                @osterac said in DuetLapse3:

                                wget --auth-no-challenge -nv -O

                                The earler problem was clearly the lack of start command. Now however, its clearly the wget that is unhappy.

                                I'm not sure why because the command is being reported as syntactically identical when executed by DuetLapse3 as the one you proved to be working at the command line.

                                Try this version of DuetLapse3. All I have done is use a different form of the wget command ( -v instead of -nv) when -verbose is set.
                                Hopefully this will generate better output from wget as to why it is unhappy.

                                DuetLapse3.py

                                osteracundefined 1 Reply Last reply Reply Quote 0
                                • osteracundefined
                                  osterac @stuartofmt
                                  last edited by

                                  @stuartofmt
                                  ran a print with the new script. log:
                                  604_1_xyzCalibration_cube.log.txt

                                  stuartofmtundefined 2 Replies Last reply Reply Quote 0
                                  • stuartofmtundefined
                                    stuartofmt @osterac
                                    last edited by stuartofmt

                                    @osterac

                                    Unfortunately the error output from wget only had marginally more information 😞 Not enough to suggest WHY it is unhappy. This may be because Python is calling wget and not all the error response is getting through.

                                    I've added another line of code to, maybe, capture some more info.

                                    [DuetLapse3.py]

                                    I googled a bit and it MAY be because the url has a trailing slash. With the newer script, can you try with:

                                    http://cam.local:8765/picture/1/current
                                    

                                    To save a lot of time during testing - you do not need to be printing. Just set something like:

                                    -seconds 15
                                    -dontwait
                                    

                                    and remove -standby

                                    This way DuetLapse will start capturing images every N seconds even though there is no print job running. Let it run until you see (or not) an image capture error in the console, then use the UI to download the current logfile. The logfile will be startup.log since there is no actual print job.

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

                                      @osterac
                                      If trying above does not give any luck, it could be a Motioneye nuance. Seems there MAY be an issue getting still images if there is no streaming enabled.
                                      If this is the case - you could try setting -camera1 stream and weburl1 to the streaming URL (as opposed to the still picture url). In any case, this may be a better solution as you would not have Motioneye getting still images at one frequency and DuetLapse doing so at another frequency.

                                      osteracundefined 1 Reply Last reply Reply Quote 0
                                      • osteracundefined
                                        osterac @stuartofmt
                                        last edited by

                                        @stuartofmt
                                        I did a print with those settings. It managed to capture the jpg files, but it's 30 minutes after the print and it is still writing to the log file and hasn't deleted the images or made a video yet. Log file attached.
                                        598_1_printer_square_calibration.log.txt

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

                                          @osterac said in DuetLapse3:

                                          @stuartofmt
                                          I did a print with those settings. It managed to capture the jpg files, but it's 30 minutes after the print and it is still writing to the log file and hasn't deleted the images or made a video yet.

                                          It is working just fine. 88 images captured according to the log, every 20 seconds --> almost exactly 30 minutes.

                                          It will continue to do so until one of two things happens:

                                          1. you start a print job that runs to completion
                                          2. you tell it to stop.

                                          One way to tell it to stop:
                                          Use the UI.
                                          https://github.com/stuartofmt/DuetLapse3/blob/main/Documents/User Interface.md

                                          Controls --> Terminate --> Graceful (this will generate a video)

                                          Looks like you are good to go !

                                          BTW. I installed motioneye and found that wget is definitely not happy about something. Unfortunately it only returns a generic error code. I also noticed that the still capture from motioneye did not seem to work from a web browser.

                                          Using the streaming interface seems the way to go.

                                          osteracundefined 1 Reply Last reply Reply Quote 0
                                          • osteracundefined
                                            osterac @stuartofmt
                                            last edited by osterac

                                            @stuartofmt
                                            I did a graceful terminate and waited a couple of hours but it is still updating the log file. Web UI says this:

                                            DuetLapse3 Version 5.0.3
                                            Connected to printer at: 192.168.1.8:8086
                                            
                                            Process Id: 598
                                            Last Update: Tuesday - 15:32
                                            Capture Status:= Completed
                                            DuetLapse3 State:= completed
                                            Duet Status:= processing
                                            Images Captured:= 88
                                            Current Layer:= 33
                                            
                                            

                                            Updated log file
                                            598_1_printer_square_calibration.log.txt

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