3D Printer Streaming Solution Unlocks Webcam Features

While 3D printer hardware has come along way in the past decade and a half, the real development has been in the software. Open source slicers are constantly improving, and OctoPrint can turn even the most basic of printers into a network-connected powerhouse. But despite all these improvements, there’s still certain combinations of hardware that require a bit of manual work.

[Reticulated] wanted an easy way to monitor his prints over streaming video, but didn’t have any of the cameras that are supported by OctoPrint. Of course he could just point a cheap network-connected camera at the printer and be done with it, but he was looking for a bit better integration than that. In the process, he demonstrates how to unlock some features hidden in inexpensive webcams.

He set about building something that wouldn’t require buying more equipment or overloading the limited hardware responsible for the actual printing. A few of his existing cameras have RTMP support, which allows a fairly straightforward setup with YouTube Live once Monaserver is set up to handle the RTMP feeds from the cameras and OBS Studio is configured to stream it out to YouTube. Using the OctoPrint API, he was able to pull data such as the current extruder temperature and overlay it on the video.

One of the other interesting parts of this build is that not all of [Reticulated]’s cameras have built-in RTMP support but following this guide he was able to get more of them working with this setup than otherwise would have had this capability by default. Even beyond 3D printing, this is an excellent guide (and tip) for getting a quick live stream going for whatever reason. For anything more mobile than a working 3D printer, though, you might want to look at taking your streaming setup mobile instead.

FLOSS Weekly Episode 778: OctoPrint — People Are Amazing At Breaking Things

This week Jonathan Bennett and Katherine Druckman sit down with Gina Häußge to talk OctoPrint! It’s one of our favorite ways to babysit our 3D printers, and the project has come a long way in the last 12 years! It’s a labor of love, primarily led by Gina, who has managed to turn it into a full time job. Listen in to hear that story and more, including how to run an Open Source project without losing your sanity, why plugins are great, and how to avoid adding a special services employee as a co-maintainer!

Continue reading “FLOSS Weekly Episode 778: OctoPrint — People Are Amazing At Breaking Things”

A workbench with a 3D printer, a home-made frame of metal tubing and 3D printed brackets and phone holders. 3 iOS devices and 1 Android phone arranged around the printer with a clock and 3 different camera angles around the print bed

Even 3D Printers Are Taking Selfies Now

We love watching 3D prints magically grow, through the power of timelapse videos. These are easier to make than ever, due in no small part to a vibrant community that’s continuously refining tools such as Octolapse. Most people are using some camera they can connect to a Raspberry Pi, namely a USB webcam or CSI camera module. A DSLR would arguably take better pictures, but they can be difficult to control, and their high resolution images are tougher for the Pi to encode.

If you’re anything like us, you’ve got a box or drawer full of devices that can take nearly as high-quality images as a DSLR, some cast-off mobile phones. Oh, that pile of “solutions looking for a problem” may have just found one! [Matt@JemRise] sure has, and in the video after the break, you can see how not one but four mobile phones are put to work.

Continue reading “Even 3D Printers Are Taking Selfies Now”

Custom Prusa MK3 Fan Duct Gives Camera Perfect View

A growing trend is to mount a borescope “inspection camera” near a 3D printer’s nozzle to provide a unique up-close view of the action. Some argue that this perspective can provide valuable insight if you’re trying to fine tune your machine, but whether or not there’s a practical application for these sort of nozzle cams, certainly everyone can agree it makes for a pretty cool video.

[Caelestis Cosplay] recently decided to outfit his Prusa i3 MK3S+ with such a camera, and was kind enough to share the process in a write-up. The first step was to find a community-developed fan duct, which he then modified to hold the 7 mm camera module. Since the duct blows right on the printer’s nozzle, it provides an ideal vantage point.

The camera module included a few tiny SMD LEDs around the lens, but [Caelestis Cosplay] added holes to the fan duct to fit a pair of 3 mm white LEDs to really light things up. While modifying the printed parts took some effort, he says the hardest part of the whole build was salvaging a 5X lens from a handheld magnifier and filing it down so it would fit neatly over the camera. But judging by the sharp and bright demo video he’s provided, we’d say the extra effort was certainly worth it.

After covering how the camera rig was put together, [Caelestis Cosplay] then goes over how it was integrated into OctoPrint, including how the external LEDs are switched on and off. He’s running OctoPrint on a Raspberry Pi, though as we’ve covered recently, a small form factor desktop computer could just as easily run the show.

Continue reading “Custom Prusa MK3 Fan Duct Gives Camera Perfect View”

Big 3D Printed BMO Is Also An OctoPrint Server

OctoPrint is a useful tool for 3D printers, providing remote access to essentially every 3D printer with a USB port. [Allie Katz] decided to build an OctoPrint server in the shape of a life-sized BMO from Adventure Time, and the results are cute as heck.

A Raspberry Pi 4 is the heart of the build, with [Allie] selecting a 8 GB model for the job. It’s paired with a Raspberry Pi touchscreen that serves as BMO’s face. The Pi is also given a stereo audio output board, and hooked up to a custom PCB that runs all of BMO’s buttons. Printing BMO itself was fairly straightforward, but requires some experience working with larger PETG parts. A useful note for those playing along at home is that Polymaker PolyLite PETG in teal is just about a perfect dupe for BMO’s authentic body color.

A bit of Python code animates BMO’s face and delivers funny quips at the press of a button. When it’s time to work, though, the touchscreen serves as a straightforward interface for OctoPrint. The resulting build is both fun and functional, and a great example of what 3D printing really can achieve. It’s a cute figurine and a functional print all in one, something we don’t see everyday!

Continue reading “Big 3D Printed BMO Is Also An OctoPrint Server”

You Draw It, CNC Cuts It

[Jamie] aka [vector76] hit us with a line-tracing plugin for OctoPrint that cuts out whatever 2D shape you draw on a piece of wood. The plugin lets you skip the modeling step entirely, going straight from a CNC-mounted webcam that reads your scribbles and gives you a Gcode toolpath in return. The code is on GitHub and there’s a demo video embedded below.

Under the hood, OpenCV is doing a lot of the image processing, including line detection, and the iterative “find the line” and “move the toolhead” steps really show off what computer vision can do. It starts off with a fiducial arrow for scale and orientation, then it mores the webcam around the scene. The user can enter the usual milling parameters: speeds, feeds, depth of cut, tool offset, milling direction, etc. And then it gets to work.

Right now, it’s limited to paths with non-crossing lines, and probably with good contrast and a nice dark line — all the usual CV restrictions. But mounting a webcam to a CNC toolhead and using it for various pathing problems really opens up tons of possibilities: visual homing, workpiece edge finding, copying parts, custom fitting odd shapes, and more. This project is clearly an invitation to keep on hacking, an appetizer. Once you see the girl pirate robot that [Jamie]’s daughter made, you’ll get the idea.

We’ve seen a similar OpenCV approach used for center-finding bore holes, but while we’ve seen a few webcams used with laser cutters, the CNC mill applications seem largely untapped. Let us know in the comments if you’ve got some other good examples.

Continue reading “You Draw It, CNC Cuts It”

Finally, A Use For Old Cellphones

In what is now a three-year long search, I’ve finally found the perfect use for an old cellphone. And with it, the answer to a burning question: Why aren’t we hacking cellphones?

First, the application. The Octo4a project lets you use an old Android phone as a 3D printer server, web interface, and even time-lapse camera to make those nice movies where the print seems to grow up out of nothing before your eyes. It’s the perfect application for an old phone, making use of the memory, WiFi, graphics capabilities, and even the touch-screen if you want local control of your prints.

Connecting to the phone was the main hurdle that I’ve always seen in developing for cellphone projects, because I have robotics applications in mind. But Octo4a gets around this with low or no effort. Most 3D printers are designed to run on USB anyway, so connecting it to the phone is as simple as buying a USB OTG cable. With the USB port taken over, powering the phone long-run becomes a tiny problem, which can be solved with a Y-cable or a little solder. Keep the OS from going to sleep, somehow, and it’s problem solved!

But here’s why this isn’t a solution, and it points out the deeper problem with cellphone hacking that many pointed out in the comments three years ago. Octoprint is written in Python, and because of this is very easy to write extensions for and to hack on, if that’s your thing. When I first saw Octo4a, I thought “oh great, a working Android Python port”. Then I went to dig into the code.

Octo4a is written in Kotlin and uses the Gradle framework. It’s a complete port of Octoprint, not just to a different platform, but to a different programming language and to an almost entirely different programming paradigm. My hat is off to [feelfreelinux] for doing it, but my guess is that the community of other people fluent enough in Kotlin and Python to help port across upstream changes in Octoprint is a lot smaller than the community of Python programmers would have been. Octo4a is a great project, but it’s not a walk in the park to develop on it.

So all of you who wrote in the comments to my previous piece that it’s the Android software ecosystem that’s preventing phone reuse, well here’s the exception that proves your rule! A dedicated and talented, multi-lingual developer community could pull it off, but the hurdle is so high that few will rise to it.

Anyway, thanks [Feelfree Filip] for your great work! I’ll be putting this on my old S4.