-
Notifications
You must be signed in to change notification settings - Fork 99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feedback for V0.4.0rc1 #475
Comments
FYI, issue #477, which was preventing OctoPrint from shutting down, has been fixed. This issue doesn't seem to affect the shutdown commands in windows, or when using Rasbian. However, It's hard for me to understand how shutdown was working at all in any Linux build. The issue was caused by a thread that did not specify daemon=true, which was causing the OS to attempt to join to a thread which would never close. I will push this out soon when RC2 drops. I'm hoping to get a bit more feedback on this RC, specifically relating to Python3 (if possible), and regarding the new versioneer integration, including the custom version comparisons that I implemented. |
Easy to install (octoprint 1.4.0) due to incompatibility with octolapse 0.3.4. A much easier interface. Time lapse worked beautifully first time. Only limiting factor is my hardware Raspcamera V2 and lack of zoom. Need to look into how to improve raspcam settings now. |
Octoprint 1.4.0 - no issues installing. Prusa MK3S, RPi camera. I will be playing with this today. |
Several days of printing. Sometimes I get in a strange situation where the printer stays at 99% but the printer is done. I'm not sure what to look at on that. Other than that it's been working well. |
@lbussy, thanks for the info. I haven't experienced the 99% complete think yet, but I will keep my eyes peeled. If I had to guess, I would suspect an octoprint issue of some kind. However, if it is Octolapse, i definitely want to fix it. Tha k you for your feedback!!! |
I've got about a bazillion things going on so it's tough to zero in on a minor issue. I'll try to pay attention next tim it happens. |
@lbussy, you and me both! Thanks for keeping your eyes peeled! I will too. |
No issues for me. Working perfectly. |
Hi again @FormerLurker I successfully upgraded from V0.4.0rc1.dev5 using the GUI. Still running OctoPrint: 1.4.0 on Python 2 on a RPi 3B+ (PoE HAT). Will be printing tomorrow and this week and will let you know how things are going. |
@FormerLurker, I see the rc version has Python 3 compatibility. Just a reminder that you will also want to update the Plugin Repository (plugins.octoprint.org) with the new compatibility information. Additional information can be found here. |
@jneilliii, Good call. I didn't notice that it also needed to be stated in tye plugin repo!! You probably saved me some time when I release on master. |
Semantic but your URL you reference in the beginning of this thread is missing the .zip extension otherwise it's not found.
https://github.com/FormerLurker/Octolapse/archive/v0.4.0rc1.zip |
@ciordia9, good catch! Fixed. |
Updated due to Python 3 migration and I wasn't smart to check incompatibilities. Testing this new version and I get this set of errors on the build: Start End Pastebin: https://paste.centos.org/view/a136290e |
@ciordia9, Hmmm.. Looks like the linker can't find Python.h. That is definitely a problem. Would you mind doing a search on your PI to see if you can find Python.h anywhere? This is exactly the kind of issue I was hoping for people to find, THANK YOU for reporting it. I will create an issue for this later (probably after work) and will post a link. |
(oprint) pi@octopi:~ $ find . -name 'Python.h' (oprint) pi@octopi:~ $ locate Python.h Happy to help, now I head to work. :D |
@ciordia9 you sort of need Python 3 in order to run Python 3 scripts. :) |
@lbussy I am running python 3. /usr/bin/python3 -> python3.7 virtualenv --python=/usr/bin/python3 oprint (oprint) pi@octopi:~ $ python --version |
Hmmm.. maybe it needs to be the dev version?? I will try a fresh install from the latest octopi using the official upgrade guide. Im not sure how octoprint itself could have installed without Python.h, but it is possible if no extensions are being compiled. |
I just followed the migration guide from 2 to 3: https://docs.octoprint.org/en/master/plugins/python3_migration.html
|
I need to wait for a print to stop but I installed python3-dev:
I'll report back in a bit on whether that solves it. |
That solved it. So, to install, if you migrate you need to make sure to install python3-dev. Guess the rest of the plugins I use were not being built--which is odd due to the number I use. I'll keep testing this path and let you know if I see more issues. |
Thanks for verifying. It would have taken me a few days! Also, fyi, octolapse is special in that it has to compile a python extension. Plugins that don't need to do that probably would install fine. I could work around this by packaging the extension, but it will take some effort to adjust the code. |
I like that you're special. 😀 So testing!
So good on first pass here. I'll do more in the coming days and let you know if it goes off the track somehow. Thanks as always for your work here. 👍 |
@ciordia9, thank you so much for your feedback! Can you also check your printer profile and see if your make/model is listed? If you haven't tried it yet, you might want to also switch your slicer type to 'automatic' while you're in there. Read the help regarding automatic slicer settings, some minor adjustments need to be made for Cura, and there is one suggested change for Slic3r variants (Simplify 3d works out of the box). |
@FormerLurker I've been a 0.4 user for quite a while, just not with python3.
Anything else you want noted or tested? |
I found something new in the rc1.. I somehow can't save the Main Settings it always drops some of Octoprints Info Popups with "Unable to save the main settings. Status: error. Error: INTERNAL SERVER ERROR" up.. But there is absolutly nothing in any Log File! And i already set everything on Verbose already... And Octoprint crashes every time i try to load a Gcode file while it's postprocessing the Data... Again no Errors inside the Log file and according to the Octolapse File he processed the gcode flawlessy right before Octoprint crashed. I'm using the latest Stable Octopi Image with Octoprint 1.4.0 just to test what would happen if you actually put Octolapse 0.4 in the Stable Branch right now. So it's still using Python 2.6 while Octoprint also installed Python 3 with the 0.14 Update on the Pi. But since i did'nt found any info in your release notes about changing the behaviour on Octoprint i thought i let everything like it is. Also the Build Plate Sizes for the Creality Ender 3 Profile on the Server are wrong, its 235x235x250 |
@Keichide, good catch regarding the main settings! Not sure how I missed that. I added the github commit version to create a direct link to the github commit, but forgot to update that routine. I guess I don't change those settings often enough :) I also found an error that was preventing the client versions (octolapse + git version) from being correctly saved after the main settings are updated. I fixed that too. I went ahead and pushed an update, which you can install from this plugin manager with this URL: https://github.com/FormerLurker/Octolapse/archive/163be9f62949d182659de8c774be2817a3444040.zip Let me know if that fixes your main settings save issue.
Can you elaborate a bit here? Do you mean you are trying to upload gcode while postprocessing is happening? Also, when you say OctoPrint crashes, you mean the entire server locks up and needs to be rebooted? I just need some idea how to recreate this.
Are you questioning whether or not Octolapse will run on python 3? It should. I will be doing more testing on this before release. I just got another microSD so I can run a python3 and a python 2 version.
So, I noticed that there were differences between what the MFG reports and what some users are using for the print volume. Is there ANY danger at all in setting it to 235x235? If not, why does Creality report 220x220? If 235x235 is safe, I'll use that instead. If/when I push the settings updates, eventually you will be notified of an update (7 days or so) IF you did not check the customize profile box. Otherwise you can uncheck that box and click the 'check for updates' button within the octolapse settings after I push the changes. |
Have you tried the 'snap to print' stabilization for vase mode? If you use it, make sure you set your camera delay to 0MS in the camera profile, and I recommend using 30FPS for your camera stream (lower and the delay is increased waiting for the next frame, higher and FireFox seems to crash the mjpegstream for some reason). You may still get a seam, but I don't get any holes when I try it. I'm sure it's quite model/printer dependent. Vase mode is the most difficult thing for Octolapse to handle. If you want to try upgrading to python 3, that would be excellent. You do need to install python-dev, however, since the Python.h files weren't included in the latest octopi release for some reason. I will have to post an issue about that, else users will have to install that manually. |
Yes, that fixed it.
Strangely it seems that just Octoprint Crashes and not the whole Pi, also Python is'nt running anymore when i log into ssh, so it's probaly Python 2 related.. Anyway.. I think it has something todo with the Vase Mode in Cura, because i just printed an XYZ Cube just fine and eben Octolapsed processed the gcode without any problems.. So, it's probaly related that i did'nt set the Cura into the "Surface" mode and let the setting on "Normal" there.. But still.. It's a bit extrem that a single option in the Slicer crashes the whole Octoprint instance.
No, i was just a bit confused because all the people here, set it already on Python 3.
Yeah, totally safe.. In every single tutorial Video (or website) it is mentioned that you set the Build Plate Size for an Ender 3 and Ender 3 Pro to 235x235 and i think even the Ender 3 v2 which is coming out in June will have the same size. Just take a look on Amazon what size the Plate has.. The Ender 3 can use every mm of it and even has room for an bigger Heatbed. |
Can you post your vase mode gcode? It is entirely possible that python is crashing due to my gcode processor extension (they are tricky to get right). I will run it through the debugger and will see if it crashes for me too. Also, I will adjust the ender 3 build plate size appropriately, and will let you know when that is finished. |
Sure, here it is. |
OH! Snap-to-print seems to be the culprit here.. I just used the same file just with Surface mode enabled (and changed the first layer Height also to 0.16mm) and changed the Trigger in Octolapse back to "Smart - High Quality" and it was working and i got to the Smart Preview Window and could start the Print.. (Which i of course did'nt let run because i wanted to actually test the Vase Mode Setting in Octolapse) |
@Keichide, excellent! That should help me debug, thanks! |
FYI, I just pushed the new ender 3 profile. Uncheck the 'custom' checkbox at the top, and click 'Update Profiles' near the octolapse main settings. You should then be prompted to update your profiles. |
Thanks, but it's still the same Profile for me... Tryed it 4 Times now, with no sucess. |
@Keichide, try the profile update again, I forgot to bump the version numbers. |
Also, @Keichide, I created issue #495 to deal with the python crash problem. That could get a bit hairy, so let's continue the discussion over there. Can you export your settings.json (octolapse main settings->export settings) and post them? I noticed you are not using automatic settings extraction, so I don't have your exact cura settings, which seem to be necessary to replicate the issue. Or, you could enable automatic slicer settings extraction and then upload the re-sliced gcode. See this guide for enabling that, and please respond on the other thread. Thanks! |
Another thing came up.. I just tried to add a Watermark into my Videos, and it just said "Failed" without any Info why for most of my Images with a Transperany Layer in the Background. I think you should add a bit more Info there. Also they are not appering in the Preview Image and i really would like to have a way to position them somehow, just like the Text Overlay. |
https://youtu.be/oeo8APl3-88 Here is an actual Timelapse shot with the Snap-to-print High Quality Profile. Which looks pretty good, but what i was actually expecting from Octolapse in a Vase Mode was a thing that happend at 0:22, where it began to slowly go around the Print. It looks like it's actually Printing it there right now, which is an awesome effect. https://youtu.be/TQnJIeZ35Cs It looks like the Plugin kind of tried the same thing here. But know i at least know the Limitations off having the Webcam on the Z-Axis and have to get another Webcam with an actual Zoom and a 3 or 4 axis Servo Controled holder. So that the whole Object is always inside the Picture. Which remindes me of one limitation Octolapse currently has.. There is no way to add any Dynamic to the Stabilazation, for people like me, that use there Cam on the Z Axsis... Say for Instance Z ist at 10 but the Bed would still be at the same Position, so the Object would slowly move out of the Picture while the Camera is moving up, so Y would have to compensate for that, and also begin to move. Or the Webcam would have to begin Zooming in or Zooming out of the Picture, which would work better with Snap to Print. |
Install on 1.4 with zero issues (prusa mk3s mmu2s, logitech c270 camea on octopi). This change made everything almost plug and play (compared to past one) - no playing with slicer settings, can now modify camera settings directly etc. full success no issues on my side. thank you |
@Keichide, your response got lost in my inbox, and I just noticed it while reviewing @tonysurma's response (thanks for that!). Regarding snap to print, take a look at the 'smooth' option in the trigger profile (there are already downloadable profiles containing this setting). What that option does is force the extruder to stabilize at the point closest to the stabilization point, but only for the very first stabilization. From there, it tries to stabilize to the closest point to the PREVIOUS snapshot point, giving you a nice wandering effect. A similar effect can be achieved by disabling stabilization entirely, though the first snapshot point is not controllable in that case. That being said, I cannot view your videos because they are private. Maybe set them not unlisted but not public? Also, regarding 'dynamic' stabilization, you can specify a list of coordinates in the stabilizations to overcome your issue, though it will need to be done manually for every print with this issue. Not a perfect solution, but I'm not sure how it could be automated without some serious knowledge about the model and some pretty sophisticated algorithm to control the stabilization. When using snap to print, there are fewer choices about where to stabilize (it must be over the print), so that would further complicate any solutions. Regarding changing camera settings, this could be accomplished via the snapshot scripts. It wouldn't be simple, but it may be possible depending on the camera. I will look into the watermark issue. I actually did not add that feature and haven't messed with it much (it's extremely rare that anyone uses it). I'll take a look and see if there are any obvious problems. The text overlay was also a user submission (thanks again @Shadowen!), but I've made extensive modifications to it over the past year(s). Due to all the modifications, I'm much more familiar about how that works. Adding the watermark to the preview may be possible, but since we are currently adding the image in via ffmpeg (not manually constructing the frame via pillow) we are a bit limited in that regard in terms of accuracy. I may have to move the watermarking overlay to the image conversion pre-processing routine that does image format detection and conversion (for DSLRs or uploaded images) , various transformations (flip, mirror, rotate, etc...), and adds the text overlay. It will actually be a pretty big modification to the rendering pipeline, but not too terrible that it couldn't go into the next release (0.4.1) after this. Maybe create a feature request for that? Also, I haven't had time to look at the python crash yet (ug....) but I am REALLY going to try to get that dealt with so I can push out r2. Since it's the worst possible kind of problem (crash) it must be fixed before the next release provided I can reproduce it. |
@tonysurma, thank you for your feedback! I'm so glad you found it mostly plug-and-play. A LOT of emphasis on this release was to improve user friendliness without sacrificing configurability. That is a difficult game to play with apps far less complex than Octolapse, so I'm glad all of the effort is paying off! |
I'll put this in a new issue if you like. I'm just not sure I am using it "properly." When doing a lapse, the point at which the snap is taken seems rather arbitrary WRT the center point of the shape. Some shapes (like a box) would benefit from being able to set a point at which to take the snap. Is this possible with the current capabilities, or am I speaking of a new feature? |
@lbussy, I need a bit more info to answer your question. What trigger profile are you using, and what stabilization profile? For the classic layer trigger, the point at which the snapshot is taken is usually very close to the start of the layer (depending on the extruder requirements). That would make it seem random, though it is not. For the 'Smart' triggers, the points are carefully chosen to minimize artifacts and the travel distance. A lot of thought and experimentation went into the process, and it is pretty complicated. The smart trigger prefers quality to performance unless the 'fast' option is selected, which can cause additional quality issues depending on the model, the placement, and the stabilization settings. In general, the smart trigger will try to start a snapshot while over a prime tower, infill, or an interior perimeter (in that order), and dislikes taking snapshots over exterior perimeters. If it finds multiple points of equal quality (say several over infill), it selects the closest point to the stabilization point. This is a simplified explanation, as there are a lot of technical details. The gcode trigger does allow you full control over where snapshots are taken, both in the 'classic' and 'smart' modes. The main advantage of using the 'smart' gcode trigger is that you get a preview of all of the snapshot and stabilization points. Perhaps this is the feature you are wanting? |
I think so .... you used terms I've seen in there but did not understand until now (or at least I understand a little more.) Let me poke at it and see what I can figure out. You've helped by asking questions,. :) |
Missing dot before "/plugin/" in 3 places. |
Yeah, that happens. Ayway, i put both Videos now on "Unlisted" because if thought it was the same as Private Videos on Youtube.. I think i got the Explanation wrong there. However one of the Two Videos was in "Smooth" mode but the Script did'nt quite get the Positions for it right.
It's more like an impossible Solution this way.. I already tried that. What i was thinking about is more like a Percent based movement, since the Plugin always knows the Coordinates of the Print, so if Z is at say 5% of the total Height, move the Bed 5% more from it's starting position to get the Image back into the Webcam view. It should actually be a simple Implanation since all Octolapse has to do is shift the starting Coordinates every time a little bit more, according to the Total Height of the Print.
Oh yeah.. I totally forget that you always had something buildin for external Scripts |
I was seeing this error in the logs.
Has this already been addressed? |
I think so. You could install from the devel branch and test. There are a few fixes in there. |
I am using a DSLR camera with an external camera script to capture snapshots. So far everything seems to be working great with the auto-import Cura settings and overall rendering. Two questions:
|
1 and 2 have similar answers: Yes. Edit your rendering profile and uncheck enabled, or there is a disabled profile you can import (create new rendering profile and select disabled). This will cause a zip archive of your images to be created. You can also render as normal and enable the archiving option in the rendering profile. There you get the best of both worlds: a rendered video and a zip of the images for download. You can even re render with different settings directly from the archive. You can find the zip by opening up the files and videos dialog from the octolapse tab. Enjoy! |
Perfect! Exactly what I was looking for. Awesome job! |
Please see the release notes here. This includes a list of enhancements, bug fixes, and issues known at the time of release.
All feedback is welcome here! Let me know what you like, what you hate, what works, what is broken, etc.
I would like to verify that nothing obvious is broken with OctoPrint v1.4.0, and if possible Python 3. If anyone adventurous has Python 3 installed and wants to help test I would be most appreciative.
You can install this version of Octolapse using this URL in the OctoPrint plugin manager:
Please read this guide completely before installation.
Thanks!
The text was updated successfully, but these errors were encountered: