Want to make your video gaming experience even more realistic? New York-based designer Brent Scott has created a 3D printable mini steering wheel that you can mount onto your Xbox One or PlayStation 4 controller.
As the video game graphics slowly become on par with our own reality, they create an immersive experience that is being enjoyed by people both young and old. However, as realistic as your favorite racing title may be, it’s hard to feel like you’re actually behind the wheel when all you’re doing is tilting your sticks and mashing some buttons.
New York designer Brent Scott– known on Thingiverse as pixel2 – has recently created an incredible 3D printed attachment for Xbox One and PlayStation 4 controllers. This mini rack and pinion steering wheel was made to enhance your experience with racing games, allowing you to steer your virtual vehicle of choice using your controller.
No need to start a console war either… The designer has released a model for both Xbox and PS4 controllers. It’s useful, relatively easy to print, and all you need aside from your 3D printer is a bearing and some glue! So, if you’re planning on doing some gaming this weekend, why not add a 3D printed steering wheel to your controller.
Let’s take a closer look at this project.
3D Printed Mini Steering Wheel: What You Need & How to Build it
Ready to start racing? Here’s what you need to build your own steering wheel.
The STL files for both the Xbox One and PS4 controllers are freely available via Thingiverse. There are multiple parts that make up this steering wheel contraption, so feel free to get creative and mix different filament colors. Aside from your 3D printer, all you need to put this project into overdrive is a bearing from an old fidget spinner or skateboard, along with some superglue.
Once you have the parts printed and your bearing ready, it’s time to move into the assembly process. Taking the 3D printed parts, snap the rack into the pivot, moving it back and forth until the ridges of the print are smoothed out.
Next, mount the bearing onto the frame by gluing the top and bottom edge of the bearing. Make sure that the glue is fully dried before snapping it onto the controller, as the glue can leave some residue on the controller. After snapping the 3D printed rack onto the frame, mount the entire wheel onto the controller.
Slide the pivot down onto the controller’s stick until the ball joint is in the center and the bottom edge of the pivot is parallel with the rack. Finally, center the wheel on the rack and press it into the bearing.
Now you’re finally ready to get behind the wheel and start racing.
If you’re a subscriber to HackSpace magazine you’ll already know all about issue 10. For the rest of you who’ve yet to subscribe, issue 10 is out today!
Build a drone
Ever since Icarus flew too close to the sun, man has dreamed of flight. Thanks to brushless motors, cheaper batteries than ever before, and smaller, more powerful microcontrollers, pretty much anyone with the right know-how can build their own drone. Discover the crucial steps you need to get right; find the right motors, propellers, and chassis; then get out there while the weather is still good and soar like a PCB eagle.
Rocket-launching robot
If you prefer to keep your remote-controlled vehicles on the ground, we have an inspiring tale of how one maker combined a miniature strandbeest with our other great obsession (fire, obviously) to create a unique firework launcher. Guy Fawkes would surely be pleased.
Hardware hacking for the environment
In less frivolous project news, we’re reporting from the Okavango Delta in Botswana, where open hardware, open data, and the hard work of volunteers are giving ecologists more information about this essential wetland region. Makers are bringing science out of labs and classrooms, and putting it into the hands of citizen scientists who want to understand and protect their local environment – that’s something we should be proud of.
PCBs win prizes
The Hackaday Prize: the Academy Awards of open hardware. Enter your project today and you stand a chance of winning $50,000. The competition is fierce, so before you do, read our interview with Stephen Tranovich. Stephen is the Technical Community Lead at the Hackaday Prize and decides who gets the chance to win the glittering prizes. Learn from their words!
Food
Our editor Ben loves to eat, so this month he’s been eating lamb kebabs cooked in his home-made tandoor. This ancient cooking method is used all over the Indian subcontinent, and imparts a unique flavour with its combination of heat and steam. Best of all, you can make your own tandoor oven with a Dremel and a few plant pots.
Tutorials
Add push notifications to your letterbox (so your dog doesn’t eat your new passport), write a game for an Arduino, add a recharging pocket to a bag so you can Instagram on the go, and learn everything there is to know about capacitors. All this and more, in HackSpace magazine issue 10!
Get your copy of HackSpace magazine
If you like the sound of this month’s content, you can find HackSpace magazine in WHSmith, Tesco, Sainsbury’s, and independent newsagents in the UK. If you live in the US, check out your local Barnes & Noble, Fry’s, or Micro Center next week. We’re also shipping to stores in Australia, Hong Kong, Canada, Singapore, Belgium, and Brazil, so be sure to ask your local newsagent whether they’ll be getting HackSpace magazine. And if you’d rather try before you buy, you can always download the free PDF.
Subscribe now
“Subscribe now” may not be subtle as a marketing message, but we really think you should. You’ll get the magazine early, plus a lovely physical paper copy, which has really good battery life.
Oh, and twelve-month print subscribers get an Adafruit Circuit Playground Express loaded with inputs and sensors and ready for your next project. Tempted?
Turn your home into a magical forest of fungi with the 3D printed Magic Mushroom lighting decoration –created by German designer UniversalMaker.
One spectacular aspect of 3D printing is that it provides the ability to expand your imagination beyond the everyday world, no matter how fantastical your idea might be. On today’s Weekend Project, we’re taking you to a magical forest that contains a vibrant collection of colorful mushrooms.
Dubbed as “Magic Mushrooms”, this DIY light structure features a patch of fungi that has a voronoi-styled design. The 3D printed mushroom tucked into the stem of The decorative lights were designed by a German maker named Tobias–also known as UniversalMaker.
This project includes a tree trunk-like base and a slew of different sized mushrooms, each of which consists of a mushroom cap and stem. UniversalMaker came up with a clever concept for the LED lights, tucking them into the top of the mushroom stem.
We’ve shared a few of his 3D printing projects in the past, including the DIY Voronoi Blowball Flower Lamp and a Solar-Powered Open RC Boat. So let’s take another trip into the UniversalMaker’s world. Here’s everything you need to know about creating your own 3D printed Magic Mushrooms.
3D Printed Magic Mushrooms: What You Need & How to Build it
The STL files for this project are freely available to download via Thingiverse. UniversalMaker suggests using support structures and 20 percent infill when printing the models. Aside from your 3D printer and some natural and woodsy filament, you’ll also need some electronics and other various components.
Here’s the full checklist of parts:
Once you have everything 3D printed, the rest of the assembly process seems pretty simple. First, take the LED lights and insert them into the top of the mushroom stem/trunks, connecting them via the switch with a 9V battery.
The Voltage converter is used to control the multicolor LEDs. The mushroom caps should be clipped to the top part of the stems. The stems will to be glued directly to the main tree trunk base. You might need to do a bit of sanding to make everything fit together snugly.
Otherwise, that’s about all you need to know about 3D printing your own Magic Mushroom lights. To learn more, visit UniversalMaker’s website and watch his instructional video above.
Copymaster 3D is selling its first 50 3D printers for a 20% discount–meaning you could get one for as low as £399.20. First come first served. Learn more here.
Copymaster 3D is a brand new player in the 3D printing world and has certainly raised a few eyebrows since it burst onto the scene with its website launch in June. Copymaster has now announced that it is set to debut its first generation of 3D printers on the 27th August. With its high performance and low price tag, it looks set to shake up the budget-mid range sector of the market.
3D printing is in a great spot at the moment. It is more affordable than it ever has been and even the most basic budget 3D printers are capable of creating some nice prints. Popular brands like Creality and Wanhao offer a range of good value 3D printers that have so far satisfied the needs of beginner and intermediate users alike. So, what do Copymaster 3D printers offer that make them a better proposition?
Print Bigger For Less
The Copymaster 3D is available in 3 different models. The model numbers are relative to the build size of the printer, with the 500 having the largest build volume of the three:
You would typically expect large build volumes like these to be from a much more expensive printer. Having a bigger space to play with means bigger possibilities for what you can print.
Be More Flexible
Arguably the most compelling feature of the Copymaster is its wide compatibility with a range of different filaments as standard. The direct drive integrated extruder head can print with flexible filament straight out of the box with no modifications or upgrades required. The extruder head has also been designed to be highly precise. Its print accuracy is within 50 microns so finished prints truly represent the design files that are used.
Thoughtfully Designed In The UK
From concept to final product, the Copymaster 3D was designed by a team of people who are passionate about 3D printers and actually use them on a daily basis. This really shows when you see, first hand, the useful features, solid build quality and nice touches that have been incorporated into the design.
The Copymaster 3D is an open design, all in one unit. It is simple to assemble and only takes about 20 minutes. The industrial grade aluminium frame is very strong and stable, which benefits the printing process.
The no-filament sensor is a great feature that will rescue countless 3D print jobs. Running your printer for hours at a time only for the print to fail because you ran out of filament is probably one of the biggest frustrations you can ever experience in 3D printing. The sensor will automatically pause the printing if it detects that the filament has run out. When you swap out the filament, it will resume as normal.
The Copymaster 3D also comes with a heated print bed as standard, with a diamond black glass print surface upgrade available, to help give you more consistent results for a variety of different filaments. It is magnetic, flexible and is designed to take the hassle out of print removal.
Inspiration Behind the Brand
Tim Gray, the founder of Copymaster 3D and also the CEO of Technology Outlet, the UK’s leading online retailer for 3D printers, explains why he created the Copymaster 3D brand:
“I wanted to make 3D printing easier and more accessible for more people. I wanted to let people experiment with a range of different filaments without running out of space to print or running into the issue of needing to modify the extruder head. There has been a lot of demand for an affordable printer that offers this functionality and the Copymaster provides this. I’m really happy with it.”
—
Copymaster 3D will be attending the TCT Show at the NEC on the 25-27 September to showcase its lineup for the first time. Copymaster 3D is open to reseller applications worldwide. For more information, email [email protected]
All Copymaster 3D printers will begin shipping worldwide from the 27th August and all pre orders will receive any two PLA filaments of any colour for free.
Looking for an affordable and fun project to round out the summer with? Why not practice your archery skills with a fully 3D printed miniature compound bow.
While the world has been expressing an immense amount of concern over the potential rise of 3D printed guns, it’s easy to lose sight of all the fun projects that this technology enables us to create. To us, the most impressive projects consist of functional objects that are primarily made up of 3D printed parts.
One type of design we’ve commonly seen shared by makers is the crossbow, available on the internet in both miniature and regular size. For instance, German engineer and maker Sebastian Stickel–who goes by DonStick3l on Thingiverse–created a 3D printed miniature compound bow to fire off wood skewers.
It’s fully functional and has an incredible design, made up of 18 3D printed parts, some string and a few screws.
For just a few bucks, you can create your own compound bow too. Of course, if you plan on 3D printing your own, be sure to use it responsibly! With it, you can become maker version of Robin Hood, becoming a master archer and having an enjoyable outdoor activity to impress your friends and family with.
Let’s take a look at what you need and the basics on how to build your own.
3D Printed Miniature Compound Bow: What You Need & How to Build it
There are 18 different 3D printed parts that make up the miniature compound bow, all of which are freely available to download via Thingiverse. Aside from your 3D printer, you need a collection of M3 screws and some bow string (some Thingiverse comments suggest using nylon fishing line with a 0.7mm diameter). Finally, for the arrows, the designer recommends wood skewers that are 300mm in length and have a diameter of 2.5 to 3.5mm.
Compared to some of the other Weekend Projects we’ve shared, this miniature compound bow seems quite challenging to build. Thankfully, Stickel shares a comprehensive assembly guide alongside the STL files, equipped with every step, part ID, and pictures to assist in the build process.
After a quick disclaimer urging makers to use the compound bow responsibly, the creator shares all of his slicer settings. Next, there’s a lengthy section that explains what each 3D printed part does and how it was designed, along with how to optimize the printing process and perform post-processing for every component.
After going over some information on how to select the non-3D printed hardware, the engineer starts on the intensive build process, which consists of 36 different steps.
If you want to learn more about the assembly of the miniature compound bow, head over to the project’s Thingiverse page and look at the Compound_Bow_Instructions.pdf, which is included with the collection of STL files. Stickel also appears to be quite active in the comment section, so feel free to drop him a line if you’d like.
Recently shared on the r/3DPrinting subreddit, one maker created an endearing anniversary gift for his girlfriend. This 3D printed clock has a custom 3D map as the face, showcasing the exact area where they first met. You make your own too!
Every relationship is special in its own way, and 3D printing offers a great way to express your affection with a completely customized and unique present.
One Reddit user named “rhonest” recently shared an amazing anniversary gift on the r/3Dprinting subreddit: a 3D printed clock that showcases a map of the location where the couple met. To make the gift even more personal, he also accentuated the numbers of the date when they first became acquainted with one another.
It’s a lovely and charming idea, and also pretty easy to make on your own. Using your 3D printer, a custom map making website and a simple clock mechanism, you can also preserve your own cherished memories in time (pun intended).
Whether you’re celebrating a relationship or just want to pay homage to your childhood neighborhood, this Weekend Project is an easy way to make something extremely special to you or your loved ones.
Let’s take a quick look at how to make a 3D printed clock with a customized map embedded into the face!
3D Printed Customized Map Clock: What You Need & How to Build it
According to “rhonest”, he used Touch Mapper to create his 3D tactile map. The platform is simple to use; all you have to do is enter an address to create your map. You can either order a professional 3D print directly from the website or download the STL yourself.
Aside from your 3D printer and 3D map file, all you need is a Quartz Movement mechanism to operate the wall clock.
Since the map comes in a square shape, you’ll need to use some CAD software to transform it into a circle. And, in order to tell the time, you’ll also need to integrate the proper marks where each number should be situated. For the clock mechanism, a small circle must be placed in the very center of the design. The exact measurement will depend on the Quartz Movement mechanism you decide to buy.
If you don’t have too much experience with 3D modeling, there are easy options like TinkerCAD. Check out our TinkerCAD Tutorial to learn more about this web-based program.
What is an STL file? What is it good for? How does it work? We simply explain the STL file format for 3D printing in depth.
Here’s a primer on what they are and how they work, the advantages and disadvantages of their use, plus alternative file formats to consider. In this article, we’re talking about the 3D printing file format, not about the Standard Template Library in C++.
In a nutshell, an STL file stores information about 3D models. This format describes only the surface geometry of a three-dimensional object without any representation of color, texture or other common model attributes.
These files are usually generated by a computer-aided design (CAD) program, as an end product of the 3D modeling process. “.STL” is the file extension of the STL file format.
The STL file format is the most commonly used file format for 3D printing. When used in conjunction with a 3D slicer, it allows a computer to communicate with 3D printer hardware.
Since its humble beginnings, the STL file format has been adopted and supported by many other CAD software packages, and today is widely used for rapid prototyping, 3D printing, and computer-aided manufacturing. Hobbyists and professionals use it alike.
2. What does the file extension .STL stand for?
The true meaning of the file extension .STL has been lost to the mists of time.
It’s widely believed to be an abbreviation of the word STereoLithography, though sometimes it is also referred to as “Standard Triangle Language” or “Standard Tessellation Language”.
3. How does the STL file format store a 3D model?
The main purpose of the STL file format is to encode the surface geometry of a 3D object. It encodes this information using a simple concept called “tessellation”.
3.1 Tessellation
Tessellation is the process of tiling a surface with one or more geometric shapes such that there are no overlaps or gaps. If you have ever seen a tiled floor or wall, that is a good real life example of tessellation.
The tiled wall and floor are simple real life examples of tessellation
Tessellation can involve simple geometric shapes or very complicated (and imaginative) shapes. Here are some examples of artistic tessellations due to the famous painter M. C. Escher. In fact, if you want to see more examples of amazing tessellations, we recommend that you check out his paintings.
Two tessellation paintings by M. C. Escher
3.2 The invention of the STL file format: exploiting tessellation to encode surface geometry
Back in 1987, Chuck Hull had just invented the first stereolithographic 3D printer, and The Albert Consulting Group for 3D Systems were trying to figure out a way to transfer information about 3D CAD models to the 3D printer. They realized that they could use tessellations of the 3D model’s surface to encode this information!
The basic idea was to tessellate the 2 dimensional outer surface of 3D models using tiny triangles (also called “facets”) and store information about the facets in a file.
Let’s look at a few examples to understand how this works. For example, if you have a simple 3D cube, this can be covered by 12 triangles, as shown in the image below. As you can see, there are two triangles per face. Since the cube has six faces, it adds up to 12 triangles.
If you have a 3D model of a sphere, then it can be covered by many small triangles, also shown in the same image.
Tessellations of a cube and a sphere
Here is another example of a very complicated 3D shape which has been tessellated with triangles.
Tessellation of a 3D pig (source : i.materialize)
The Albert Consulting Group for 3D Systems realized that if they could store the information about these tiny triangles in a file, then this file could completely describe the surface of an arbitrary 3D model. This formed the basic idea behind the STL file format!
4. How does an STL file store information about facets?
The STL file format provides two different ways of storing information about the triangular facets that tile the object surface. These are called the ASCII encoding and the binary encoding. In both formats, the following information of each triangle is stored:
The coordinates of the vertices.
The components of the unit normal vector to the triangle. The normal vector should point outwards with respect to the 3D model.
An STL file stores the co-ordinates of the vertices and the components of the unit normal vector to the facets
4.1 The ASCII STL file format
The ASCII STL file starts with the mandatory line:
solid name>
where is the name of the 3D model. Name can be left blank, but there must be a space after the word solid in that case.
The file continues with information about the covering triangles. Information about the vertices and the normal vector is represented as follows:
Here, n is the normal to the triangle and v1, v2 and v3 are the vertices of the triangle. Co-ordinate values are represented as a floating point number with sign-mantissa-e-sign-exponent format, e.g., “3.245000e-002”.
The file ends with the mandatory line:
endsolid name>
4.2 The binary STL file format
If the tessellation involves many small triangles, the ASCII STL file can become huge. This is why a more compact binary version exists.
The binary STL file starts with a 80 character header. This is generally ignored by most STL file readers, with some notable exceptions that we will talk about later. After the header, the total number of triangles is indicated using a 4 byte unsigned integer.
UINT8[80] – Header
UINT32 – Number of triangles
The information about the triangles follow subsequently. The file simply ends after the last triangle.
Each triangle is represented by twelve 32-bit floating point number. Just like the ASCII STL file, 3 numbers are for the 3D Cartesian co-ordinates of the normal to the triangle. The remaining 9 numbers are for the coordinates of the vertices (three each). Here’s how this looks like:
Note that after each triangle, there is a 2 byte sequence called the “attribute byte count”. In most cases, this is set to zero and acts a spacer between two triangles. But some software also use these 2 bytes to encode additional information about the triangle. We will see such an example later, where these bytes will be used to store color information.
5. Special rules for the STL format
The STL specification has some special rules for tessellation and for storing information.
5.1 The vertex rule
The vertex rule states that each triangle must share two vertices with its neighboring triangles.
This rule is to be respected when tessellating the surface of the 3D object.
Here’s an example of a valid and invalid tessellation, according to this rule. The figure on the left violates this rule and is an invalid tessellation, while the figure on the right is conformant and a valid tessellation.
Vertex rule for STL files: The figure on the left is an invalid tessellation, while the figure on the right is acceptable.
5.2 The orientation rule
The orientation rule says that the orientation of the facet (i.e. which way is “in” the 3D object and which way is “out”) must be specified in two ways.
First, the direction of the normal should point outwards. Second, the vertices are listed in counterclockwise order when looking at the object from the outside (right-hand rule).
The orientation of each facet is specified in two ways: by the direction of the normal vector and by the ordering of the vertices
This redundancy exists for a reason. It helps ensure consistency of the data and spot corrupt data. A software can, for example, calculate the orientation from the normal and subsequently from the vertices and verify whether they match. If it doesn’t, then it can declare the STL file to be corrupt!
5.3 The all positive octant rule
The all positive octant rule says that the coordinates of the triangle vertices must all be positive.
This implies that the 3D object lives in the all-positive octant of the 3D Cartesian coordinate system (and hence the name).
The rationale behind this rule is to save space. If the 3D object was allowed to live anywhere in the coordinate space, we would have to deal with negative co-ordinates. To store negative co-ordinates, one needs to use signed floating point numbers. Signed floating point numbers require one additional bit to store the sign (+/-). By ensuring that all coordinates are positive, this rule makes sure that we are able to use unsigned numbers for the coordinates and save a bit for every coordinate value we store.
Octant I (red) is the all positive octant
5.4 The triangle sorting rule
The triangle sorting rule recommends that the triangles appear in ascending z-value order.
This helps Slicers slice the 3D models faster. However, this rule is not strictly enforced.
6. How is an STL file 3D printed?
For 3D printing, the STL file has to be opened in a dedicated slicer. What’s a slicer? It’s a piece of 3D printing software that converts digital 3D models into printing instructions for your 3D printer to create an object.
The slicer chops up your STL file into hundreds (sometimes thousands) of flat horizontal layers based on the settings you choose and calculates how much material your printer will need to extrude and how long it will take to do it.
All of this information is then bundled up into a GCode file, the native language of your 3D printer. Slicer settings do have an impact the quality of your print so it’s important to have the right software and settings to get you the best quality print possible.
Once the GCode has been uploaded to your 3D printer, the next stage is for those separate two-dimensional layers to be reassembled as a three-dimensional object on your print-bed. This is done by depositing a succession of thin layers of plastics, metals, or composite materials, and building up the model one layer at a time.
Unfortunately not. Only a 3D design that’s specifically made for 3D printing is 3D printable. The STL file is just the container for the data, not a guarantee that something is printable.
3D models suitable for 3D printing need to have a minimum wall thickness and a “watertight” surface geometry to be 3D printable. Even if it’s visible on a computer screen, it’s impossible to print something with a wall thickness of zero.
There’s also the consideration of overhanging elements on the model. Look at the ALL3DP logo in the picture above; if the model is printed upright, then overhanging elements with more than a 45-degree angle will require supports (which you can see in green).
When downloading an STL file that you haven’t created yourself, it’s worth taking the time to verify that it is indeed 3D printable. This will save you a lot of time and frustration (and wasted filament).
8. Optimizing an STL file for best 3D printing performance
The STL file format approximates the surface of a CAD model with triangles. The approximation is never perfect, and the facets introduce coarseness to the model.
The perfect spherical surface on the left is approximated by tessellations. The figure on the right uses big triangles, resulting in a coarse model. The figure on the center uses smaller triangles and achieves a smoother approximation (source: i.materialize)
The 3D printer will print the object with the same coarseness as specified by the STL file. Of course, by making the triangles smaller and smaller, the approximation can be made better and better, resulting in good quality prints. However, as you decrease the size of the triangle, the number of triangles needed to cover the surface also increases. This leads to gigantic STL file which 3D printers cannot handle. It’s also a pain to share or upload huge files like that.
It is therefore very important to find the right balance between file size and print quality. It does not make sense to reduce the size of the triangles ad infinitum because at some point your eye is not going to be able to distinguish between the print qualities.
Most CAD software offer a couple of settings when exporting STL files. These settings control the size of the facets, and hence print quality and file size. Let’s dig into the most important settings and find out their optimum values.
8.1 Chord height or tolerance
Most CAD software will let you choose a parameter called chord height or tolerance. The chord height is the maximum distance from the surface of the original design and the STL mesh. If you choose the right tolerance, your prints will look smooth and not pixelated. It’s quite obvious that the smaller the chord height, the more accurately the facets represent the actual surface of the model.
The chord height is the height between the STL mesh and the actual surface (source : www.3dhubs.com)
It is recommended to set the tolerance between 0.01 milimeters to 0.001 milimeters. This usually results in good quality prints. There is no point in reducing this any further, as 3D printers cannot print with that level of detail.
8.2 Angular deviation or angular tolerance
Angular tolerance limits the angle between the normals of adjacent triangles. The default angle is usually set at 15 degrees. Decreasing the tolerance (which can range to 0 to 1) improves print resolution.
Angular tolerance is the angle between the normals of adjacent triangles (source : www.3dhubs.com)
The recommended setting for this parameter is 0.
8.3 Binary or ASCII?
Finally, you have a choice of exporting the STL file in binary or ASCII format. The binary format is always recommended for 3D printing since it results in smaller file sizes. However, if you want to manually inspect the STL file for debugging, then ASCII is preferable because it is easier to read.
9. Are there any alternatives to the STL File Format?
The STL file format is not the only format used in 3D printing. There are over 30 file formats for 3D printing. Most important is the OBJ file format, which can store color and texture profiles. Another option the is Polygon file format (PLY), which was originally used for storing 3D scanned objects.
More recently, there have been efforts to launch a new file type by The 3MF Consortium, which is proposing a new 3D printing file format called 3MF. They claim it will streamline and improve the 3D printing process.
To implement it, Microsoft has partnered up companies like Autodesk, HP, and Shapeways to make their vision a reality. More details on the 3MF Consortium can be read on their website, together with preliminary documentation about the 3MF file type on their GitHub page. It’s far too early to say whether this will become widely adopted, however.
10. Advantages and disadvantages of using STL file format over other file formats
Since there are many 3D printing file formats, the obvious question is : which one should you use for your prints? The answer, as it turns out, depends a lot on your use case.
10.1 When not to use an STL file
As we saw earlier, the STL file format cannot store additional information such as color, material etc. of the facets or triangles. It only stores information about the vertices and the normal vector. This means that if you want to use multiple colors or multiple materials for your prints, then the STL file format is not the right choice. The OBJ format is a popular format enjoying good support which has a way to specify color, material etc. Therefore, this is the right choice for this task.
10.2 When to use an STL file
On the other hand, if you want to print with a single color or material, which is most often the case, then STL is better than OBJ since it is simpler, leading to smaller file sizes and faster processing.
10.3 Other advantages of the STL file format
Universal: Another big advantage of the STL file format is that it is universal and supported by nearly all 3D printers. This cannot be said for the OBJ format, even though it enjoys reasonable adoption and support as well. The VRML, AMF and 3MF formats are not widely supported at this point of time.
Mature ecosystem: Most 3D printable models you can find on the internet are in the STL file format. The existence of this ecosystem, combined with STL-based software investments made by 3D printer manufacturers, has given rise to a large user-base that’s heavily invested in the format. This means there’s plenty of third party software dealing with STL files, which is not the case with the other file formats.
10.4 Some disadvantages of the STL file format
There are some glaring disadvantages to using STL as well. As the fidelity of printing processes embraces micron-scale resolution, the number of triangles required to describe smooth curved surfaces can result in massive file sizes. It’s also impossible to include metadata (such as authorship and copyright information) in an STL file.
10.5 Verdict
If your 3D printing needs are simple, then perhaps there is no reason to move away from the STL file format. However, for more advanced prints using multiple material and color, it is perhaps advisable to try the OBJ or other available formats.
11. Color in STL File Format
In the last section, we said that the STL file format cannot handle multi-color models. The reason the STL file format lacks color information is simple. When rapid prototyping evolved in the 1980s, no one thought of color printing. Nowadays, 3D printing materials and processes have evolved rapidly. Some allow you to print in full-color – just think of sandstone 3D selfies, as pictured above.
However it’s not completely fair to say that STL cannot handle colors. It turns out that there are non-standard versions of the STL format that are indeed capable of carrying color information.
For example, the VisCAM and Solidview software packages use the “attribute byte count” at the end of every triangle to store a 15-bit RGB color using the following system:
bits 0 to 4 for blue (0 to 31),
bits 5 to 9 for green (0 to 31),
bits 10 to 14 for red (0 to 31),
bit 15 is 1 if the color is valid, or 0 if the color is not valid (as with normal STL files).
The Materialize Magics software, on the other hand, uses the 80-byte header in the binary format to represent the overall color of the 3D object. The color is specified by including the ASCII string “COLOR=” followed by four bytes representing red, green, blue and alpha channel (transparency) in the range 0–255. This base color can also be overridden at each facet using the “attribute byte count” bytes.
12. STL file resources
If you have read so far, congratulations! You now know quite a bit about STL and can be undoubtedly called an STL file format expert.
In this final section, we will share some awesome software and resources that you can use for downloading, viewing, editing and repairing STL files.
Fortunately, opening an STL file is not too complicated. There are several free STL file viewers for this purpose, which you can either use online or as a desktop application. Refer to our dedicated guide here: 20 Best Free STL File Viewer Tools of 2018
12.3 Editing and converting an STL file
Yes, it is entirely possible to edit an STL file and convert the STL file to another file format. Because the format is open, there is nothing to prevent you from changing the contents of a file. Actually, the process of editing is quite easy. We have a dedicated article on this topic: 7 Free STL Editors + How to Edit and Repair STL Files
12.4 Repairing an STL file
Remember the section where we discussed the rules that STL files must satisfy? For example, adjacent triangles must share two vertices and the right hand rule applied on the vertices should result in the same orientation as the normal vector. If these conditions are violated in an STL file, then it is broken or corrupt.
There are several programs which can help with repairing a broken STL file. For example, Netfabb Basic is a great tool for repairing the most common STL file problems. You find more information on these programs in our article: 24 Best Free 3D Printing Software Tools of 2018
13. Conclusion
In conclusion, we have learned about how the STL file format encodes the layout of 3D models. We discussed how to optimize STL files for the best 3D printing quality. We talked about how the STL file format compares with the other popular 3D printing file format .OBJ and when to use each of these formats. Finally, we shared some resources using which you can download, view, edit and repair STL files.
We hope that an in-depth understanding of the STL file format helps you become a more knowledgeable user of your 3D printer. If you found this article useful, share it with other 3D printing enthusiasts and spread the word. Do you have some questions or remarks? Let us know in the comments below!
A floating faucet? Sounds interesting, doesn’t it? This 3D printed Magic Faucet is a wonderful project for those who love optical illusions. It’s relatively easy to make and simply amazing to look at.
In our never-ending endeavor to provide users with fun and useful projects to take on during the weekend, we’ve stumbled across a handful of 3D printed fountains to help wash away the boredom. However, we’ve yet to find anything quite like the Magic Faucet created by designer Manuel Arrigoni (who goes by “hazon” on Thingiverse).
This remarkable fountain uses 3D printed parts and components that are commonly found online or at your local aquarium shop to create the illusion of a floating faucet. You can decorate it with different colors and knickknacks, so you can also customize your fountain the way you see fit.
Having some mental blockage and need a 3D printing project to help the creativity flow? Look no further than this Magic Faucet. Let’s take a quick look at what you need and how to build this one-of-a-kind Weekend Project.
3D Printed Magic Faucet: What You Need & How to Build it
You can build your own Magic Faucet with a 3D printer and a few components. There are 12 different parts of the fountain that need to be 3D printed, all of which are freely available on Thingiverse.
Here’s what else you need to create your own Magic Faucet:
Now for the assembly process… The designer has separated the .STL files into two categories: the “faucet” and the “vase” (or base). Once the parts are 3D printed, you can perform some post-processing and spray paint them in the color of your choice.
For the pump cable, you can either run it through the pot or pull it out of the top of the base. Arrigoni has provided different models depending on how you want to situate the pump cable. If you decide to run the pump cable through the pot you should cut it to avoid potential harm from the electric current.
He also notes that the “faucet water diffuse.stl” model must be printed in its pre-determined position with the supports, as this is critical to the functionality of the internal part.
Once everything is 3D printed, use the silicone sealing to connect all of the parts together. The designer also suggests using the silicone to isolate the cable that passes through the faucet’s base.
If you want more information or have questions on this unique Magic Faucet, head over to Thingiverse and drop a comment to the designer. He also provides a hefty amount of photos to help make the assembly process easier.
The Ruiz Brothers of Adafruit are at it again with another fascinating 3D printing project: the 3D printed Crickit Paddle Wheel Boat. This water rover even has an underwater camera mount, so you can capture footage at your end of the summer pool party!
As we enter into the final stretch of the summer, it’s time to soak up the sun and enjoy a refreshing swim to cool down from the heat. Pool parties are a great way to make memories with the friends and family, and now you can also capture your underwater moments with a 3D printed Crickit Paddle Wheel Boat.
Designed by the Ruiz Brothers from Adafruit, this unique water bot makes use of 3D printing, some electronic components and a pool noodle (which keeps the paddle wheel boat afloat). It also has a tripod mount so you can utilize underwater photography with a GoPro camera.
Powered by an Adafruit CRICKIT and Circuit Playground Express, this 3D printed boat also resembles an actual cricket with its googly eyes, especially if you decide to utilize a green pool noodle. Needless to say, this buoyant little critter will keep everyone entertained while you lounge poolside.
Want to take a dive into this project? Let’s take a look at what you need in order to put the Crickit Paddle Wheel Boat together.
3D Printed Crickit Paddle Wheel Boat: What You Need
The STL files for the Crickit Paddle Wheel Boat are available to download via Thingiverse. 3D printed parts include the pool noodle enclosure, wheel props, and enclosures for both the electronics and motors. When printing the watertight mounts for the motors and components, the Ruiz Brothers suggest using NinjaFlex filament.
There are also a handful of electronic components that go into the assembly of the Paddle Wheel Boat. Here’s a checklist of what you need:
If you’re unfamiliar with the Adafruit CRICKIT and Circuit Playground Express, there are a number of resources and tutorials available on the project’s page. Once the parts are 3D printed or acquired and your up to speed with using MakeCode, it’s time to start building the Crickit Paddle Wheel Boat.
There’s a modest amount of soldering to connect the circuitry, but the Ruiz Brothers spell everything out in a simple diagram and instructions. After the connections are made, the next step is to setup the Circuit Playground Express with MakeCode, a programming editor that is both block based and text editor and runs in the Google Chrome web browser.
The assembly process seems to require an ample amount of time, but again, the Ruiz Brothers do a terrific job with their instructions, including photos and GIFs for every step of the way. All in all, this project is ideal for ambitious beginners and seasoned makers that want a fun way to make a splash at the next poolside gathering!
If you want to build the Crickit Paddle Wheel Boat, you can find the full step by step process for the circuitry, coding and assembly on the Adafruit website.
In March, Desktop Metal filed a lawsuit against Markforged for allegedly copying portions of its patented metal 3D printing processes. Last week, a federal jury decided to clear Markforged of both IP infringement allegations, marking a major victory for the defendant.
UPDATE (7/30/18) – Court Clears Markforged of IP Infringement Accusations
Earlier this year, two of the pioneers in metal additive manufacturing squared off in court over accusations of patent infringement. The Massachusetts-based startup Desktop Metal alleged that its competitor Markforged– also based in Massachusetts –had copied two patents relating to their metal 3D printing process.
After a three-week trial concluded on July 27th, a 12-person federal jury reached a verdict clearing Markforged of the charges that it infringed upon Desktop Metal’s Intellectual Property. Court proceedings relating to the five counts of trade and contract violations are still pending and have yet to be settled, but the verdict on IP infringement can certainly be considered as a victory for Markforged.
The lawsuit was initially launched in March 2018 when Desktop Metal accused Markforged of infringing upon U.S. Patent No. 9,815,118, entitled ‘Fabricating Multi-Part Assemblies’, and U.S. Patent No. 9,833,839, entitled ‘Fabricating an Interface Layer for Removable Support’. Shortly after the infringement lawsuit was filed, Markforged CEO Greg Mark came out strongly against the allegations, calling them “far-fetched.”
Both companies have been developing metal 3D printing systems for around the same time, with Markforged unveiling its own three months about before Desktop Metal did. However, aside from having similar aspirations in the metal 3D printing field, there was also an odd familial link between the two companies. Desktop Metal had previously employed a man named Matiu Parangi as a print lab technician. Unbeknownst to them at the time of hiring, Matiu’s brother Abraham Parangi was working as the Director, Technology & Creative at Markforged.
In the lawsuit, Desktop Metal alleged that the former employee downloaded a host of proprietary information relating to IP and processes, sharing them with his brother and thus Markforged, directly violating a Non-Disclosure Agreement that he signed in 2016. While some aspects of the case is still pending, the decision to dismiss the IP infringement charges against Markforged is certainly newsworthy.
All3DP reached out to Desktop Metal and Markforged for comment, and received the following responses.
Markforged’s Statement
“Markforged printers have changed the way businesses produce strong parts while dramatically impacting the delivery times, cost, and supply chain logistics. We feel gratified that the jury found we do not infringe, and confirmed that the Metal X, our latest extension of the Markforged printing platform, is based on our own proprietary Markforged technology,” said Greg Mark, founder and CEO of Markforged.
Desktop Metal’s Statement
“Desktop Metal is pleased that the jury agreed with the validity of all claims in both of Desktop Metal’s patents asserted against Markforged. Desktop Metal has additional claims pending alleging trade secret misappropriation by Markforged. The Federal District Court has bifurcated those counts and will try them at a later date. At Desktop Metal, we remain committed to building on our leadership in the metal 3D printing sector and continuing to provide innovative products and solutions to our hundreds of customers across industries. We are currently reviewing legal options concerning the infringement issue,” Desktop Metal stated.
We will continue to update this story as more information comes to light.
If you’re unfamiliar with the origins of this case, continuing scrolling to read our previous coverage on the case, as well as the public statements issued by both Desktop Metal and Markforged.
This metal manufacturing movement also saw contributions from the likes of Digital Metal and Markforged, the latter of which was already a household industry name for its development in continuous carbon fiber 3D printing.
Interestingly enough, right around the same time that Desktop Metal unveiled its metal 3D printing systems, Markforged also made a public shift into the very same market.
In January 2017, the continuous carbon fiber 3D printing pioneers announced the Markforged Metal X, a metal 3D printer that operates similarly to Desktop Metal’s Studio System. Meanwhile, Desktop Metal had been working on its process since it was founded in 2015, and officially debuted the Studio System and Production System in April 2017.
Desktop Metal’s Studio System
At the time, both Desktop Metal and Markforged were recognized as two prominent trailblazers on the new frontier of affordable metal 3D printing.
But this week, we learned some shocking revelations that seem to have pitted the two companies against one other in the courtroom.
Desktop Metal has launched a lawsuit against Markforged, alleging that the competitor and fellow Massachusetts-based business had copied portions of their patented metal 3D printing process. The official lawsuit, which was filed in the United States District Court for the District of Massachusetts, is leveled against Markforged and an ex-employee of Desktop Metal named Matiu Parangi.
We were intrigued by the case for obvious reasons, and after taking a deeper look at the court documents, discovered a riveting and longwinded history between this pair of 3D printing companies.
Markforged’s Metal X 3D printer
The Unique History Between Desktop Metal’s CEO and Markforged
In the lengthy complaint, Desktop Metal accuses Markforged of infringing on two particular patents. The first is entitled “Fabricating Multi-Part Assemblies” (U.S. Patent No. 9,815,118). This patent refers to Desktop Metal’s method for fabricating a first object from a first material, which includes a powdered material and a binder system.
The second patent is entitled “Fabricating an Interface Layer for Removable Support” (U.S. Patent No. 9,833,839). This patent refers to the support structure system developed by Desktop Metal.
In the recently filed complaint, these two patents are commonly referred to as the “Patents-in-Suit”.
Although the two competitors both unveiled its metal 3D printing technology in 2017, the origins of this story actually start in 2015, the very same year that Desktop Metal was founded by CEO Ric Fulop.
Prior to starting the company, Fulop worked as a General Partner at the venture capital fund North Bridge. According to complaint, Fulop was directly involved with the venture capital fund’s investment in Markforged.
Section 14 of the complaint states:
At North Bridge, Mr. Fulop led the software and 3D investing practices, and was an early stage investor and board member in Dyn (acquired by Oracle for $600 million), Gridco, Lytro, Markforged, Onshape, and Salsify. In the spring of 2015, Mr. Fulop began to the process of winding up his activities at North Bridge and thinking of new projects to pursue.
CEO of Desktop Metal, Ric Fulop
The court filing goes on to state that Fulop informed North Bridge and Markforged on his intention to pursue metal 3D printing, eventually leading to the founding of Desktop Metal. At that time, Markforged’s co-investor Matrix Partner expressed interest in investing in the new metal 3D printing startup, but Fulop opted to accept funding from other investors, and also stepped down from the Board of Markforged. In fact, the two companies even agreed to a review to ensure that Fulop’s plan for Desktop Metal didn’t infringe on Markedforged’s IP, and both sides agreed that it did not.
In April 2016, Desktop Metal filed the first provisional patent application that lead to the two “Patents-in-Suit”. The complaint alleges that, during this time, Markforged remained focused on its continuous carbon fiber 3D printing technology, releasing the Mark 2 3D printer in the same month.
The Hiring of Mr. Parangi: Another Unusual Connection Between Desktop Metal and Markforged
Let’s fast-forward to August 2016, the moment where this story and connection between Desktop Metal and Markforged gets really interesting. Desktop Metal had hired a man named Matiu Parangi to work as a technician on the startup’s “print farm”, which is where parts were 3D printed with prototypical machines.
Section 63 of the complaint explains the depth of sensitive information that Parangi was granted access to:
According to the complaint, in October 2016, Parangi “downloaded documents unrelated to his work on the print farm, including documents relating to Desktop Metal’s R&D strategy and proprietary technology” without the company’s knowledge.
Simultaneously, Fulop had revealed to employees that the company was about to close a financing round. Just one month later, Markforged’s counsel sent a letter to the Desktop Metal CEO to remind him “of obligations asserted to be owed to Markforged”.
Section 17 in the filed complaint reads:
On information and belief, this letter was intended to interfere with the financing of Desktop Metal. Nevertheless, the financing was successful and Mr. Fulop received no further communication from Markforged’s counsel.
In December 2016, Desktop Metal discovered that Matiu Parangi was actually the brother of Abraham Parangi, the “Digital Prophet” / Director, Technology & Creative” at Markforged. One month later, Markforged announced its Metal X 3D printer at CES 2017.
The Studio System was officially debuted by Desktop Metal in April 2017, showcasing the office-friendly 3D printer and its proprietary Separable Supports method, which enables users to remove support structures by hand. The company began shipping Studio System to customers in December 2017.
One year after announcing the Metal X at CES 2017, Markforged exhibited its new metal 3D printer at the very same trade show.
In an article written by 3DPrint.com in January 2018, Jon Reilly, Markforged’s Vice President of Product, was interview about the capabilities of the new Metal X 3D printer. He was directly quoted as stating that “the ceramic release layer sinters right off in the furnace for easy support removal,” in describing the capabilities of Markforged’s metal 3D printing technology.
Desktop Metal clearly believes that Markforged was infringing upon these “Patents-in-Suit” in order to compete with the Studio System. Section 25 of the complaint states:
As Desktop Metal begins shipping its Studio System, Markforged is seeking to compete directly with Desktop Metal by offering its Metal X 3D print system. Based on at least Markforged’s recent disclosures that its Metal X 3D print system uses a ceramic release layer that turns to powder during sintering, Markforged seeks to compete using Desktop Metal’s patented technology protected by the Patents-in-Suit.
Desktop Metal’s Studio System and Production System
Desktop Metal Files Lawsuit Against Markforged: What are the Allegations?
Desktop Metal has filed eight separate counts against Markforged and Mr. Parangi in the recently filed complaint. To gain a better understanding of what the company is alleging, let’s take a brief look at each count:
Count I – Infringement of ‘839 Patent
The first count accuses Markforged of infringing and continuing to infringe on Desktop Metal’s “Fabricating an Interface Layer for Removable Support” patent. This patent pertains to the unique support removal process featured in the Studio System, which uses an interface layer for easy removal.
The complaint states that Markforged has been selling the Metal X 3D printer for performing the same support removal methods Desktop Metal patented without permission.
Desktop Metal believes that this patent infringement was done knowingly, and that Markforged has caused damage and “irreparable injury” to the company.
Section 39 in the complaint states:
On information and belief, Markforged has had actual notice of the ’839 patent at least since Desktop Metal publicly announced its issuance on January 3, 2018, before Markforged exhibited its Metal X printer at CES and before Markforged granted an interview explaining its use of the methods claimed in the ’839 patent. On information and belief, Markforged’s infringement has been willful, as further evidenced by the allegations of 16 misappropriation and unfair competition set forth below. Markforged’s infringement will continue to be willful if Markforged does not discontinue its infringement.
Count II – Infringement of ‘118 Patent
This allegation pertains to the other half of the Patents-in-Suit, entitled “Fabricating Multi-Part Assemblies”. This patent refers to the process of fabricating a first object from a material that includes both powdered material and a binder system. Desktop Metal alleges that Markforged also knowingly infringed upon this patent, making the same argument displayed in Count I.
Count III – Violation of the Defend Trade Secrets of 2016
Count III is leveled against Markforged and Mr. Parangi, who Desktop Metal claims signed a Non-Disclosure Agreement (NDA) while working with the company. The plaintiff accuses Parangi of acquiring trade secrets from Desktop Metal through improper means and disclosed them, therefore violating his NDA and obligations to his employer.
This allegation is summed up nicely in Section 77 of the complaint:
As a direct and proximate result of Mr. Parangi’s and Markforged’s misappropriation of trade secrets, Desktop Metal has suffered and will continue to suffer irreparable harm and other damages, including, but not limited to, loss of value of its trade 26 secrets. Desktop Metal is therefore entitled to civil seizure of property, injunctive relief, monetary damages for its actual losses, and monetary damages for unjust enrichment where damages for its actual losses are not adequately addressed.
Count IV – Trade Secret Misappropriation
Similar to the Count III, the following allegation refers to the misappropriation of Desktop Metal’s trade secrets, and is again leveled against both Markforged and Parangi. Here, the plaintiff expounds about the economic value that Desktop Metal’s trade secrets have, and that the ex-employee stole or unlawfully took these secrets and passed them onto his brother’s company.
Count V – Unfair or Deceptive Trade Practices
Count V alleges that both Markforged and Parangi engaged in unfair or deceptive trade practices through Desktop Metal’s Proprietary Information. The complaint states that Mr. Parangi assisted Markforged “to develop a directly competing product in the 3D metal printing field”, and that the defendant (Markforged) “knowingly received the benefits from the disclosure” of this information.
Count VI and VII – Breach of Contract (NDA)
These two counts focus strictly on Parangi, discussing the belief that the ex-employee knowingly violated the NDA, non-competition, and non-solicitation agreements that he had signed while working with Desktop Metal. Due to this alleged breach of contract, the plaintiff believes that Desktop Metal “has been and will continue to be irreparably harmed”. Therefore, the company believes it is entitled to injunctive relief and damages for these counts.
Count VIII – Breach of the Covenant of Good Faith and Fair Dealing
This final count is also focused on Parangi, once again covering the “breaches of his contractual obligations and his improper use and/or disclosure of Desktop Metal’s Proprietary Information”. In Section 117, the plaintiff explains:
In Conclusion: Which Way Will the Gavel Fall?
We’ve reached out to Desktop Metal and Markforged for comment, and are still awaiting a response from both parties. Of course, we will continue to update this story as more information comes to light.
In the complaint, Desktop Metal requests that the Massachusetts Court takes a number of actions in favor of them and against Markforged and Parangi. These actions include:
A declaration in favor of Desktop Metal for each count.
Preliminary and permanent injunction preventing Markforged from continued infringement of the two patents.
Compensation for any current or future profits that Markforged has achieved as a result of the alleged breaches.
An award of three times the actual damages for Markforged’s unfair trade practices.
Civil seizure of property incorporating Desktop Metal’s trade secrets.
Until then, we can only speculate on how this strange case will play out. However, what we do for sure is that the connection between Desktop Metal and Markforged goes far beyond the two companies being located in Massachusetts and involved with metal 3D printing technology.
Stay tuned as this story develops…
UPDATE (3/21 at 11:15 EST)
A few hours after reaching out to Desktop Metal for a comment, we received a background statement from the company. Because the case is now in litigation, the company was unable to provide any further comments. Here’s the full statement released to All3DP:
Desktop Metal has filed a patent infringement lawsuit in the United States District Court for the District of Massachusetts to protect the Company’s intellectual property from unauthorized use by Markforged. The lawsuit alleges Markforged’s Metal X 3D printer violates two Desktop Metal patents related to interface layer and separable support strategies for printing 3D metal parts, as well as trade secret misappropriation.
The lawsuit is based on U.S. Patent Nos. 9,815,118 and 9,833,839 that were granted to Desktop Metal in 2017 covering the Company’s interface layer technology for both its Studio System™, the first office-friendly metal 3D printing system for rapid prototyping, and Production System™, the only 3D printing system for mass production of high resolution parts. This technology makes it possible to print support structures that do not bond to parts and consolidate during sintering, as well as assemblies that do not consolidate during sintering.
In addition to the two patents covering the interface layer and Separable Supports™ technology, Desktop Metal has a portfolio of 100+ pending patent applications covering more than 200 inventions.
Desktop Metal was founded in October 2015 by CEO Ric Fulop and a group of the world’s leading experts in advanced manufacturing, metallurgy, and robotics, including 4 MIT professors, seeking to create a new category of metal 3D printers. Mr. Fulop has a long history as a successful entrepreneur and was an early stage investor and board member for a number of 3D printing startups, including Markforged. In the summer 2015, Mr. Fulop discussed with Markforged his intent to pursue untapped opportunities in metal 3D printing, and thereafter left the board to launch Desktop Metal. At that time, Markforged was not in the metal 3D printing business.
“Metal 3D printing is an exciting, quickly growing and rapidly evolving industry and, as a pioneer in the space, Desktop Metal welcomes healthy and vibrant competition,” said Mr. Fulop. “When that competition infringes on our technology, however, we have a duty to respond. We believe Markforged products clearly utilize technology patented by Desktop Metal and we will do what is necessary to protect our IP and our Company.”
“Desktop Metal has invested significant resources in developing innovative additive manufacturing technologies for metal 3D printing and our intellectual property portfolio reflects the hard work of our engineers and scientists,” said James Coe, General Counsel of Desktop Metal. “We owe it to our customers, employees and shareholders to protect the ground-breaking nature of our technology and preserve that investment so we can continue to promote innovation.
Shortly after we received the response from Desktop Metal, a company spokesperson for Markforged also responded to our inquiry with a brief statement that “Markforged does not discuss ongoing legal matters publicly”.
I founded Markforged in my kitchen six years ago. I dreamt of giving every engineer the ability to 3D print real, functional, mechanical parts. We invented something that had never existed before – a continuous carbon fiber 3D printer. Our Metal X product is an extension of that platform.
We’ve come a long way. We now have the most advanced technology platform in 3D printing, and I’m incredibly proud of what our team of engineers have accomplished.
On Monday, a competitor filed a lawsuit against us, including various far-fetched allegations. Markforged categorically denies these allegations and we will be formally responding shortly in our own court filing.
Markforged is a thriving business with a dedicated team of passionate people, and we’re going to continue to execute and deliver amazing products to our customers.
Need some affordable scientific equipment to experiment and make a breakthrough discovery? This 3D printed open source laboratory rocker is a terrific tool for biological and molecular mixing applications.
In the scientific setting, a laboratory rocker is used as a mixing device for various biological and molecular applications. It consists of a tray mounted on top of a base, which contains the electronics and motor that control the speed and tilt angles of the platform.
This 3D printed lab rocker was designed by biomedical engineer and designer Akshay Dhamankar. It’s a variable speed, two-dimensional device that moves back and forth to create waves in liquid samples at mild to moderately aggressively rate. The design uses a changeable apparatus rack that can either hold a test tube or beaker.
While this 3D printed lab device sounds a bit difficult to put together, Dhamankar lays everything out in a few simple steps. If you’re a researcher on a budget who wants to spruce up your wet lab, bring some science home, or just take on a fun and educational project, this open source laboratory rocker is worth a look.
The creator of this project lists a number of applications that this lab rocker can be utilized for, including biological and molecular mixing, aggressive agitation of a biological mixture, PCB etching via Ferric Chloride bath, and even for mixing paint and thinner.
“It is my sincere hope that my design and contribution will help out many of the research personnel, small labs, wet labs etc. who plan to incorporate laboratory equipment like this with a tight budget,” the designer writes on Thingiverse.
3D Printed Open Source Laboratory Rocker: What you Need & How to Built it
The purpose of this open source project is to provide access to researchers and scientists on a tight budget, so the components needed to build your own lab rocker aren’t too costly. Aside from your 3D printer and material, here’s what else you need:
There are 10 different STL files you’ll have to 3D print for this project, which the designer recommends using 25 percent infill for. Once you’ve printed the parts out, the rest of the assembly process is relatively straightforward.
Following along schematics and provided photos, you need to connect all of the electronic components and situate them inside of the 3D printed base.
Dhamankar uses super glue to mount the skateboard bearings in the various slots that are embedded in the 3D printed parts. He also suggests using a thick silicone rubber sheet (3mm) on the surface of the ‘Single Piece Beaker Tray’ to act as an anti-slip mat.
Summertime is here, and what better way to spend it then by lounging outside by a refreshing body of water. Take your enjoyment of the outdoors a step further by becoming the captain of your own 3D printed WiFi Paddle Boat, designed by Greg Zumwalt.
When the heat of the summer hits, we all want to flock to the nearest pool or lake to cool off. Just because you’ve decided to get off of the computer and outdoors doesn’t mean you can’t utilize WiFi for some recreational fun. At least that’s what we’ve learned from maker and designer Greg Zumwalt, who recently shared his 3D printed WiFi Paddle Boat on Instructables.
The WiFi Paddle Boat is controlled use WiFi via a smart phone, tablet, or any other touch enabled device. The designer explains that his boat creates a WiFi access point that you can connect directly to. From there, you can navigate the ship from his WiFi Paddle Boat webpage.
This project offers a great way to entertain the kids or even yourself this summer, and is a bit complex but also undeniably awesome. Think you’re up for the challenge? Let’s take a closer look at this project to see whether you’re seaworthy or not!
3D Printed WiFi Paddle Boat: What You Need & How to Build
This is a pretty complex project that requires a wide range of 3D printed parts, components and also some soldering. However, don’t get discouraged, as Zumwalt lays out the entire project in detail on his Instructables page. We’ll give a quick overview of what you need and how to build the WiFi Paddle Boat.
For printing, the designer shares the STL files for three versions: the base model, detailed model and another for those that have a dual extrusion 3D printer. Depending on which model you choose, you’ll need to print anywhere from seven to ten parts. You should also test fit and trim, file, and sand the 3D printed parts prior to assembly. The STL files can be downloaded directly from Instructables.
Here’s the rest of the checklist for this project:
Main Components
Additional Tools
Once you’ve gathered your supplies and printed the parts, it’s time to start the assembly process. The instructions are bit lengthy, so we’ll just spell out the basics for you. After preparing the 3D printed parts for assembly, you’ll have to program the Heltec WiFi Kit 32 board. The WiFi Paddle Boat was written in the Arduino environment for the ESP32 chip, and Zumwalt shares the libraries and everything else you need on the project page.
Next, there’s some wiring required, so you’ll need to have a soldering iron and solder on-hand. The maker shares each step on Instructables, but to give you an idea of the complexity level, here’s a photo of the wiring:
Finally, once the wiring is complete, it’s time to assemble the WiFi Paddle Boat. There are a number of steps to take in order to put everything together, making this project more ideal for seasoned makers. However, if you’re feeling ambitious enough, a determined beginner can also follow along with Zumwalt’s step-by-step instructions. You can find the lengthy assembly process on Instructables, along with detailed photos and videos showcasing how to build and test your 3D printed ship.
Instructables user and designer 3DSage has unveiled an amazing 3D printed Levitation Device that you can make at home. It’s a crazy contraption that uses a magnet to make objects float before your very eyes!
For many of us, childhood was marked by amazement when we witnessed our favorite superhero defy the laws of gravity and levitate to the rescue. The concept of levitation is one that seems highly technical or even impossible to some. But that couldn’t be further from the truth, and we’re here to show you how.
One maker named 3DSage has proven that you can bring this phenomenon to reality with your 3D printer and a few components. That’s right…You can make your own Magnetic Levitation Device at home! It might sound like a daunting task, but this project is actually quite easy for beginners and advanced makers alike.
This project is designed for those who lack experience with electronic circuitry and soldering, so don’t be intimidated by the end result. You will need to 3D print a few parts and obtain and handful of components to assemble this Magnetic Levitation Device, so let’s take a closer look at this incredible Weekend Project!
3D Printed Magnetic Levitation Device: What You Need & How to Build
There are eight different parts that need to be 3D printed, all of which are available to download on Thingiverse. The designer suggest printing the parts with 20 percent infill, no support structures necessary. When printing the spool holder parts, 3DSage recommends using a slow print speed.
Other than the STL files, here’s what else you need to create your own 3D printed Magnetic Levitation Device:
Once you have all of your materials, it’s time to get started on the assembly process. 3DSage begins with the 3D printed spool holder and magnet wire. First, place the small 3D printed spool holder inside of the larger one, adding the 4x15mm screw on top. Insert a couple of inches of the wire through the small hole closest to the center of the spool holder and wind the wire tightly.
The next step is the breadboard circuit, which the designer has made as simple as possible. Here’s a diagram to help you follow along:
You have to place the hall sensor in the exact right position to make this levitation device work properly. This is why 3DSage made a breadboard holder so that you can move it around and tune it accordingly. The designer goes into the assembly process in more depth on YouTube, so if you want to learn more about how to created a levitation device, check out the video below!
Give your home an aquatic feel with these incredible 3D printed DIY Voronoi Jellyfish lights created by German maker and Thingiverse user UniversalMaker3D.
Who needs IKEA when you have your very own 3D printer? Okay, well sometimes it’s nice to buy some new furnishings and chow down on those Swedish meatballs, but you can also go the DIY route and produce your own stylish and decorative objects to spruce up the home. One common use for 3D printing is to create custom lighting fixtures, and we’ve seen a myriad of great ideas across the maker-sphere.
German student and Thingiverse user UniversalMaker3D has recently designed free-floating Jellyfish lights. The design is inspired by the mathematically-driven design concept of Voronoi, which provides a complex structure to the 3D printed sea creature.
The Voronoi design gives a coral reef-like impression, adding to the oceanic vibe that these jellyfish lights conjure up. The 3D printed shell is embedded with a number of tiny holes, creating a jaw-dropping lighting effect on your walls. Add some tentacles to the mix and you’ve got yourself a lighting fixture that will have you feeling as if you’re living under the sea.
3D Printed Voronoi Jellyfish: What You Need & How to Build it
Since the jellyfish-like lighting enclosure is designed in the complex Voronoi style, you’ll need to use supports when 3D printing the base of the model. UniversalMaker also shares the STL files for the tentacles and other parts, all of which are freely available on Thingiverse.
Aside from your 3D printer, filament and the 3D model, there’s still some other components you’ll need to make your sea creature lamp light up. Here’s the checklist:
Once you have your 3D printed jellyfish body and tentacles, along with all of the necessary electronic components, it’s time to put everything together. Take the LEDs and run them through the bottom of the 3D printed top and connect it via the switch to the battery.
The 3D printed top and bottom sections are designed to slide perfectly over each other, but might require a bit of sanding. Finally, mount the jellyfish with the cables, which are used to activate the LEDs. That’s about it as far as assembly goes! If you want to catch a visual of how awesome these 3D printed jellyfish lights look, check out the designer’s instructional video below.
Should you fear 3D printed guns? Read our 2018 3D printed gun report to learn about the latest news, laws and actual threats to help you sort facts from fears.
BREAKING NEWS UPDATE (7-12-2018):After taking the U.S. government to court, Cody Wilson and Defense Distributed have reached a settlement that will allow the organization to re-upload 3D printable gun models to their website. Learn more about this potentially landmark decision on All3DP.
Both makers and lawmakers around the world have taken notice of 3D printed guns. Regardless of intention, their efforts to stifle the use of 3D printed firearms have given rise to a number of difficult questions.
Should someone with the files for a 3D printed gun be charged with the same crime as someone that actually has the gun? Has the media sensationalized the rise of 3D printed guns? What’s the best way to regulate 3D printed weapons? And most importantly, should you fear 3D printed guns?
To answer these questions, we will examine the reasons why you should and shouldn’t fear the 3D printed gun, explain the history, and then go over the laws that have been put in place to stop them.
The 3D Printed Gun: All You Need to Know Right Now
Exhibit A: The Liberator
Reasons to Fear & Not to Fear 3D Printed Guns
There are valid arguments for why you should and shouldn’t fear 3D printed guns, making this quite the loaded issue. To offer a fair and balanced view on this controversial topic, we’ll offer reasons on both sides of the 3D printed gun debate to help you decide for yourself.
Why You Should Fear
From CNN to Gizmodo, mainstream media outlets have focused more on 3D printed firearms than any other innovative application of this wide-ranging technology. But where does this fear stem from?
Perhaps what stirs this fear isn’t the functionality of these homemade weapons, but the ease of creating one without anyone knowing. Many states in the U.S. and other countries throughout the world have strict gun control laws. Generally speaking, those who are allowed to own a firearm must have it registered. But with 3D printed guns, people fear that criminals and other unstable people will be able to produce firearms at home and commit crimes with it.
Although the current state of desktop 3D printing doesn’t necessarily allow high-quality firearms to be manufactured at home, this could also change as the technology advances. For instance, as metal 3D printing becomes more affordable and accessible, the potential to create higher-grade weapons could grow.
Another valid fear is that 3D printing could lead to cheap firearm factories for criminals. But again, having a gun 3D printed in metal would cost thousands of dollars, making it more convenient for criminals go to through other illegal channels to find one.
Needless to say, it’s not a 3D printed gun that should be feared. If anything, it’s the idea of being able to manufacture firearms unchecked that really drives this frenzy forward.
Why You Shouldn’t be Concerned
It’s quite easy to produce a plastic firearm with the proper 3D files and desktop printer. But this homemade 3D printed gun is far from reliable when it comes to functionality. In fact, police testing has proven that a 3D printed gun could endanger the shooter as much as anyone else.
A firearm produced with ABS material could break apart or even potentially explode in the hands of the user when fired. Softer PLA will likely cause the parts to bend or deform after firing.
Realistically, neither ABS or PLA is ideal for producing firearms. While most 3D printed guns are made using ABS, chances are only a single shot will be able to be fired before it either breaks or fails. The reason for this is because the act of firing a bullet simply exerts too much power for most thermoplastics to withstand.
Some gun enthusiasts have created hybrid 3D printed guns, consisting of traditional metal components and thermoplastics. In theory, these firearms should offer much better functionality than an ABS-based weapon. But again, building a hybrid 3D printed gun seems counterproductive to just finding an actual one.
Lastly, metal 3D printing can and has been used to produce a fully functional firearm. There’s no denying this. But, these type of prints are extremely costly, and it makes no sense for a criminal to go to a metal 3D printing service instead of finding a cheaper and more discreet way on the black market.
This also helps to quell the fear that a 3D printed gun would be able to slip through a metal detector, seeing that at least a metal firing pin would be needed to make the makeshift firearm functional. 3D printed guns that are comprised primarily of thermoplastic are extremely ineffective and thus aren’t worth the trouble of manufacturing cases where they will be used in a menacing way.
Essentially, there is no reason to fear a 3D printed gun any more than you would a traditionally manufactured one. In fact, in the United States, actual firearms are easier to get and are much more lethal. There are approximately 300 million firearms spread across the U.S., making the potential 3D printing gun epidemic pretty pointless.
As you will see later in this article, the threat level of a 3D printed gun is much higher in places with strict gun control, especially Australia.
A Brief History of the 3D Printed Gun
The 3D printed gun components that make up the Liberator.
The world’s first functional 3D printed gun was designed back in 2013 by Cody Wilson, a crypto-anarchist and the founder of the Texas open source gunsmith organization Defense Distributed. The 3D files for this one-shot pistol were the first to be released into the world. They sparked an unprecedented controversy that still looms over the 3D printing community to this very day.
After the files for the Liberator were downloaded over 100,000 times in two days, the US Department of State compelled Defense Distributed into taking the model down. This demand has sparked an ongoing legal battle between the techno-anarchist and government.
Most of the 3D printed guns that have surfaced thus far are pistols. But even semi-automatic weapons have been released by Defense Distributed – and confiscated by police.
As 3D printed gun blueprints are distributed by the internet, they have been found across the world, from Australia to Japan, Europe to the Americas. These makeshift firearms have found their way into the hands of police, criminals, and libertarians alike.
Since the release of the Liberator, many government bodies have been scrambling to impose laws that would strictly prohibit 3D printed guns, and in some cases even 3D models of firearms.
Nowadays, additively manufactured weapons remain an unknown threat, but countries like Australia and the United States are not wasting any time in fear-mongering and passing laws.
Most 3D printed guns are based off previously existing designs. Most of them are freely available to download, but also hard to find due to increasing illegality. But when Defense Distributed’s Liberator first hit the scene, it proved that a firearm could be produced almost entirely out of thermoplastic material.
Every component of Wilson’s Liberator was 3D printed except for the metal firing pin and the actual bullet. As you can see in the photo below. The Defense Distributed founder has also created an automatic weapon that is not fully 3D printed but is equipped with additively manufactured components, in the past.
Since then, Wilson has continued on his campaign to put DIY firearms in the spotlight. After his 3D model was forced off the internet, Defense Distributed released the Ghost Gunner, a desktop CNC milling machine designed to manufacture guns. At first, the machine was only capable of producing the lower receiver component for an AR-15. However, Wilson recently upgraded the Ghost Gunner software to make it capable of creating the aluminum frame of a M1911 handgun.
While Wilson believes that he is advocating for gun rights by making firearm production more accessible and undetectable, others have grown worried about this technology getting into the wrong hands. Across the world, countries are passing laws that equate 3D printed guns with traditional firearms. In some places, even having the 3D model for a firearm would be considered possession of an illegal weapon.
Now that we’ve shared a brief history of 3D printed guns with you, let’s take a look at the laws that have been drawn up to prevent people from 3D printing their own firearms.
Defense Distributed wants the 3D printed gun to be treated the same as regular weapons in the US (image: Marisa Vasquez)
3D Printed Gun Laws in the United States of America
After the Liberator was deemed in violation of the International Traffic in Arms Regulations (ITAR), Wilson filed a federal civil suit against the State Department. To this very day, Wilson is still fighting for his right to publish his 3D printable firearm files.
In September 2016, the United States Court of Appeals for the Fifth Circuit rejected his preliminary injunction request, claiming that national security concerns outweigh Defense Distributed’s First Amendment right to freedom of speech.
Even though the State Department has succeeded to keep 3D gun files illegal in court, Wilson’s design and a handful of others have seeped through the cracks of the internet. There have been a number of instances where 3D printed guns have been confiscated by police the US.
In August 2016, Transportation Security Administration (TSA) at the Reno–Tahoe International Airport found a 3D printed gun and five .22-caliber bullets in a passenger’s carry-on bag. The year prior, two felons in Oregon were caught with an assault rifle that had a 3D printed lower receiver attached to it.
It is illegal under the Undetectable Firearms Act to manufacture any firearm that cannot be detected by a metal detector. 3D printed guns are usually made from PLA or ABS and are therefore not allowed in the US, as legal designs for firearms require a metal plate to be inserted into the printed body.
Some states that allow firearm ownership have taken up the issue of 3D printed gun themselves. For example, California passed a law that requires a 3D printed gun to be properly approved and registered. But with relatively lax gun laws in a number of US states, 3D printed guns have proven to be a more glaring problem in Australia, which has much stricter anti-gun legislation.
All in all, when it comes to producing or obtaining weapons in an unlawful manner, 3D printing is far from preferable, at least in the current state of the technology. Criminal organizations may look towards 3D printing more often as the technology advances, but for now, most of the fear seems unjustified. At the end of the day, where there’s a will, there’s a way.
3D Printed Gun Laws in Australia
Exhibit B: A haul by the New South Wales Police in Australia
No country has encountered as much legal trouble with 3D printed guns as Australia has. Their strict firearm legislation has limited the access to traditional weapons. So some have turned to 3D printing to help circumvent the law.
In November 2016, Gold Coast police discovered a highly sophisticated weapons production facility that used 3D printers to produce machine guns. A month later, a collection of 3D printed firearms were seized in Tasmania, but the manufacturer was let off with a warning. Perhaps Australia’s most concerning case, police recently linked the discovery of 3D printed guns in Melbourne to the Calabrian mafia.
To combat the rise of 3D printed guns, New South Wales passed a law equating possession of 3D gun files to actual possession of a 3D printed gun. Some of Australia’s Senate members have their doubts about 3D printed guns being an imminent threat, and that further restrictions would hinder 3D printing innovation overall. The country’s Green Party has been a staunch opponent to 3D printed guns, citing the growth of the technology as proof that 3D printing will be capable of producing more dangerous weapons soon.
In 2013, New South Wales police tested out a 3D printed gun. With this handgun, they were able to fire a bullet 17 centimeters into a standard firing block, but the plastic exploded when the bullet was discharged.
In 2015, the county amended its firearms act to include a clause that says “A person must not possess a digital blueprint for the manufacture of a firearm on a 3D printer or on an electronic milling machine… [or face a] Maximum penalty: imprisonment for 14 years.”
But the situation in Australia is trickier than most. The glaring amount of confiscated 3D printed weapons seems to be linked to the country’s strict laws, making traditional metal firearms much more difficult to come across than they are in the US. It’s important to note that while a plastic 3D printed gun poses a minimal risk, most Australian legislators fear the increasing accessibility and affordability of metal 3D printers will come back to haunt them.
3D Printed Gun Laws in Europe and United Kingdom
Contrary to Australia, the strict gun control laws in Europe have reduced the threat of 3D printed guns. Still, when you look at the regions that downloaded the Liberator files the most, you’ll find that most of the leading countries are located in Europe. During the two initial days Wilson’s infamous 3D printed gun was available online, it was downloaded the most in Spain, followed by the US, Brazil, Germany, and the United Kingdom.
The United Kingdom has been particularly concerned with the rise of 3D printed guns, calling them a threat to national security. In 2013, theUK Home Office introduces stricter regulations on 3D printed guns or gun parts, making it highly illegal to create, buy, or sell them in Great Britain.
Thus far, the threat of 3D printed guns in Europe has mostly been confined to television. The Italian crime TV series Gomorra recently depicted a RepRap 3D printer being used to create a 3D printed gun.
3D Printed Gun Laws in Asia and the Middle East
The ZigZag pistol from Yoshitomo Imura.
The 3D printed gun controversy isn’t just restrained to the western world. Shortly after Wilson’s design surfaced, Japanese citizen Yoshitomo Imura designed and printed a six-shot revolver known as the ZigZag. The government ended up sentencing him to two years in prison for 3D printing guns and also instructing others.
China has also taken extreme measures to monitor and prevent 3D printed guns and other weapon from surfacing. Police in Chongqing are requiring all companies with 3D printers to register themselves as “special industries”, asking for the equipment in use, the security measures they have in place, and even information on all employees.
While police in China certainly fear the potential rise of the 3D printed gun, other citizens feel that the law is an overreaction. According Kwok Ka Wai, assistant professor in the mechanical engineering department at the University of Hong Kong, there are practical limitations on using 3D printing to manufacture weapons or other items protected by copyright.
“There are a lot of tools that you can use to make bad things, but they are not tailor-made for that purpose,” he says.
Although they’re the most focused on, 3D printed guns are far from the only weapon that 3D printing can potentially be used to manufacture. Concerns have also mounted in the Middle East over the possibility that ISIS is using 3D printing to produce bombs.
3D Printed Guns on the Dark Net
With the distribution of 3D gun models illegal across the world, these 3D gun models have found a home on the dark net. Sold alongside traditionally manufactured firearms and other black market weapons, 3D printable gun designs are being distributed more and more through the deep web.
A recent study from the non-profit research organization RAND Corporation discovered a startling rise in 3D gun models. While looking at the entire dark net market for weapons, the researchers found that 11 of the for-sale items were CAD files for firearms.
Now, it’s clear that CAD models are still way less threatening than the physical firearms sold on the black market, but the mere presence hints at a potentially dangerous situation in the future. What stood out the most to the RAND research team is the average cost of 3D gun models. While the average gun costs $1,200 on the dark net, a price for a 3D printable gun design averages out to $12.
Not only is the cost for these CAD models extremely low, but such files can be sold over and over again. Therefore, if and when the day comes where metal 3D printers become more affordable, it’s possible that this minor issue could start to loom larger.
The 3D Printed Gun: Conclusion
There’s no denying that 3D printed guns are being discovered in different parts of the world. They are getting more popular in Australia and US. But are these makeshift weapons really the treat the media portrays them to be? Ultimately, the answer seems to be yes, but more so no.
The current lack of access to affordable metal 3D printing makes producing a functional 3D printed gun solely with plastic difficult. But for most firearm components, this emerging technology could soon become a viable option for gunsmiths, gun advocates, and even criminal organizations. Also, the materials you can 3D print with are getting better and better.
At this point, there have been no violent crimes attributed to a 3D printed gun. But still, a more realistic threat will likely arise when access to metal 3D printingincreases in the near future.
At the moment, it’s easy to dismiss anti-3D printed gun legislation as overreaching and embellished. But that doesn’t mean that various laws preventing the production and sharing of 3D printed guns don’t have any merit. Just as with any other youthful technology, 3D printing will continue to advance and become more affordable.
Needless to say, the fear-mongering campaign on 3D printed guns is way overblown, especially for the time being. While this emerging technology is providing incredible benefits to the medical, industrial, and consumer sectors, all the mainstream media seems interested in is making it seem like weapons are falling out of your 3D printer’s extruder.
At the end of the day, there’s no reason to fear a 3D printed gun any more than you would a conventionally manufactured or CNC milled firearm. Desktop 3D printers are not capable enough to create a lethal weapon on their own, and metal 3D printed guns are far too expensive to appeal to criminals.
There’s a reason that no violent crimes involving 3D printed guns have been reported. They’re unreliable, difficult to produce, and in most places, are harder to come across than a black market firearms. Regardless of your view on the right the bear arms, there’s no reason to lump in a technology that does much more good than harm.
In the world of fashion, 3D printing has opened the door for a whirlwind of new looks and styles, and designers have leveraged this technology to showcase just how unique their concepts can be.
Fashion design Ganit Goldstein, a fashion design graduate from the Bezalel Academy of Arts and Design in Jerusalem, has recently unveiled a collection of 3D printed clothing and shoes.
Goldstein’s “Between the Layers” collection consists of seven outfits and six pairs of shoes, all of which were created using 3D printing. By bridging the boundaries between modern manufacturing technology and traditional fashion design, Goldstein has created a range of unique pieces. The collection is a part of Goldstein’s graduation project, fusing additive manufacturing with traditional crafts such as weaving.
“My work begins with the design and production of digital objects that serve as a three-dimensional object. […] I then weave handmade threads in a unique manner to each object,” she explained in an email.
The inspiration behind this collection arose when Goldstein visited Japan as part of an exchange program at the Tokyo University of the Arts. During her stay abroad, she had the opportunity to learn a traditional Japanese textile technique called IKAT weaving.
Upon her return to Israel, she began to develop a weaving process using an Orginal Prusa i3 Mk3 3D printer. She then finished off the designs by adding hand-woven layers.
Intel collaboration highlights process behind the designs
Goldstein also worked in collaboration with the tech giant Intel, using the company’s 3D scanning technology as a part of the project. Specifically speaking, she developed an Augmented Reality app that showcases the process behind his 3D printed shoes and clothing.
One of the shoes in the collection was produced with the Stratasys Connex 3 printer. The latter provides multi-color printing capabilities.
“My work begins by examining the characteristics of the material, the qualities with which I can work with,” she explained. “Working with 3D software gives me the freedom to test which boundaries can be broken. [It provides] the understanding that the connection to the traditional craft material will create a completely new essence to the original material. For example, the technique of 3D layer printing allows me to re-examine which layers can be added and what new connections I can create.”
Overall, the final collection accomplishes an interesting balance between modern technologies and traditional fashion design.
Roll through the upcoming workweek in a servo-driven 3D printed Tiny FPV Tank. This RC model comes equipped with a camera, LEDs, and uses Lego threads to roll around.
Spearheaded by projects like OpenRC, the team here at All3DP definitely noticed an increase of interest in using 3D printing to create remote-controlled cars, planes, drones and boats. While we’ve featured a handful of these fun hobbyist-type projects in our Weekend Project series, few of them pack a compact punch like this Tiny FPV Tank designed by Thingiverse user RotorGator.
Not only is this servo-powered tank small, it also implements Lego threads, a tiny FPV camera and LEDs. It might not be battle-ready, but this miniaturized tank will provide you with a fun way to inconspicuously cruise around and film all of life’s top-secret missions.
Let’s take a look at what you need to put together your own 3D printed Tiny FPV Tank.
3D Printed Tiny FPV Tank: What You Need & Putting it Together
This Tiny FPV Tank is comprised of a handful of 3D printed parts, but RotorGator has split the body into six sections: the chassis, frame, two drive wheels, two non-drive wheels, two non-drive spacers and the FPV camera mount. Use of support structures is only necessary for a few parts if you decide to print them whole, otherwise you can go support-less by printing the wheels and frame in halves.
Although the body of this tank is heavily based around 3D printing, you’ll still need a handful of components to put this armored vehicle into action. Here’s what else you need besides your 3D printer:
The details on the assembly process are sparse, but the build seems relatively easy. Here’s how the designer lays things out on the Thingiverse page.
Once you have the parts 3D printed, remove any supports before you start putting it together. Cut off the servo arm in order to fit it snugly into the driven wheel and attach it using the supplied screw. Using M3 bolts and spacers, mount the non-driven wheels. If you decided to print the parts in halves, use super glue to put them together. The 3D printed frame and chassis should snap together quite easily. Finally, use a bit of super glue to attach the FPV pod to the top of the tank’s frame.
G-code is the programming language of your 3D printer. In this tutorial, you’ll easily learn all G-Code commands.
Using G-code, a computer tells a printer when, where, how to move and how much to extrude throughout the entire print process.
If you have never dealt with it so far, that’s normal. Slicers like Cura and Simplify3D generate G-code “automagically” from CAD models, so most users never see or program a single line of code. However, if you want to develop a deeper understanding of 3D printing, it is essential to know about this programming language.
A knowledge of G-code commands will give you 3D printing superpowers. People who this are able to troubleshoot their printers better, control every aspect of the print process and identify and prevent print failures much before they happen.
If that sounds interesting, this post is for you. Our aim is to get you started with the basics. After reading this post, you will be able to:
Read and understand G-code commands
Write it yourself and test it online
Use the preview functionality of Slicers to troubleshoot complicated prints
Let’s get started!
What are G-code Commands?
G-code stands for “Geometric Code”. Its main function is to instruct a machine head how to move geometrically in 3 dimensions. However, it can also instruct a machine to do non-geometric things. For example, G-code commands can tell a 3D printer to extrude material at a specified extrusion rate or change its bed temperature.
In formal terms, it is a numerical control programming language. For those who know how to program, it’s an easy programming language. It is rudimentary and does not have advanced constructs like variables, conditionals, and loops.
For those who don’t know about programming languages, you can think of G-code as sequential lines of instructions. Each line tells the printer to do a specific task. The printer executes the line one by one until it reaches the end.
How to read G-code Commands
So, how does a line of code look like? Here is a typical example:
G1 X-9.2 Y-5.42 Z0.5 F3000.0 E0.0377
This particular line tells the printer to move in a straight line towards the destination coordinates X=-9.2, Y=-5.42, and Z=0.5 at a feed rate of 3000.0. It also instructs the printer to extrude material at a rate of 0.0377 while it is moving.
How did we read and interpret that? It’s quite easy. Every line starts with a command. In this case, the command is G1.
G1 X-9.2 Y-5.42 Z0.5 F3000.0 E0.0377
It means “move in a straight line in a controlled fashion”. You can look up the meaning of every G-Code command in a table that we have provided at the end of the article. We will also go through the most important G-Code commands in a later section.
The code snippets that appear after the command are called arguments.
G1 X-9.2 Y-5.42 Z0.5 F3000.0 E0.0377
Each argument tells the printer about how to execute the command. The arguments start with an English letter and then specify a value. For example, X-9.2 means a destination X coordinate of -9.2. F3000.0 means a Feed rate(F) of 3000.0. E0.0377 means an Extrusion rate(E) of 0.0377.
Try reading the following line of code now.
G1 X5 Y5 Z0 F3000.0 E0.02
If you interpreted it to mean “move towards X=5, Y=5, and Z=0 in a straight line at a feed rate of 3000.0 while extruding material at the rate 0.02”, then you have already learned how to read G-code commands!
G-code commands which start with the letter G are geometric commands. They tell the printer head how to move, but this is clearly not enough to control all aspects of a 3D printer. What if you needed to tell the printer to turn the motor off or raise the bed temperature? For these non-geometric tasks, G-code implementations also define another set of commands which start with the letter M. They are aptly called M Codes. For example, the command M140 sets the bed temperature, and the command M190 tells the printer to wait for the temperature to reach the target.
Each English letter that you encounter in the code will have a specific meaning. For example, we learned that G means a geometric command, M means a non-geometric command, X means the X coordinate, Y means the Y coordinate, F means Feed rate and so on. For your reference, here’s a table with the meaning of every letter.
Code
Information
Gnnn
Standard GCode command, such as move to a point
Mnnn
RepRap-defined command, such as turn on a cooling fan
Tnnn
Select tool nnn. In RepRap, a tool is typically associated with a nozzle, which may be fed by one or more extruders.
Snnn
Command parameter, such as time in seconds; temperatures; voltage to send to a motor
Pnnn
Command parameter, such as time in milliseconds; proportional (Kp) in PID Tuning
Xnnn
A X coordinate, usually to move to. This can be an Integer or Fractional number.
Ynnn
A Y coordinate, usually to move to. This can be an Integer or Fractional number.
Znnn
A Z coordinate, usually to move to. This can be an Integer or Fractional number.
U,V,W
Additional axis coordinates (RepRapFirmware)
Innn
Parameter – X-offset in arc move; integral (Ki) in PID Tuning
Jnnn
Parameter – Y-offset in arc move
Dnnn
Parameter – used for diameter; derivative (Kd) in PID Tuning
Hnnn
Parameter – used for heater number in PID Tuning
Fnnn
Feedrate in mm per minute. (Speed of print head movement)
Rnnn
Parameter – used for temperatures
Qnnn
Parameter – not currently used
Ennn
Length of extrudate. This is exactly like X, Y and Z, but for the length of filament to consume.
Nnnn
Line number. Used to request repeat transmission in the case of communications errors.
*nnn
Checksum. Used to check for communications errors.
Now that you know how to read a line of code, let’s look at a simple example in action. The following video shows G-code commands at work in a cutting machine (not a 3D printer). The cutting machine will cut a circular edge in a rectangular slab. The G-code commands instruct the cutter on how to move to achieve the desired result.
Do not worry that the video is about a cutting machine. The geometric aspects of G-code commands work similarly for all machines that have a machine head. In the case of the 3D printer, the nozzle is the head. For the cutting machine, the head is the cutter. That’s the only difference. All other geometric aspects of the code remain the same.
If you understand the cutter’s movements, you will also know how to move a print head.
The most important G-code Commands
In the last section, we discussed the G1 command, which means “move the nozzle in a controlled fashion in a straight line”. This is just one of the many G-code commands. In this section, we will discuss other important commands that are used frequently.
G-code commands #1: G0 or “rapid motion”
The G0 command tells the print head to move at maximum travel speed from the current position to the coordinates specified by the command. The head will move in a coordinated fashion such that both axes complete the travel simultaneously. The nozzle will not extrude any material while executing this command. This G-code command is usually used to bring the nozzle rapidly to some desired coordinates at the start of the print or during the print.
Example: G0 X7 Y18
Image: Make Magazine
G-code commands #2: G1 or “controlled motion”
The G1 command tells the print head to move at specified speed from the current position to the coordinated specified by the G-code command. The speed is specified by the Feed rate parameter F. The head will move in a coordinated fashion such that both axes complete the travel simultaneously. The printer can extrude material while executing this G-code command at an extrusion rate specified by the extrusion rate parameter E. Most of the 3D printing happens while executing this command. If you open the G-code file for an actual 3D printing process, you will see a lot of G1 commands.
Example: G1 X7 Y18 F500 E0.02
Image: Make Magazine
G-code commands #3: G17/G18/G19 or “set planes”
These G-code commands set the plane in which the nozzle should move. Typically, G17 is the default for most machines and it denotes the X-Y plane. G18 denotes the Z-X plane and G19 denotes the Y-Z plane.
G-code commands #4: G20/G21 or “set units”
These G-code commands set the units. G20 denotes inches while G21 denotes millimeters. This makes a big difference because
G20
G0 X7 Y18
means “move rapidly to X=7 inches and Y=18 inches” while
G21
G0 X7 Y18
means “move rapidly to X=7 mm and Y=18 mm”.
G-code commands #5: G28 or “homing”
A G28 command tells the machine to go to its home position. A home position can be defined by the G28.1 command as follows.
G28.1 X0 Y0 Z0
G-code commands #6: G90 or “absolute mode”
Absolute mode tells the machine to interpret coordinates as absolute coordinates. This means a G-code command
will send the machine head to the coordinate X=10.
G-code commands #7: G91 or “relative mode”
The relative mode is the opposite of the absolute mode. G91 tells the machine to interpret coordinates as relative coordinates. If the machine is currently at X=10, then the following G-code commands
G91
G0 X10
tell the machine to move 10 units in the X direction from its current position. At the end of the operation, the machine head will be located at X=20.
G-code commands #8: G2 or “clockwise motion”
G2 tells the machine to move clockwise starting from its current location. The endpoint is specified by the coordinates X and Y. The center of rotation is specified by the parameter I, which denotes the X offset of the current position from the center of rotation. J denotes the Y offset of the current position from the center of rotation.
Example:
G21 G90 G17
G0 X6 Y18
G2 X18 Y6 I0 J-12
Image: Make Magazine
G-code commands #9: G3 or “counterclockwise motion”
Just like the G2 command, the G3 command creates a circular motion but in the counterclockwise direction.
Example:
G21 G90 G17
G0 X-5 Y25
G3 X-25 Y5 I0 J-20
Image: Make Magazine
G-code commands #10: Code comments
If you look at any real world G-code file, you will find that in addition to G-code commands and arguments, it also contains things written in plain English. Here’s an example:
G0 X-25 Y5 ; rapid movement to X=-25 and Y=5
The English text will always be preceded by a semicolon, as you can see in the above line.
Programmers often need to write down explanations in plain English so that other programmers can understand the motivation behind a certain line or section of code. In fact, forget about other programmers! If you are looking at your own code after a year, chances are that you will have forgotten why you coded things in a certain way and would have a hard time figuring things out again.
To solve this problem, you can include code comments. Comments are written after adding a semicolon punctuation mark.You can write anything after adding a semicolon, but most often it is used to explain the rationale behind the code in a human-friendly way. Anything that appears after a semicolon character in a line is ignored by the printer while executing the G-code commands and is only meant for human eyes.
Here is another example of a line that has a code comment.
G1 X-25 Y5 ; I am a code comment!
G-code Commands: The Structure of a Full-fledged Program
We are now in a good position to look at actual code that is used for printing a 3D model.
Most G-code programs contain three important sections. The first section initializes the printer for the printing process. The second section instructs the printer to print the model. The third section resets the printer to its default configuration after the print finishes. Let’s take a look at these sections one by one.
1. Initialization phase
Certain tasks need to be performed before a print can begin. For example, we need to heat the print bed, heat the extruder, purge the nozzle, bring the nozzle to the start position etc. These tasks form the first section of any program.
Here are the first five lines of initialization G-code commands from an actual 3D printing task. You should be in a position to read and understand them at this point, with help from the reference table at the end.
G90
M82
M106 S0
M140 S100
M190 S100
The first line sets the coordinates to absolute positioning. The second line tells the extruder to interpret the extrusion rate as absolute values. The third line turns the fan on, but sets the speed to 0, which essentially means that the fan is off. The fourth line sets the bed temperature to 100 degrees. The fifth line tells the printer to wait till the bed temperature reaches the desired value, in this case, 100.
During the initialization phase, the printer will not extrude any material except when it is purging the nozzle. This is an easy to way to figure out when the initialization phase stops and the actual printing begins. During the actual printing, the printer will be extruding material at almost every step.
2. Printing phase
A 3D printer prints a model layer by layer. Slicers like Simplify3D or Cura typically slices a 3D model into many horizontal layers that stack on top of each other to create the final print.
Therefore, the print phase consists of many movements in the X-Y plane (printing a single layer), then one movement in the Z direction (move to next layer) followed by many movements in the X -Y plane again (print the next layer).
Finally, when the printing is over, some final lines of G-code commands bring the printer to a reasonable default state. For example, the nozzle is brought back to the origin, the heating is turned off (both for the bed and the extruder) and the motors are disabled.
G28 ; bring the nozzle to home
M104 S0 ; turn off heaters
M140 S0 ; turn off bed
M84 ; disable motors
G-code Commands: Input and Output
Till now, we have only talked about the computer sending G-code commands to the printer, so it seems like the communication is one way. But 3D printing actually involves a two-way communication between the computer and the printer. Here’s how it works.
When you hit the print button on your computer, the 3D printing software starts sending the G-code commands to the printer, one line at a time. The printer executes the line and responds back to the computer. If the response indicates no error, the computer then sends the next line of code to be executed.
The printer’s response usually follows the following format:
[] [] []
can be ok, rs or !!.
Ok means that no error has been detected. This prompts the computer to send the next line of code to the printer.
Rs means “resend the instruction”. This is usually followed by the line number to resend.
Two exclamation marks(!!) implies hardware error. The machine shuts down immediately in this case and the print job is aborted.
In addition to these 3 responses, the printer might also report printer parameters like temperature, coordinates of the nozzle etc. to the computer.
Temperature is reported in response to a M105 G-Code command. The format of the response is
T:value B:value,
where T indicates the extruder temperature and B indicates the bed temperature. If the machine does not have a temperature sensor, then -273 is returned as a value.
The coordinates are reported in response to M114 and M117 G-code commands. The format of response is
C: X:9.2 Y:125.4 Z:3.7 E:1902.5.
Here, C stands for “coordinates follow”. This is followed by current X, Y, Z coordinates and other information.
G-code Commands: Visualization Tools
Now that you know how to write G-code, it’s your turn to write some G-code commands and test your understanding. You can use an online visualization tool, where you can write some G-code commands and see the machine head move according to your instructions. It’s a lot of fun! We recommend that you try out this online visualization tool to test your skills.
Slicing software like Simplify3D or Cura also come with a G-code viewer. In the viewer, you will be able to visualize the path of the extruder for actual 3D printing tasks. Check out this must-see video for an excellent demonstration of the G-code viewer in Simplify3D.
G-code Commands: Preventing Print Failures
The G-code viewer can be the difference between a successful and failed print for tricky 3D models. In general, whenever you want to print a complicated 3D model, we advise that you run the viewer and go through the print simulation step by step.
We need to do this because the automatically generated code is often not ideal. You will often find that there are problematic areas that do not have enough support, leading to a failed print. In this case, you need to modify the code to ensure successful printing. Most of the time, this can be done by adding additional support structures using the graphical interface. Here is a video that shows how to do this for a complicated model of a 3D puppy.
G-code Commands: Conclusion
In conclusion, we learned about how a 3D printer prints a CAD model by following an instruction set written in G-code. We learned how to read the G-code commands, and saw some realistic examples. We discussed the most common G-Code commands and some ways of visualizing and testing them. Finally, we introduced G-code viewer, a common feature of Slicers, which can be used to prevent failed prints.
We hope that an understanding of G-code commands helps you become a more knowledgeable and powerful user of your 3D printer. If you found this article useful, share it with other 3D printing enthusiasts and spread the word. Do you have some questions or remarks? Let us know in the comments below!
Appendix 1: Compatibility notes
Each 3D printer comes with a firmware. There are many firmware’s, and developers of these firmware’s tend to implement different flavors of G-code commands. This leads to major compatibility issues. The G-code commands that work for one machine might not work for another.
This problem is usually solved by connecting the Slicer, which generates the code, to a machine specific post-processing driver. The post-processor detects the incoming code flavor and converts the code to the specific flavor^ that the firmware understands.
Therefore, the G-code commands that you see on the Slicer might not necessarily be the code being executed on the machine because of this subtle implementation detail.
Appendix 2: G-code commands
Code
Description
Milling (M)
Turning (T)
Corollary info
G00
Rapid positioning
M
T
On 2- or 3-axis moves, G00 (unlike G01) traditionally does not necessarily move in a single straight line between start point and end point. It moves each axis at its max speed until its vector quantity is achieved. Shorter vector usually finishes first (given similar axis speeds). This matters because it may yield a dog-leg or hockey-stick motion, which the programmer needs to consider depending on what obstacles are nearby, to avoid a crash. Some machines offer interpolated rapids as a feature for ease of programming (safe to assume a straight line).
G01
Linear interpolation
M
T
The most common workhorse code for feeding during a cut. The program specs the start and end points, and the control automatically calculates (interpolates) the intermediate points to pass through that will yield a straight line (hence „linear“). The control then calculates the angular velocities at which to turn the axis leadscrews via their servomotors or stepper motors. The computer performs thousands of calculations per second, and the motors react quickly to each input. Thus the actual toolpath of the machining takes place with the given feedrate on a path that is accurately linear to within very small limits.
G02
Circular interpolation, clockwise
M
T
Very similar in concept to G01. Again, the control interpolates intermediate points and commands the servo- or stepper motors to rotate the amount needed for the leadscrew to translate the motion to the correct tool tip positioning. This process repeated thousands of times per minute generates the desired toolpath. In the case of G02, the interpolation generates a circle rather than a line. As with G01, the actual toolpath of the machining takes place with the given feedrate on a path that accurately matches the ideal (in G02’s case, a circle) to within very small limits. In fact, the interpolation is so precise (when all conditions are correct) that milling an interpolated circle can obviate operations such as drilling, and often even fine boring. Addresses for radius or arc center: G02 and G03 take either an R address (for the radius desired on the part) or IJK addresses (for the component vectors that define the vector from the arc start point to the arc center point). Cutter comp: On most controls you cannot start G41 or G42 in G02 or G03 modes. You must already have compensated in an earlier G01 block. Often a short linear lead-in movement will be programmed, merely to allow cutter compensation before the main event, the circle-cutting, begins. Full circles: When the arc start point and the arc end point are identical, a 360° arc, a full circle, will be cut. (Some older controls cannot support this because arcs cannot cross between quadrants of the cartesian system. Instead, four quarter-circle arcs are programmed back-to-back.)
G03
Circular interpolation, counterclockwise
M
T
Same corollary info as for G02.
G04
Dwell
M
T
Takes an address for dwell period (may be X, U, or P). The dwell period is specified by a control parameter, typically set to milliseconds. Some machines can accept either X1.0 (s) or P1000 (ms), which are equivalent. Choosing dwell duration: Often the dwell needs only to last one or two full spindle rotations. This is typically much less than one second. Be aware when choosing a duration value that a long dwell is a waste of cycle time. In some situations it won’t matter, but for high-volume repetitive production (over thousands of cycles), it is worth calculating that perhaps you only need 100 ms, and you can call it 200 to be safe, but 1000 is just a waste (too long).
G05 P10000
High-precision contour control (HPCC)
M
Uses a deep look-ahead buffer and simulation processing to provide better axis movement acceleration and deceleration during contour milling
G05.1 Q1.
AI Advanced Preview Control
M
Uses a deep look-ahead buffer and simulation processing to provide better axis movement acceleration and deceleration during contour milling
G06.1
Non-uniform rational B-spline (NURBS) Machining
M
Activates Non-Uniform Rational B Spline for complex curve and waveform machining (this code is confirmed in Mazatrol 640M ISO Programming)
G07
Imaginary axis designation
M
G09
Exact stop check, non-modal
M
T
The modal version is G61.
G10
Programmable data input
M
T
Modifies the value of work coordinate and tool offsets
G11
Data write cancel
M
T
G12
Full-circle interpolation, clockwise
M
Fixed cycle for ease of programming 360° circular interpolation with blend-radius lead-in and lead-out. Not standard on Fanuc controls.
G13
Full-circle interpolation, counterclockwise
M
Fixed cycle for ease of programming 360° circular interpolation with blend-radius lead-in and lead-out. Not standard on Fanuc controls.
G17
XY plane selection
M
G18
ZX plane selection
M
T
On most CNC lathes (built 1960s to 2000s), ZX is the only available plane, so no G17 to G19 codes are used. This is now changing as the era begins in which live tooling, multitask/multifunction, and mill-turn/turn-mill gradually become the „new normal“. But the simpler, traditional form factor will probably not disappear—it will just move over to make room for the newer configurations. See also V address.
G19
YZ plane selection
M
G20
Programming in inches
M
T
Somewhat uncommon except in USA and (to lesser extent) Canada and UK. However, in the global marketplace, competence with both G20 and G21 always stands some chance of being necessary at any time. The usual minimum increment in G20 is one ten-thousandth of an inch (0.0001″), which is a larger distance than the usual minimum increment in G21 (one thousandth of a millimeter, .001 mm, that is, one micrometre). This physical difference sometimes favors G21 programming.
G21
Programming in millimeters (mm)
M
T
Prevalent worldwide. However, in the global marketplace, competence with both G20 and G21 always stands some chance of being necessary at any time.
G28
Return to home position (machine zero, aka machine reference point)
M
T
Takes X Y Z addresses which define the intermediate point that the tool tip will pass through on its way home to machine zero. They are in terms of part zero (aka program zero), NOT machine zero.
G30
Return to secondary home position (machine zero, aka machine reference point)
M
T
Takes a P address specifying which machine zero point is desired, if the machine has several secondary points (P1 to P4). Takes X Y Z addresses which define the intermediate point that the tool tip will pass through on its way home to machine zero. They are in terms of part zero (aka program zero), NOT machine zero.
G31
Skip function (used for probes and tool length measurement systems)
M
G32
Single-point threading, longhand style (if not using a cycle, e.g., G76)
T
Similar to G01 linear interpolation, except with automatic spindle synchronization for single-point threading.
G33
Constant-pitch threading
M
G33
Single-point threading, longhand style (if not using a cycle, e.g., G76)
T
Some lathe controls assign this mode to G33 rather than G32.
G34
Variable-pitch threading
M
G40
Tool radius compensation off
M
T
Turn off cutter radius compensation (CRC). Cancels G41 or G42.
G41
Tool radius compensation left
M
T
Turn on cutter radius compensation (CRC), left, for climb milling. Milling: Given righthand-helix cutter and M03 spindle direction, G41 corresponds to climb milling (down milling). Takes an address (D or H) that calls an offset register value for radius. Turning: Often needs no D or H address on lathes, because whatever tool is active automatically calls its geometry offsets with it. (Each turret station is bound to its geometry offset register.) G41 and G42 for milling has been partially automated and obviated (although not completely) since CAM programming has become more common. CAM systems allow the user to program as if with a zero-diameter cutter. The fundamental concept of cutter radius compensation is still in play (i.e., that the surface produced will be distance R away from the cutter center), but the programming mindset is different; the human does not choreograph the toolpath with conscious, painstaking attention to G41, G42, and G40, because the CAM software takes care of it. The software has various CRC mode selections, such as computer, control, wear, reverse wear, off, some of which do not use G41/G42 at all (good for roughing, or wide finish tolerances), and others which use it so that the wear offset can still be tweaked at the machine (better for tight finish tolerances).
G42
Tool radius compensation right
M
T
Turn on cutter radius compensation (CRC), right, for conventional milling. Similar corollary info as for G41. Given righthand-helix cutter and M03 spindle direction, G42 corresponds to conventional milling (up milling).
G43
Tool height offset compensation negative
M
Takes an address, usually H, to call the tool length offset register value. The value is negative because it will be added to the gauge line position. G43 is the commonly used version (vs G44).
G44
Tool height offset compensation positive
M
Takes an address, usually H, to call the tool length offset register value. The value is positive because it will be subtracted from the gauge line position. G44 is the seldom-used version (vs G43).
G45
Axis offset single increase
M
G46
Axis offset single decrease
M
G47
Axis offset double increase
M
G48
Axis offset double decrease
M
G49
Tool length offset compensation cancel
M
Cancels G43 or G44.
G50
Define the maximum spindle speed
T
Takes an S address integer which is interpreted as rpm. Without this feature, G96 mode (CSS) would rev the spindle to „wide open throttle“ when closely approaching the axis of rotation.
G50
Scaling function cancel
M
G50
Position register (programming of vector from part zero to tool tip)
T
Position register is one of the original methods to relate the part (program) coordinate system to the tool position, which indirectly relates it to the machine coordinate system, the only position the control really „knows“. Not commonly programmed anymore because G54 to G59 (WCSs) are a better, newer method. Called via G50 for turning, G92 for milling. Those G addresses also have alternate meanings (which see). Position register can still be useful for datum shift programming. The „manual absolute“ switch, which has very few useful applications in WCS contexts, was more useful in position register contexts, because it allowed the operator to move the tool to a certain distance from the part (for example, by touching off a 2.0000″ gage) and then declare to the control what the distance-to-go shall be (2.0000).
G52
Local coordinate system (LCS)
M
Temporarily shifts program zero to a new location. It is simply „an offset from an offset“, that is, an additional offset added onto the WCS offset. This simplifies programming in some cases. The typical example is moving from part to part in a multipart setup. With G54 active, G52 X140.0 Y170.0 shifts program zero 140 mm over in X and 170 mm over in Y. When the part „over there“ is done, G52 X0 Y0 returns program zero to normal G54 (by reducing G52 offset to nothing). The same result can also be achieved (1) using multiple WCS origins, G54/G55/G56/G57/G58/G59; (2) on newer controls, G54.1 P1/P2/P3/etc. (all the way up to P48); or (3) using G10 for programmable data input, in which the program can write new offset values to the offset registers. Which method to use depends on shop-specific application.
G53
Machine coordinate system
M
T
Takes absolute coordinates (X,Y,Z,A,B,C) with reference to machine zero rather than program zero. Can be helpful for tool changes. Nonmodal and absolute only. Subsequent blocks are interpreted as „back to G54“ even if it is not explicitly programmed.
G54 to G59
Work coordinate systems (WCSs)
M
T
Have largely replaced position register (G50 and G92). Each tuple of axis offsets relates program zero directly to machine zero. Standard is 6 tuples (G54 to G59), with optional extensibility to 48 more via G54.1 P1 to P48.
G54.1 P1 to P48
Extended work coordinate systems
M
T
Up to 48 more WCSs besides the 6 provided as standard by G54 to G59. Note floating-point extension of G-code data type (formerly all integers). Other examples have also evolved (e.g., G84.2). Modern controls have the hardware to handle it.
G61
Exact stop check, modal
M
T
Can be canceled with G64. The non-modal version is G09.
Rotates coordinate system in the current plane given with G17 G18 or G19. Center of rotation is given with two parameters, which vary with each vendors implementation. Rotate with angle given with argument R. This can be for instance be used to align coordinate system with misaligned part. It can also be used to repeat movement sequences around a center. Not all vendors support coordinate system rotation.
G69
Turn off coordinate system rotation.
M
Cancels G68.
G70
Fixed cycle, multiple repetitive cycle, for finishing (including contours)
T
G71
Fixed cycle, multiple repetitive cycle, for roughing (Z-axis emphasis)
T
G72
Fixed cycle, multiple repetitive cycle, for roughing (X-axis emphasis)
T
G73
Fixed cycle, multiple repetitive cycle, for roughing, with pattern repetition
T
G73
Peck drilling cycle for milling – high-speed (NO full retraction from pecks)
M
Retracts only as far as a clearance increment (system parameter). For when chipbreaking is the main concern, but chip clogging of flutes is not. Compare G83.
G74
Peck drilling cycle for turning
T
G74
Tapping cycle for milling, lefthand thread, M04 spindle direction
M
See notes at G84.
G75
Peck grooving cycle for turning
T
G76
Fine boring cycle for milling
M
Includes OSS and shift (oriented spindle stop and shift tool off centerline for retraction)
G76
Threading cycle for turning, multiple repetitive cycle
T
G80
Cancel canned cycle
M
T
Milling: Cancels all cycles such as G73, G81, G83, etc. Z-axis returns either to Z-initial level or R level, as programmed (G98 or G99, respectively). Turning: Usually not needed on lathes, because a new group-1 G address (G00 to G03) cancels whatever cycle was active.
G81
Simple drilling cycle
M
No dwell built in
G82
Drilling cycle with dwell
M
Dwells at hole bottom (Z-depth) for the number of milliseconds specified by the P address. Good for when hole bottom finish matters. Good for spot drilling because the divot will be certain to clean up evenly. Consider the „choosing dwell duration“ note at G04.
G83
Peck drilling cycle (full retraction from pecks)
M
Returns to R-level after each peck. Good for clearing flutes of chips. Compare G73.
G84
Tapping cycle, righthand thread, M03 spindle direction
M
G74 and G84 are the righthand and lefthand „pair“ for old-school tapping with a non-rigid toolholder („tapping head“ style). Compare the rigid tapping „pair“, G84.2 and G84.3.
See notes at G84. Rigid tapping synchronizes speed and feed according to the desired thread helix. That is, it synchronizes degrees of spindle rotation with microns of axial travel. Therefore, it can use a rigid toolholder to hold the tap. This feature is not available on old machines or newer low-end machines, which must use „tapping head“ motion (G74/G84).
– Good cycle for a reamer. – In some cases good for single-point boring tool, although in other cases the lack of depth of cut on the way back out is bad for surface finish, in which case, G76 (OSS/shift) can be used instead. – If need dwell at hole bottom, see G89.
G86
boring cycle, feed in/spindle stop/rapid out
M
Boring tool will leave a slight score mark on the way back out. Appropriate cycle for some applications; for others, G76 (OSS/shift) can be used instead.
G87
boring cycle, backboring
M
For backboring. Returns to initial level only (G98); this cycle cannot use G99 because its R level is on the far side of the part, away from the spindle headstock.
G89 is like G85 but with dwell added at bottom of hole.
G90
Absolute programming
M
T (B)
Positioning defined with reference to part zero. Milling: Always as above. Turning: Sometimes as above (Fanuc group type B and similarly designed), but on most lathes (Fanuc group type A and similarly designed), G90/G91 are not used for absolute/incremental modes. Instead, U and W are the incremental addresses and X and Z are the absolute addresses. On these lathes, G90 is instead a fixed cycle address for roughing.
G90
Fixed cycle, simple cycle, for roughing (Z-axis emphasis)
T (A)
When not serving for absolute programming (above)
G91
Incremental programming
M
T (B)
Positioning defined with reference to previous position. Milling: Always as above. Turning: Sometimes as above (Fanuc group type B and similarly designed), but on most lathes (Fanuc group type A and similarly designed), G90/G91 are not used for absolute/incremental modes. Instead, U and W are the incremental addresses and X and Z are the absolute addresses. On these lathes, G90 is a fixed cycle address for roughing.
G92
Position register (programming of vector from part zero to tool tip)
M
T (B)
Same corollary info as at G50 position register. Milling: Always as above. Turning: Sometimes as above (Fanuc group type B and similarly designed), but on most lathes (Fanuc group type A and similarly designed), position register is G50.
G92
Threading cycle, simple cycle
T (A)
G94
Feedrate per minute
M
T (B)
On group type A lathes, feedrate per minute is G98.
G94
Fixed cycle, simple cycle, for roughing (X-axis emphasis)
T (A)
When not serving for feedrate per minute (above)
G95
Feedrate per revolution
M
T (B)
On group type A lathes, feedrate per revolution is G99.
G96
Constant surface speed (CSS)
T
Varies spindle speed automatically to achieve a constant surface speed. See speeds and feeds. Takes an S address integer, which is interpreted as sfm in G20 mode or as m/min in G21 mode.
G97
Constant spindle speed
M
T
Takes an S address integer, which is interpreted as rev/min (rpm). The default speed mode per system parameter if no mode is programmed.
Non-optional—machine will always stop upon reaching M00 in the program execution.
M01
Optional stop
M
T
Machine will only stop at M01 if operator has pushed the optional stop button.
M02
End of program
M
T
Program ends; execution may or may not return to program top (depending on the control); may or may not reset register values. M02 was the original program-end code, now considered obsolete, but still supported for backward compatibility.[7] Many modern controls treat M02 as equivalent to M30.[7] See M30 for additional discussion of control status upon executing M02 or M30.
M03
Spindle on (clockwise rotation)
M
T
The speed of the spindle is determined by the address S, in either revolutions per minute (G97 mode; default) or surface feet per minute or meters per minute (G96 mode under either G20 or G21). The right-hand rule can be used to determine which direction is clockwise and which direction is counter-clockwise. Right-hand-helix screws moving in the tightening direction (and right-hand-helix flutes spinning in the cutting direction) are defined as moving in the M03 direction, and are labeled „clockwise“ by convention. The M03 direction is always M03 regardless of local vantage point and local CW/CCW distinction.
M04
Spindle on (counterclockwise rotation)
M
T
See comment above at M03.
M05
Spindle stop
M
T
M06
Automatic tool change (ATC)
M
T (sometimes)
Many lathes do not use M06 because the T address itself indexes the turret. Programming on any particular machine tool requires knowing which method that machine uses. To understand how the T address works and how it interacts (or not) with M06, one must study the various methods, such as lathe turret programming, ATC fixed tool selection, ATC random memory tool selection, the concept of „next tool waiting“, and empty tools.
M07
Coolant on (mist)
M
T
M08
Coolant on (flood)
M
T
M09
Coolant off
M
T
M10
Pallet clamp on
M
For machining centers with pallet changers
M11
Pallet clamp off
M
For machining centers with pallet changers
M13
Spindle on (clockwise rotation) and coolant on (flood)
M
This one M-code does the work of both M03 and M08. It is not unusual for specific machine models to have such combined commands, which make for shorter, more quickly written programs.
M19
Spindle orientation
M
T
Spindle orientation is more often called within cycles (automatically) or during setup (manually), but it is also available under program control via M19. The abbreviation OSS (oriented spindle stop) may be seen in reference to an oriented stop within cycles.
M21
Mirror, X-axis
M
M21
Tailstock forward
T
M22
Mirror, Y-axis
M
M22
Tailstock backward
T
M23
Mirror OFF
M
M23
Thread gradual pullout ON
T
M24
Thread gradual pullout OFF
T
M30
End of program, with return to program top
M
T
Today M30 is considered the standard program-end code, and will return execution to the top of the program. Today most controls also still support the original program-end code, M02, usually by treating it as equivalent to M30. Additional info: Compare M02 with M30. First, M02 was created, in the days when the punched tape was expected to be short enough to be spliced into a continuous loop (which is why on old controls, M02 triggered no tape rewinding).[7] The other program-end code, M30, was added later to accommodate longer punched tapes, which were wound on a reel and thus needed rewinding before another cycle could start.[7] On many newer controls, there is no longer a difference in how the codes are executed—both act like M30.
M41
Gear select – gear 1
T
M42
Gear select – gear 2
T
M43
Gear select – gear 3
T
M44
Gear select – gear 4
T
M48
Feedrate override allowed
M
T
M49
Feedrate override NOT allowed
M
T
Prevent MFO. This rule is also usually called (automatically) within tapping cycles or single-point threading cycles, where feed is precisely correlated to speed. Same with spindle speed override (SSO) and feed hold button. Some controls are capable of providing SSO and MFO during threading.
M52
Unload Last tool from spindle
M
T
Also empty spindle.
M60
Automatic pallet change (APC)
M
For machining centers with pallet changers
M98
Subprogram call
M
T
Takes an address P to specify which subprogram to call, for example, „M98 P8979“ calls subprogram O8979.
M99
Subprogram end
M
T
Usually placed at end of subprogram, where it returns execution control to the main program. The default is that control returns to the block following the M98 call in the main program. Return to a different block number can be specified by a P address. M99 can also be used in main program with block skip for endless loop of main program on bar work on lathes (until operator toggles block skip).
Have you always wanted to travel through time like Marty McFly and Doc Brown in ‘Back to the Future’? Well, Great Scott! Now you can with this amazing 3D printed Delorean clock.
Originally released in 1985, the critically acclaimed film Back to the Future has proven itself to be timeless, which is a bit ironic considering the plot is about a teenager and mad scientist traveling through time. The instant classic quickly transformed into a gigantic franchise, spawning two sequels, several video games, a theme park ride, and even acting as the inspiration behind the main characters featured in the animated hit-series Rick & Morty.
Of all the many memorable scenes in Back to the Future, few are as iconic as those featuring the time-traveling Delorean, which is a sleek and futuristic car that is still famously recognized as “the car from that movie!” In the movie, Marty McFly and Doc Brown use the car as their personal time machine, dialing in the settings on the zany clock-like contraption that is mounted on the center console.
Now, fans of Back to the Future can 3D print their own time circuit device by following along with a project by Thingiverse user Premium95. The maker and engineer has created a 3D printable Delorean clock, taking the device from the film and turning it into a functional clock that shows you the time and date of the past, present and future.
This project requires a fair bit of soldering and post-processing, but hey, nobody said being a time traveller was easy work. If you’re up for the challenge, keep on reading to learn more about this awesome Weekend Project.
3D Printed Delorean Clock: What You Need & How to Build it
While the case of the Delorean Clock is 3D printed, you’ll still need a handful of electronic components and parts to complete the job. Here’s the checklist of what you need, all of which is available through Banggood:
The Thingiverse user also shares a download link to the code that allows the Delorean to function. The labels that are attached to the clock are included in the collection of Thingiverse files. According to Premium95, the six 3D printable files should have 20 percent infill, no supports needed.
The engineer also shares the circuit digram for the entire clock, showing where soldering connections needs to be made.
However, other than that, assembly instructions are sparse. Judging from the photos, the 3D printed parts seem to be post-processed with sandpaper and black paint.
The soldering process seems a bit complex for unexperienced makers, but this project can be approached as a challenging way to learn. Of course, if you have any questions about the project, you can head over to the Thingiverse page and drop a comment for the designer.
Well, it’s official. Amazon has updated its homepage with a banner declaring that Monday July 16th is 2018’s Prime Day. We’ll be monitoring it closely to flag any decent 3D printer and 3D printing deals that come up — watch this space.
It’s easy to dismiss Amazon’s made-up holiday as a cynical ploy to dress up what is effectively clearing the warehouse shelves of old and dusty tat (or, more likely, a clever grab for Prime subscriptions). And for the most part you’d be right to.
But — and it’s a big but — sometimes there are deals on great products that are likely to push those of you sitting on the fence, right on over to the greener grass or whatever.
Those of you that tuned in to our 2017 monitoring of Prime Day found cut price Lulzbot Mini and Taz 6 3D printers floating along as the cream of that particular day’s bargain bucket crop. A Robo R1 bundle with 6 spools of filament and the Lulzbot Taz 5 were two particular highlights of 2016. So, not all bad.
Commencing 3pm Eastern Time on Monday July 16th, 2018 and lasting for a day and a half, Amazon Prime Day is exclusive to Amazon Prime members. Sign up for Prime here if you haven’t yet and want to see what all the fuss is about come July 16th. Those completely new to Prime get a 30-day free trial too, so if you do find a bargain on Prime Day you can just cancel the membership afterwards (win-win!).
We’ll be monitoring the Prime Day deals and cherry picking our highlights. Bookmark this page, or watch out for our messaging on the day itself.
All3DP is an editorially independent publication. Occasionally we need to pay our bills, so we affiliate some product links through which we may receive a small commission. For the full spiel, check out our Terms of Use.
A popular YouTuber and gamer named Doppel D has created a 3D printed PlayStation 4 controller that can be used with just one hand, taking accessibility to a whole new level.
Whether it be customized accessories for your gaming console of choice or cosplay of your favorite character, 3D printing technology has been used by many to enhance their video game experience and show off their fandom. The latest innovation comes in the form of a new type of PlayStation 4 controller; one that can be utilized with just a single hand.
Designed by the popular gaming YouTuber Doppel D, this custom-made PS4 controller places the entire functionality of the standard controller into your palm. This creation is meant to improve accessibility or simply allow gamers to play with one hand. The controller users a Wired Connection and offers access to all of the buttons and input functions, even the Touchpad Button that is placed in the center of the stock controller.
Gamer 3D Prints and Tests Functional PS4 Controller Prototype
Still in the prototyping phase, the gamer recently shared a demonstration video of the 3D printed controller in action. The creator used the prototype to play Trackmania Turbo, using his non-dominant left hand to showcase how the controller works even in the “worst possible scenario.” Despite spending the first handful of minutes crashing into walls, Doppel D eventually gets the hang of his one-handed controller.
Check out the entertaining demonstration video below.
This is the second iteration of the one-handed controller that the creator has created with a symmetrical design, which enables users to comfortably hold it in their left or right hand. Another perk is that all of the buttons and sticks can be remapped, allowing players to modify the controller layout the way they see fit. Eventually, Doppel D wants to create a functional final product, but he’s still working to nail down the final prototype.
While the design replicates all of the button functions of the PS4 controller, the 3D printed prototype doesn’t include features like speakers, rumble modules or the glowing lightbar. The one-handed controller is not yet available for purchase, but Doppel D told his YouTube viewers to stay tuned for updates.
Um dir ein optimales Erlebnis zu bieten, verwenden wir Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wenn du diesen Technologien zustimmst, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn du deine Einwillligung nicht erteilst oder zurückziehst, können bestimmte Merkmale und Funktionen beeinträchtigt werden.
Funktional
Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt.Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.