Laser Engraver Uses All Of The DVD Drive

For the last ten to fifteen years, optical drives have been fading out of existence. There’s little reason to have them around anymore unless you are serious about archiving data or unconvinced that streaming platforms will always be around. While there are some niche uses for them still, we’re seeing more and more get repurposed for parts and other projects like this tabletop laser engraver.

The build starts with a couple optical drives, both of which are dismantled. One of the shells is saved to use as a base for the engraver, and two support structures are made out of particle board and acrylic to hold the laser and the Y axis mechanism. Both axes are made from the carriages of the disassembled hard drives, with the X axis set into the base to move the work piece. A high-output laser module is fitted to the Y axis with a heat sink, and an Arduino and a pair of A4988 motor controllers are added to the mix to turn incoming G-code into two-dimensional movement.

We’ve actually seen a commercial laser engraver built around the same concept, but the DIY approach is certainly appealing if you’ve got some optical drives collecting dust. Otherwise you could use them to build a scanning laser microscope.

Continue reading “Laser Engraver Uses All Of The DVD Drive”

Industrial Robot Gets Open-Source Upgrade

Industrial robots are shockingly expensive when new, typically only affordable for those running factories of some sort. Once they’ve gone through their life cycle building widgets, they can be purchased for little more than scrap value, which is essentially free compared to their original sticker price. [Excessive Overkill] explains all of this in a video where he purchased one at this stage to try to revive, but it also shows us how to get some more life out of these robots if you can spend some time hunting for spare parts, installing open-source firmware, and also have the space for a robot that weighs well over a thousand kilograms.

This specific robot is a Fanuc R2000ia with six degrees of freedom and a reach of over two meters. Originally the plan was to patch together a system that could send modern gcode to the Fanuc controller, but this was eventually scrapped when [Excessive Overkill] realized the controller that shipped with this robot was for an entirely different machine and would never work. Attempts to find upgraded firmware were frustrated, and after a few other false starts a solution was found to get the robot working again using LinuxCNC and Mesa FPGA cards, which have built-in support for Fanuc devices like this.

More after the break…

Continue reading “Industrial Robot Gets Open-Source Upgrade”

Holograms Display Time With ESP32

Holograms and holographic imagery are typically viewed within the frame of science fiction, with perhaps the most iconic examples being Princess Leia’s message to Obi-Wan in Star Wars, or the holodecks from Star Trek. In reality, holograms have been around for a surprising amount of time, with early holographic images being produced in the late 1940s. There are plenty of uses outside of imagery for modern holographic systems as well, and it’s a common enough technology that it’s possible to construct one using an ESP32 as well.

In this build, [Fiberpunk] demonstrates the construction and operation of a holographic clock. The image is three-dimensional and somewhat transparent and is driven by an ESP32 microcontroller. The display is based around a beamsplitter prism which, when viewed from the front, is almost completely invisible to the viewer. The ESP32 is housed in a casing beneath this prism, and [Fiberpunk] has two firmware versions available for the device. The first is the clock which displays an image as well as the time, and the second is more of a demonstration which can show more in-depth 3D videos using gcode models and also has motion sensing controls.

For anyone interested in holography, a platform like this is might make an excellent entry point to explore, and with the source for this build available becomes even easier. It’s almost certainly less expensive than these 3D printers that can turn out custom holographic images, and has the added benefit of being customizable and programmable as well.

Continue reading “Holograms Display Time With ESP32”

Playing With The Power Of Full G-Code Control

Slicing software needs to maintain a balance between ease-of-use and control, while handling handle any STL file you throw at it. If you eliminate the need to convert an existing 3D model, and create G-Code directly, you gain a lot of design freedom, at the cost of increased design effort. By taking advantage of this freedom and making it more accessible, [Andrew Gleadall] and [Dirk Leas] created the FullControl Design Library.

Each model is a mathematically generated extrusion path with a host of adjustable design parameters and print settings. This allows you to print things like a single-layer non-planar part, or 90° overhangs without any support (video after the break). The website was built using the python version of the original Excel-based FullControl Designer (unreleased at the time of writing), and threejs for the 3D visualization.

Go browse the library, play with some parameters and see what strikes your fancy. For ideas, help and updates, keep an eye on the FullControl Subreddit.

Continue reading “Playing With The Power Of Full G-Code Control”

Full Printing Path Control Without Writing GCode

User-friendly slicing software is arguably the key software component that makes 3D printing approachable for most users. Without it going from a CAD design to a printing part would take hours, not seconds. As a trade-off you give up a lot of control over the exact path of the hotend, but most of the time it’s worth it. However, for some niche use-cases, having complete control over the tool path is necessary. Enter FullControl GCode Designer, a tool that gives you all the control without resorting to writing GCode directly.

FullControl takes an approach similar to OpenSCAD, where you define path geometries line by line. Need an array of circles? Choose the circle feature, define its origin, radius, starting position, and extrusion height, and define the spacing and axes (including Z) of the copies. Need a mathematically defined lamp shade? Define the functions, and FullControl generates the GCode. Non-planar printing, where your print head moves along all three axes simultaneously instead of staying at a constant Z-height is also possible. In the video after the break, [Thomas Sanladerer] demonstrates how he used FullControl to reduce the print time of a functionally identical part from two hours to 30 minutes.

FullControl is built on Microsoft Excel using Visual Basic scripting, which comes at the cost of long GCode generation times. It also doesn’t show the defined tool paths graphically, so the generated code needs to be pasted into a viewer like Repetier Host to see what it’s doing. Fortunately, a Python version is coming to should hopefully elevate many of these shortcomings.

We also featured some other GCode hacks in the last few months that bend existing GCode along a spline path, and a Blender plugin allows the surface textures of sliced objects to be modified.

Continue reading “Full Printing Path Control Without Writing GCode”

Texture Map GCode Directly In Blender With NozzleBoss

We’ve seen this funky dual disk polar printer already recently, but [Heinz Loepmeier] has been busy working on it, so here’s an update. The primary focus here is nozzleboss, a blender plugin which enables the surface textures of already sliced objects to be manipulated. The idea is to read in the gcode for the object, and convert it to an internal mesh representation that blender needs in order to function. From there the desired textures can be applied to the surfaces for subsequent stages to operate upon. One trick that nozzleboss can do is to create weight maps to tweak the extrusion flow rate or print velocity value according to the pixel value at the surface — such ‘velocity painting’ can produce some very subtle surface effects on previously featureless faces. Another trick is to use the same weight maps and simply map colours to blender text blocks which are injected into the gcode at export time. These gcode blocks can be used swap tool heads or extruders, enabling blending of multiple filament colours or types in the same object.

Some nice examples of such printing manipulation can be seen on [Heinz’s] instagram page for the project. So, going back to the hardware again, the first video embedded below shows the ‘dual disk polar printer’ fitted with a crazy five-extruders-into-one-nozzle mixing hotend setup, which should be capable of full CMYK colour mixing and some. The second video below shows an interesting by-product of the wide horizontal motion range of the machine, that the whole printing area can be shifted to a nozzle at the other end of the gantry. This enables a novel way to switch extruders, by just moving the whole bed and print under the nozzle of interest! One final observation — is that of the print surface — it does look rather like they’re printing direct onto a slab of marble, which I think is the first time we’ve seen that.

Interesting printer designs are being worked on a lot these days, here’s a really nice 5-axis prusa i3 hack, and if you want to stay in the cartesian world, but your desktop machine is just too small, then you can always supersize it.

Continue reading “Texture Map GCode Directly In Blender With NozzleBoss”

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”