DuetLapse3
-
@stuartofmt thanks for your help, i got it working
-
@Proschi78
Its important for other people reading these posts that they benefit from what works. That feedback is very helpful.I can see, from the logfile that the usb camera ( -camera1 usb) was failing AND the stream camera (-camera 2 stream) was failing.
How did you get it working? Did you us the command line that I recommended ? If no - what did you use?
-
@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
-
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 fixesEnjoy and as always, feedback and suggestions are welcome.
-
@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.
-
ok i do it again with verbose
-
@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.
-
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 I couldn't try it anymore. But the new version didn't start at all
-
@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.
-
@stuartofmt said in DuetLapse3:
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!
-
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 -
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
-
@stuartofmt
I executed the command that you listedwget --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.txtPS I also did an apt full-upgrade on my duetlapse pi and my camera server and updated to the latest dev version of motioneye.
-
@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 -
@stuartofmt
ran a print with the new script. log:
604_1_xyzCalibration_cube.log.txt -
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.
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.
-
@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. -
@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