Making the Stargate

Below is a description of how i approached the task of making the Stargate. A 3D printed Stargate with wormhole effect. Fully interactive, working with infinity mirror, sound effects and moving parts. Check out the main page for a video presentation of the project.

The wormhole effect.

Making the Stargate

A Stargate is nothing without the ability to open a stable wormhole to another planet. I started this project by checking the possibility of making an infinity mirror where i could control every led individually and create custom animations and colors. An infinity mirror consists of of a mirror at the back, lights in the middle and a two way mirror in the front. The light will reflect back and forth between the two mirrors, and when observing from the outside one can see through the two way mirror when the light is on. This creates an “infinity” effect where the lights are reflected back and forth between the mirrors several times.

I started using regular glass mirror and a regular glass plate cut in circles. The mirror cracked, and it was a hassle using two way mirror foil on the glass plate. I ended up buying Plexiglas mirror and Plexiglas two way mirror and cutting the circles by hand. This worked a lot better, and it’s not as heavy as regular glass/mirrors. In this early wormhole video test you can see the cracked glass before i switched to Plexiglas.

NeoPixel WS2812

For the LED’s themselves i used a NeoPixel WS2812 addressable LED strip with 144 LED’s per meter. The whole project is controlled by one raspberry pi. My original idea was to add a diffuser over the lights so that one could not see the individual lights themselves. However after a while I kind of liked seeing the individual lights and dropped the diffuser.

Making the stargate

Stargate back ring

While making the stargate model it went through a lot of iterations and modifications before I was able to make something that worked well enough. I ended up by dividing it in segments. 7 segments that are the same, and two at the bottom that differs from the rest. There are no chevrons at the bottom to segments. To the right is a picture of the the back part of the Stargate that holds the whole thing together. The image also displays 9 tiny ball bearings that holds the spinning ring in place, and makes it easier to roll.

3D printed Symbol ring

The symbol ring itself is printed in 5 parts and attached together.

3D Printed Stargate Symbol ring, backside with gear.

On the back side of the symbol ring, there is a “large” gear so it can be spun around and function like a proper Stargate.

Cheveron Movement, backside.

The Chevrons

Making the stargate chevrons with light and movement was a real challenge. I tried several methods for making this work. One of my first tries was to use a solenoid to move the chevron up and down. This actually worked pretty well, but the range of motion was a bit small and the movement itself was very “sudden”. I tried using a dc motor that spun a screw that pulled on a nut. This worked better, but was a bit jittery. I ended up with using a small gear on the dc motor that simply moves a geared rack up and down. Simple but effective. Here is a video of the chevron from the backside of the gate.

Chevron movement front.

And also a video of the chevron movement from the front. The light in the chevron is a regular orange LED controlled from the raspberry pi. The wires to the chevron LED’s runs in a channel inside the gate. I planned to run the wires for the dc motors there as well. But found that there was not enough room.
Update: I have made some changes to the lights of the chevron. More information here.

3D printed Chevron light covers.

For making the stargate’s translucent cover for the chevron light, I used a simple 3D printed object made with a “transparent” plastic. This is also ABS, so it’s not very clear. It does its job of letting the light through, and I’m quite happy with the look. Hopefully it will look even better if i manage to get it painted. I printed a few extra since they are very fragile and it’s easy to break while handling them.

3D printed Chevron light covers on the print bed.

Here’s a picture of the covers on the print bed.

The Base

3D printed Stargate base

I needed a place to hide the raspberry pi with the motor controller hats, the motor for driving the ring, the speaker, the wires etc. I made a “stone” base to hide everything. The stone base is mostly inspired from the Nox episode in the first season of Stargate SG1.

open base

The base has a detachable “lid” to make it possible to inspect and access the technical stuff underneath.

The Tech


Contrary to the Stargate in the TV show that is controlled by crystals, my gate is controlled by a raspberry pi with three attached motor hats. The pi boots automatically and executes a Stargate python program that listens for input from the DHD and controls the gate.

Raspberry pi with motor hats and wires.

This “spaghetti” picture shows the pi with the wires connected. Most of the wires on the top is connected to the chevron LED’s and the ones sticking out to the side are connected to the chevron dc motors. The stepper motor at the bottom left in the picture is the motor that drives the symbol ring in the gate. It’s a Nema 14 stepper motor. I tried using a smaller cheaper one, but it was too slow. To avoid having to use gears to speed it up, i just used the Nema 14 stepper instead. It’s not as “quiet” as the smaller one, and vibrates a lot more.

If you liked my 3D printed Stargate with wormhole effect, you might also be interested in how I made the DHD.

If you have any comments or questions, feel free to use the comments section here. Or, you can send me an email at