Category: 3D Print

  • Using a DSLR Camera with Octolapse for Stunning 3D Printing Timelapses

    Using a DSLR Camera with Octolapse for Stunning 3D Printing Timelapses

    Recently I bought a used Canon SL1 camera; it’s an old but great camera to use as a webcam or any general-use camera taking. One benefit is that it works with a lot of software using the USB port to capture a live video feed from the camera. When using the USB port it does have a bit of delay between the camera and the live feed, but it isn’t super noticeable in recordings.

    I also discovered it works with Octolapse, a plugin for taking seamless-looking time-lapses of 3D prints. Following a tutorial by the creator of Octolapse (FormerLurker), I started setting up my camera with my Octoprint server.

    The tutorial starts with the initial installation of the main program to interface with the camera. gPhoto. gPhoto supports a wide range of cameras, including my camera, which can File transfer, live view, and capture photos or videos.

    What is gPhoto?

    gPhoto is a set of software applications and libraries for use in digital photography.

    gPhoto Wikipedia

    With the installation, I generally followed the provided steps. Updated any updates that my Ubuntu server needed, updated Octoprint. When installing gPhoto, I had to use the “alternative instructions” since I didn’t run my Octoprint server on a Raspberry Pi, the structure of Linux flavors and different device configurations can make it differentiate the process configuring scripts and general directory locations.

    Next is editing the “sudoers” file. It is similar to the standard setup, but instead of the regular path, I used the provided command to find the install directory where gPhoto was installed. I also used the output inside the line of code I needed to insert into the last line on the file.

    whereis gphoto2
    
    output:
    
    gphoto2: /usr/local/bin/gphoto2

    After that, I can test gPhoto with a snapshot command; surprisingly, it worked! I heard the audible click, and it saved a picture to my server. Once that is set up, the next step is to create a script for the plugin to run in Linux that holds a picture, deletes it from the original SD card, and saves it to where the snapshots need to be stored to later process the whole timelapse video.

    The script included with the tutorial works out of the box for me, thanks to FormerLurker’s documentation.

    After that, I add it to the plugin’s configuration. Which also went well. I continued the guide with “Configuring a DSLR camera,” After which I started a print, and the final result after rendering is below:

    Final result. (Actual quality of the printed cube was terrible due to a lack of tuning at the time)

    One issue after rendering, which I could only fix by uploading it to YouTube, was the encoding and format of the rendered video. VLC media player says its renders at 4K, meaning 4000 pixels across. For some reason, my computer could not play 4K in the regular Windows media player or even my other video players without rendering it at 1/16’s quality. This may be due to the lack of support in my computer’s GPU (Intel Arc A370M Laptop GPU), but I’m unsure. But I can change that in Octolapse’s settings when it renders the final video. The F-stop was also not set correctly, which I can adjust in the camera’s menu.

  • Tuning Acceleration on my 3D Printer

    Tuning Acceleration on my 3D Printer

    Yesterday I got my Printrbot Simple Metal plus running, I had gotten it previously running, but it had significant build issues, mainly with no ease of access of the motherboard, when I designed the adapter for the SKR 1.4 motherboard to fit into the old Printrbot motherboard slot, I had no way of accessing the SD card or the USB port without taking it out of the 3D printer. This time, I had a soldering iron, terminal crimps, extra wires, and most importantly, lots and lots of Zip Ties.

    Once built, I could get it up and running with Octoprint on my laptop server. Thanks to Paukstelis for the excellent Octoprint_deploy script, which makes it a breeze to set up multiple Octoprint instances, which shortened hours to only about 5 minutes of setup time.

    Then I PID tuned, which tunes the heater of the Bed and the Hotend, which tests to see how frequently the heater needs to start heating; for example, before a PID tune, the Bed would either heat over the mark with 63°, begin to cool down but then go below the mark by hitting 55°, then heating up too much. Back and forth, thus making an unstable temperature which can affect the print dramatically. By staying stable, you can see an example of before and after with the Octoprint temp graph:

    credit: u/copppypapper on Reddit.com

    Once PID was tuned, I test-printed a ghosting/ringing test cube model, which came back with this:

    test cube 1

    You can see the ringing from the “Y” letter by the bump around. And some lousy plastic trailing on the lines; I then decreased the acceleration, which is how fast it speeds up and slows down, which causes this foul ringing line around corners. And this was the second cube:

    Test Cube 2

    Unfortunately, I still had very similar results from the second cube after turning it down, there is a very slight difference, but the bump is still very much there. But after turning it down even more and slowing the print speeds. I got this result:

    test cube 3

    The third cube was a success. It had eliminated the ringing, with not even a bump before the letter. But at the cost of speed, which I can sacrifice for quality. There are also very inconsistent layer lines which you can see in the images,, which I am working to resolve to get a better, more consistent cube shape.

  • Upgrades for my Ender-3

    I finally got around to fixing and upgrading my Ender-3. I’ve had my Ender3 for almost 2 years now and have occasionally been upgrading when needed. Last year I made my best upgrade to the “silent board” TMC2208 stepper drivers. Which significantly silenced the noise of the printer when printing. As well as a BL touch which helps with bed leveling. (Read more about that process here)

    I hadn’t upgraded it much further than adding an Octoprint device (wireless control software for controlling and printing and a bunch of other features.) But I wanted to spend a bit more time working on the firmware and hardware because of several issues/features. One was a heating issue if I printed twice before it cooled down. Another major one was I needed to modify the firmware for PID Bed tuning (basically calibrating the temperature for my printer to know what the sweet spot is for keeping stable temperatures). I wanted to add “fast probing,” which made the bed leveling process much faster before it started printing, which I learned about thanks to Crosslink’s blog post.

    I moved my printer upstairs and closer to my desk for easy access and quick printing. As well as using an old laptop, I had to lie around for the Octoprint server and the laptop screen as a sort of 3D printer screen monitor. Which displays the webpage, where I can use the touchscreen to control and view information about the printer. Thanks to a nifty program called Ubuntu Frame, Ubuntu Frame uses the screen in “Kiosk mode,” which runs a website in a stripped-down version of chromium at bootup. Thanks to UI customizer, an Octoprint plugin, I could customize the home screen to look sleeker and in Dark mode, which made it easier for the eyes to see and navigate.

    (What’s dark mode? Click the icon below to see)

    I was also able to successfully program Marlin firmware for my printer with the features mentioned earlier. And ran the PID tuning. Another upgrade I wanted to make was to switch to Direct Drive. I had a direct drive setup from another project printer that I wasn’t using, and since in the future I wanted to run flexible plastics that would better run with Direct Drive, I decided I might as well install it at the same time.

    Took a couple of beauty shots with my brother Simeon’s camera while it was printing, and here’s the result:

  • My Project Printer: A Year in the Making

    For the past almost year, I have been working on a project printer that I bought; the original frame and parts were from a CR-10 S5 (with a 500x500x500 build size) the first couple of test prints worked, but they were not optimal with many issues, elephants foot, layer line issues, and a couple other minor issues, some of the problems I was able to fix by tweaking hardware.

    But most of my issues I could fix by changing my slicer settings; I currently use PrusaSlicer v2.5.0; I used to use Cura slicer; I swapped slicers because of the easier-to-use interface and the number of features built into the base program. Overall I prefer it for its interface and configurability, which makes it easier to swap machine settings from my Ender3 to my project printer. As well as built-in support for Octoprint.

    After an army of calibration cubes and Benchy’s, I could finally tune my prints to the best of my ability. I use a .6 nozzle, and I figured the best results are with a .3 layer height and about 70 mm/s (it can depend on a print-by-print basis) for PLA. I also have changed many more settings, which you can find here:

    https://github.com/BillyDaBones/Project-Covenant-3D-Printer

    The main issue I ran into was warping on the print bed when printing thinner models, and the way I solved it was by having both a higher bed temperature and a short 1-minute pause before printing after the bed had heated.

    I have previous short posts and status updates on the printer projects at my Instagram (here)