Late to the thread, but very sorry to hear. His work (and the time spent documenting his work) was greatly appreciated.
Posts made by JohnOCFII
-
RE: Deckingman's passing
-
RE: DuetLapse3
@stuartofmt Glad to see work continue on this very useful tool!
-
RE: RepPanel - A DIY alternative to the PanelDue with WiFi support
@seeul8er I use the RepPanel regularly. I think my only issues are related to the potential memory issues -- things get flaky occasionally -- sometimes screen presses are not recognized, and I'll have to touch an area repeatedly. Sometimes it works first time in the same area.
-
RE: Spurious (?) "Error: G0/G1: insufficient axes homed" message?
@fcwilt Thanks for the example of posting that way. I use that for small segments of code, but hadn't realized it was a good way to post complete files.
As far as a Z-endstop -- I suppose it is possible. I haven't seen the need. As I mentioned above, the printer is working fine, just seem to be getting a message that does not correspond to the printer's behavior.
As far as the probe, you can read all the details on the Github page: https://github.com/nionio6915/Euclid_Probe/blob/main/README.md#probe-calibration
But in summary, a simple switch is magnetically attached to the carriage. The deploy and retract files handle the logic to determine if the probe is attached or not. The
deploy
macro will travel to the dock and "pick up" the probe. Theretract
macro will return the probe to the dock.John
-
RE: Spurious (?) "Error: G0/G1: insufficient axes homed" message?
@sinned6915 Greetings -
I added your if statement to my
homez.g
file but it seems that current RRF 3.3 already checks for an attempt to home Z before homing X and Y, and responds with this message in the console:Error: Must home axes [XY] before homing [Z]
I added a final
M64 S1 H1
tohomez.g
without change to the spurious message. I've since removed that line to continue troubleshooting.I've moved the M564 to be before all G1 movements in both
deployprobe.g
andretractprobe.g
as suggested, with theM564 H1 S1
after the G1 movements in each file.Not sure about item 4.
I've checked my latest files for tabs. I use VSCode which switches tabs to spaces be default, but perhaps if I edited via DWC for changes, some were introduced there. No change in bahavior.
I did notice one interesting thing. After I complete homing X, Y, and Z, and get the error message, if I home Z a second time, I don't receive the "Error: G0/G1: insufficient axes homed" message" after the second execution of Home Z.
@fcwilt I'm uploading files using the icon for "Upload files." If there is a better or different way to do that, please point me at those instructions. I've added the remaining homing files, as well as the updated files after the changes discussed above.
Thanks,
John
homex.g homey.g homeall.g config.g homez.g deployprobe.g retractprobe.g
-
Spurious (?) "Error: G0/G1: insufficient axes homed" message?
I'm running RRF 3.3 on Duet2Ethernet with Duex5. Printer is a Railcore 300ZL. I'm commissioning a Euclid dockable switch probe to replace a BLTouch. I've got my
homez.g
and mydeployprobe.g
and myretractprobe.g
working well (other than fine tuning speeds).After the homing completes, the console displays the message:
Error: G0/G1: insufficient axes homed
but DWC reports all 3 axes are homed, and I can use DWC to move each axis normally.Is this just a bogus message, or am I doing something wrong?
I've attached my
config.g
,homez.g
,deployprobe.g
andretractprobe.g
files (please ignore extraneous echo lines).Thanks for any input!
John
-
RE: DuetLapse3
@war4peace The file
startDuetLapse3.py
can be found along with the rest of the DuetLapse files here: https://github.com/stuartofmt/DuetLapse3It is fairly straightforward to replicate if needed.
John
-
RE: DuetLapse3
@stuartofmt said in DuetLapse3:
What version of DuetLapse3 are you on ? Sorry that you had to rebuild ffmpeg.
I'm running 3.4.2. I was on 3.4.1 before that.
John
-
RE: DuetLapse3
Greetings -- My last couple of prints, I noticed that I wasn't getting my "extratime". The log told me that my version of ffmpeg didn't support it, even though it was the version I built locally on my Pi last December.
pi@octocore:/opt/DuetLapse/octocore/railcore-localdomain $ more 15379_21-05-17T16ΛΈ40ΛΈ44.log 2021-05-17 16:40:45,112 - 2021-05-17 16:40:45,114 - ################### Options selected for this run ##################### 2021-05-17 16:40:45,114 - #Environment Settings: 2021-05-17 16:40:45,115 - # printer = railcore.localdomain 2021-05-17 16:40:45,116 - # basedir = /opt/DuetLapse 2021-05-17 16:40:45,116 - # poll = 5 2021-05-17 16:40:45,117 - # logtype = both 2021-05-17 16:40:45,118 - # verbose = False 2021-05-17 16:40:45,118 - # os = Linux 2021-05-17 16:40:45,119 - # host = 0.0.0.0 2021-05-17 16:40:45,119 - # port = 0 2021-05-17 16:40:45,120 - # pid = 15379 2021-05-17 16:40:45,120 - # keeplogs = False 2021-05-17 16:40:45,121 - # novideo = False 2021-05-17 16:40:45,122 - # deletepics = False 2021-05-17 16:40:45,122 - # maxffmpeg = 2 2021-05-17 16:40:45,123 - # keepfiles = False 2021-05-17 16:40:45,123 - #Execution Setings: 2021-05-17 16:40:45,124 - # dontwait = False 2021-05-17 16:40:45,125 - # seconds = 0 2021-05-17 16:40:45,126 - # detect = layer 2021-05-17 16:40:45,127 - # pause = no 2021-05-17 16:40:45,128 - # standby = False 2021-05-17 16:40:45,128 - #Camera1 Settings: 2021-05-17 16:40:45,129 - # camera1 = web 2021-05-17 16:40:45,130 - # weburl1 = http://octocore.localdomain:8081/snapshot 2021-05-17 16:40:45,131 - # Video Settings: 2021-05-17 16:40:45,132 - # extratime = 4.0 2021-05-17 16:40:45,133 - ################################################################### 2021-05-17 16:40:45,133 - 2021-05-17 16:40:45,432 - 2021-05-17 16:40:45,433 - ************************************************************************************ 2021-05-17 16:40:45,434 - Warning: This version of ffmpeg does not support -extratime 2021-05-17 16:40:45,434 - -extratime has been set to 0 2021-05-17 16:40:45,435 - ************************************************************************************ 2021-05-17 16:40:45,758 - 2021-05-17 16:40:45,759 - ############################################################### 2021-05-17 16:40:45,760 - Connected to printer at railcore.localdomain using Duet version 3.3RC2 and API access using rr_model 2021-05-17 16:40:45,761 - ############################################################### 2021-05-17 16:40:45,761 - 2021-05-17 16:40:45,762 - 2021-05-17 16:40:45,763 - ########################################################## 2021-05-17 16:40:45,764 - Will start capturing images on first layer change 2021-05-17 16:40:45,764 - ########################################################## 2021-05-17 16:40:45,765 - 2021-05-17 16:40:45,766 - 2021-05-17 16:40:45,767 - ########################################################## 2021-05-17 16:40:45,767 - Video will be created when printing ends. 2021-05-17 16:40:45,768 - On Linux - press Ctrl+C one time to stop capture and create video. 2021-05-17 16:40:45,769 - On Windows - Ctrl+C will NOT create a video. You must use the http listener 2021-05-17 16:40:45,769 - ########################################################## 2021-05-17 16:40:45,770 -
even though the filter showing tpad was there:
pi@octocore:/opt/DuetLapse $ ffmpeg -filters | grep tpad ffmpeg version git-2020-12-24-29cef1b Copyright (c) 2000-2020 the FFmpeg developers built with gcc 8 (Raspbian 8.3.0-6+rpi1) configuration: --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib --extra-libs='-lpthread -lm -latomic' --arch=armel --enable-gmp --enable-gpl --enable-libass --enable-libdrm --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libssh --enable-libvorbis --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-mmal --enable-nonfree --enable-omx --enable-omx-rpi --enable-version3 --target-os=linux --enable-pthreads --enable-openssl --enable-hardcoded-tables libavutil 56. 62.100 / 56. 62.100 libavcodec 58.115.102 / 58.115.102 libavformat 58. 65.100 / 58. 65.100 libavdevice 58. 11.103 / 58. 11.103 libavfilter 7. 94.100 / 7. 94.100 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100 libpostproc 55. 8.100 / 55. 8.100 ... tpad V->V Temporarily pad video frames. pi@octocore:/opt/DuetLapse $
I rebuilt ffmpeg again following the instructions in the GitHub pages, but other than seeing that I do have the new version, the log still shows that "Warning: This version of ffmpeg does not support -extratime"
The extra time feature was working fine a couple of months ago.
Any ideas, or places to check?
Thanks,
John
-
RE: RepPanel - A DIY alternative to the PanelDue with WiFi support
@seeul8er Great to see an updated release!
Is there a concern of panel burn-in if the display is RepPanel is left energized for 24 hours? Would a timed screen blank (awakened with touch) be a useful addition?
Also -- sometimes touch input is sensed immediately -- other times I have to press an item four or five times for it to register. Any ideas on what would cause that, or ways to troubleshoot?
Thanks!
John
-
RE: RepPanel - A DIY alternative to the PanelDue with WiFi support
I finally finished and published my RepPanel case. I used this as a good time to learn a bit about FreeCAD. The FreeCAD design file is included in the Thing.
-
RE: DuetLapse3
@stuartofmt Greetings!
I added -verbose and ran from the command line with no issues. So -- I added verbose into the systemctl script, and it ALSO ran without issue. Then I removed the -verbose tag, and things continued to work.
I blame it on the Moderna vaccine I received the other day.
I have no idea what my issue was... Sorry if I caused you to rack your brain.
John
pi@octocore:/opt/DuetLapse $ pi@octocore:/opt/DuetLapse $ python3 /opt/DuetLapse/startDuetLapse3.py -port 8082 -args="-duet railcore.localdomain -camera1 web -weburl1 http://octocore.localdomain:8081/snapshot -detect layer -extratime 4 -verbose" ***** Started http listener ***** Cleaning up phase: startup railcore.localdomain railcore.localdomain ################### Options selected for this run ##################### railcore.localdomain #Environment Settings: railcore.localdomain # printer = railcore.localdomain railcore.localdomain # basedir = /opt/DuetLapse railcore.localdomain # poll = 5 railcore.localdomain # logtype = both railcore.localdomain # verbose = True railcore.localdomain # os = Linux railcore.localdomain # host = 0.0.0.0 railcore.localdomain # port = 0 railcore.localdomain # pid = 5350 railcore.localdomain # keeplogs = False railcore.localdomain # novideo = False railcore.localdomain # deletepics = False railcore.localdomain # maxffmpeg = 2 railcore.localdomain #Execution Setings: railcore.localdomain # dontwait = False railcore.localdomain # seconds = 0 railcore.localdomain # detect = layer railcore.localdomain # pause = no railcore.localdomain # standby = False railcore.localdomain #Camera1 Settings: railcore.localdomain # camera1 = web railcore.localdomain # weburl1 = http://octocore.localdomain:8081/snapshot railcore.localdomain # Video Settings: railcore.localdomain # extratime = 4.0 railcore.localdomain ################################################################### railcore.localdomain ffmpeg version git-2020-12-24-29cef1b Copyright (c) 2000-2020 the FFmpeg developers built with gcc 8 (Raspbian 8.3.0-6+rpi1) configuration: --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib --extra-libs='-lpthread -lm -latomic' --arch=armel --enable-gmp --enable-gpl --enable-libass --enable-libdrm --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libssh --enable-libvorbis --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-mmal --enable-nonfree --enable-omx --enable-omx-rpi --enable-version3 --target-os=linux --enable-pthreads --enable-openssl --enable-hardcoded-tables libavutil 56. 62.100 / 56. 62.100 libavcodec 58.115.102 / 58.115.102 libavformat 58. 65.100 / 58. 65.100 libavdevice 58. 11.103 / 58. 11.103 libavfilter 7. 94.100 / 7. 94.100 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100 libpostproc 55. 8.100 / 55. 8.100 ... tpad V->V Temporarily pad video frames. railcore.localdomain railcore.localdomain ############################################################### railcore.localdomain Connected to printer at railcore.localdomain using Duet version 3.2.2 and API access using rr_model railcore.localdomain ############################################################### railcore.localdomain railcore.localdomain railcore.localdomain ########################################################## railcore.localdomain Will start capturing images on first layer change railcore.localdomain ########################################################## railcore.localdomain railcore.localdomain railcore.localdomain ########################################################## railcore.localdomain Video will be created when printing ends. railcore.localdomain On Linux - press Ctrl+C one time to stop capture and create video. railcore.localdomain On Windows - Ctrl+C will NOT create a video. You must use the http listener railcore.localdomain ########################################################## railcore.localdomain railcore.localdomain ++++++ Entering start state ++++++ railcore.localdomain ++++++ Entering start state ++++++ railcore.localdomain ****** Duet status changed to: idle ***** railcore.localdomain ****** Print State changed to: Capturing ***** railcore.localdomain !!!!!! Stopped by SIGINT or CTL+C - Post Processing !!!!!! railcore.localdomain ++++++ Entering terminate state ++++++ railcore.localdomain Working directory created at: /opt/DuetLapse/octocore/railcore-localdomain/5350 2021-03-28 15:02:21 URL:http://octocore.localdomain:8081/snapshot [128008/128008] -> "/opt/DuetLapse/octocore/railcore-localdomain/5350/Camera1_00000001.jpeg" [1] railcore.localdomain Camera1: Cannot create video with only 1 frames Cleaning up phase: terminate railcore.localdomain Program Terminated ^C!!!!!! Stopped by SIGINT or CTL+C !!!!!! Killed pi@octocore:/opt/DuetLapse $
-
RE: DuetLapse3
@stuartofmt Thanks for the review.
Checking status now, I get the following message:
pi@octocore:/etc/systemd/system $ sudo systemctl status startDuetLapse3.service β startDuetLapse3.service - DuetLapse3 timelapse launch script Loaded: loaded (/etc/systemd/system/startDuetLapse3.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2021-03-25 19:51:17 CDT; 13h ago Main PID: 471 (python3) Tasks: 2 (limit: 2062) CGroup: /system.slice/startDuetLapse3.service ββ471 /usr/bin/python3 /opt/DuetLapse/startDuetLapse3.py -port 8082 Mar 26 04:10:03 octocore python3[471]: method() Mar 26 04:10:03 octocore python3[471]: File "/opt/DuetLapse/startDuetLapse3.py", line 198, in do_GET Mar 26 04:10:03 octocore python3[471]: split_referer = referer.split(":", 1) Mar 26 04:10:03 octocore python3[471]: AttributeError: 'NoneType' object has no attribute 'split' Mar 26 04:10:03 octocore python3[471]: ---------------------------------------- Mar 26 04:10:03 octocore python3[471]: Exception happened during processing of request from ('192.168.88.1', 40405) Mar 26 04:10:03 octocore python3[471]: Traceback (most recent call last): Mar 26 04:10:03 octocore python3[471]: File "/usr/lib/python3.7/socketserver.py", line 650, in process_request_thread Mar 26 04:10:03 octocore python3[471]: self.finish_request(request, client_address) Mar 26 09:38:44 octocore systemd[1]: startDuetLapse3.service: Current command vanished from the unit file, execution of the command list won't be resumed. pi@octocore:/etc/systemd/system $
Looking at that line 198 in startDuetLapse3.py it looks like it has something to do with parsing the URL.
Here is the ExecStart line from the service file:
ExecStart=python3 /opt/DuetLapse/startDuetLapse3.py -port 8082 -args="-duet railcore.localdomain -camera1 web -weburl1 http://octocore.localdomain:8081/snapshot -detect layer -extratime 4"
Thoughts?
John
-
RE: DuetLapse3
@stuartofmt I'd like some guidance before I head off in the wrong direction.
I've set up (but not yet started):
/etc/systemd/system/StartDuetLapse3.service
which calls:
/opt/DuetLapse/StartDuetLapse3.py
which calls:
/opt/DuetLapse/DuetLapse3.py
Now -- when I've been testing this over the last few days manually (without the systemd service, and without using StartDuetLapse3) I've used the following command line:
python3 /opt/DuetLapse/DuetLapse3.py -duet railcore.localdomain -camera1 web -weburl1 http://octocore.localdomain:8081/snapshot -detect layer -extratime 4
So switching to this service-initiated launch, do I put all the arguments in the systemd service file like this?
ExecStart=python3 /opt/DuetLapse/StartDuetLapse3.py -port 8082 -args="-duet railcore.localdomain -camera1 web -weburl1 http://octocore.localdomain:8081/snapshot -detect layer -extratime 4"
Thanks for your review!
John
-
RE: DuetLapse3
@GoremanX said in DuetLapse3:
Still figuring stuff out for my setup, but this is getting fun
Really raising the bar with music... I'll have to see what I can find!
-
RE: DuetLapse3
I'd guess that running DWC on two other devices in addition to DuetLapse might have had the Duet2 board confused...
Today, after a fresh start on the printer and after quitting DWC after the first layer completed, I didn't see any disconnect errors.
Here's a nice example DuetLapse3 timelapse. This was a 3 hour 20 minute print in a 53 second timelapse.
-
RE: DuetLapse3
@stuartofmt It is great to see how your mind works on this stuff!
FYI -- I did disable WiFi, and switch to wired Ethernet. I am no longer seeing connectivity issues, but Duetlapse is still seeing "something" network related. I will gladly 100% blame this on the weak networking code in the firmware on the Duet2 -- whatever library is used in this hardware (not from dc42 -- but whatever the vendor provides) seems to act as if it hasn't seen changes to networking code since the 1990's.
This is what I see a few times an hour:
railcore.localdomain !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! railcore.localdomain There was a network failure: HTTPConnectionPool(host='railcore.localdomain', port=80): Max retries exceeded with url: /rr_model?key=state.status (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x764ad170>: Failed to establish a new connection: [Errno 111] Connection refused')) railcore.localdomain !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! railcore.localdomain
or
railcore.localdomain !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! railcore.localdomain There was a network failure: HTTPConnectionPool(host='railcore.localdomain', port=80): Max retries exceeded with url: /rr_model?key=state.status (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7664cdf0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')) railcore.localdomain !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! railcore.localdomain railcore.localdomain getDuetStatus failed to get data. Code: 9999 Reason: Connection Error railcore.localdomain Printer is disconnected - Trying to reconnect railcore.localdomain ****** Duet status changed to: processing ***** railcore.localdomain ****** Print State changed to: Capturing *****
As you suggested, DuetLapse seems to work past it without issue.
John
-
RE: DuetLapse3
@stuartofmt said in DuetLapse3:
So it looks like the print job was named /Calibration/HoseSideRingTest-v3_0.2mm_PETG_RC Does this seem right given your situation ? Code-wise, the print job name is appended to the process id and a directory created accordingly.
This is correct.
Are the directories cleaned up when you start a new (only one running) instance of DuetLapse3?
Yes -- I think what confused me is that at the time I created that tree, the directory and JPEGs were still around -- I was thinking they got cleaned up at the end of the current job, and not the start of the next job.
I actually prefer your current design.
Also - I am really glad of your current design for another reason -- I love the log file! I ran a 7.5 hour print yesterday evening, and my Pi lost network connectivity 5 times during the print. All the successfully captured images are still available for me to re-run through FFMPEG! Separately I need to try to use the wired Ethernet instead of WiFi to see if the WiFi on this particular Pi is the issue.