Star Gazing

Build Your Own Star Tracker For Astrophotography

Liam Davies

Issue 44, March 2021

This article includes additional downloadable resources.
Please log in to access.

Log in

Capture incredible photos of the night sky with this Arduino-based Star Tracker for your DSLR. Simply mount the stepper-motor driven arm onto your tripod, align it and point your camera at whatever astronomical object you’d like to photograph!


Ever since the early 19th century, astronomers have been trying to capture the natural beauty of our universe with instruments far more versatile than the naked eye – cameras. The process of gathering light over a large amount of time and compositing it onto a single image, astrophotography is an incredibly captivating hobby, blending mathematics, physics, and beautiful colours.

By throwing a camera onto a tripod and pointing it up into the night sky, with minimal effort it is possible to get awesome photos of the stars, the moon, and the Milky Way. However, as we want to capture more detailed and fainter objects in the sky, a star tracker becomes incredibly important due to the simple fact that the Earth rotates.

When viewing the night sky with the naked eye, this isn’t a problem. However, letting our camera expose for longer to gather more light results in “streaking”, turning the stars from dots into circular arcs of light due to their movement.

Depending on how far your camera is zoomed in (focal length), the position of the stars you are focusing on and the shutter speed you are shooting at, this phenomenon can be anything from a mild nuisance to a complete roadblock in your astrophotography.

Solving the problem is conceptually quite simple! Just rotate your camera constantly to keep it pointing at the same spot in the sky as the Earth rotates. There are various mounts available for achieving this, but for this project, we’re going to be building the mechanically simple Equatorial Mount.

We’ll talk more about the geometry of it in the next section, but all we’re effectively doing is counteracting the rotation of the earth by moving our camera in the same direction the earth is rotating. The result of this mount is that because our camera is now always pointed at the same subject, we can now take much longer exposures of stars and nebula without streaking.

While commercial equatorial mounts are available for DSLRs and telescopes, these can range in the thousands of dollars and include advanced features such as auto-positioning. While ours will not be as fancy, we still want to show that this task can be done for a fraction of the cost.

We’re not including the cost of a DSLR in this build. However, we want to stress that you needn’t go out and spend thousands of dollars on a top-quality camera to capture the faint colours of our universe. Most lower-end DSLRs and even higher-end smartphone cameras can be used with this project, provided you can securely mount them to our Star Tracker!


First, a brief introduction to the world of tracking mounts. There are two popular mount types available on the market today: Alt-Azimuth and Equatorial. Alt-Azimuth is the most intuitive, and consists simply of two motors controlling the pan (left-right) and tilt (up-down) of the attached optics.

Sound familiar? Isaac Chasteau featured his awesome Pan-Tilt DSLR mount back in Issue 35, which is exactly what the Alt-Azimuth mount is! However, this type of mount presents an issue: the “roll” of the sky is not accounted for as the earth rotates. If we were tracking a single object in the sky, we would need another motor “rolling” the camera to remove any star streaking.

So, what’s different about the equatorial mount? We only use one motor in this mount, which is designed to mimic the movement of the equator of the earth. In the amateur astrophotography community, this is often referred to as a “Barn Door” mount, because it looks like exactly that.

It essentially is a large hinge, rotating exactly along the axis of the Earth - the hinge axle is parallel with the north and south poles of the earth. When setting up our star tracker, we will need to polar align our mount, which is essentially the process of pointing our hinge at the southern celestial pole – the spot in the sky that is directly above the geographic south pole. Of course, if you are in the northern hemisphere you will need to point your mount at the northern celestial pole. We’ll get into this more after we finish assembling our tracker.

It's worth noting that our camera is not fixed on top of the mount, rather we are using a ball-head mount to allow us to point it freely at any object in the sky. Once we’ve locked the camera to point at our target, we can start up the tracker and the hinge will rotate the camera at a suitable speed.

Our camera is mounted on top of the hinge, and a ball-head is used to manually point and secure the camera at any object in the sky we are aiming to track. Traditionally, this DIY mount is built with a manual hand-crank that needs to be wound at a specific rate. The hand-crank rises a screw thread that pushes the two arms of the hinge apart, creating the desired angle.

As makers, we have access to incredibly powerful microcontroller software and hardware that can be used to fully automate this process. Once we’ve started up our mount, the stepper motor will be programmed to rotate the camera at approximately 0.25 degrees a minute.

The classic “Scotch” barn door mount consists of a simple linear screw thread and one hinge. By doing some basic trigonometry, it is possible to deduce how fast the motor needs to rotate.

While simple and very cost-effective to build, there is a problem with this mount known as “tangential error”. As the mount rises, the motor begins to raise the hinge at less and less of a tangent to the angle. This results in a slower rotation rate over time, which eventually throws off the accuracy of the mount after a couple of minutes.

An alternative design is known as an Isosceles mount, which uses three hinges to create an isosceles triangle within the main arm. Since we’re now rotating the stepper motor as the mount itself rotates, we can maintain a good degree of accuracy for longer exposures.

In our first build, we attempted to build this design but quickly found flaws with its construction. We did, however, build a test circuit on a breadboard and verified that our driving hardware works correctly!

In the final build, we went back to the original Scotch mount design due to its simplicity in construction – we figured that a single strong hinge would reduce any errors in our 3D printing.

The Fundamental Build:

The Fundamental Build of this project will be primarily focused on experimenting with driving the stepper motor and ensuring that we can achieve sufficient accuracy for the final build. While we initially expected to use the 3D printed models in this section for the final build of our star tracker, we found quite a few issues with our first attempt so we later opted to build it again.

PARTS REQUIRED:JaycarAltronicsCore Electronics
1 x A9488 Stepper Driver Black Edition--POLOLU-2128
1 x Arduino Compatible NanoXC4414Z6372CE05101
2 x Prototyping Board--ADA2670
2 x 40-pin Female HeadersHM3230P5390PRT-00115
1m x Solid-Core Hookup WireWH3032W2430PRT-11367
1 x 2.1mm Barrel Jack Adapter--PRT-10811
3 x Tactile PushbuttonsSP0608S1126AADA1010
1 x 100μF Electrolytic CapacitorRE6130R5123CE05258
1 x NEMA-17 Bipolar Stepper Motor 350mA 12V--ADA324
1 x 2.1mm DC Barrel Plug to Alligator Clips--ADA1329


* A breadboard and prototyping hardware is also required.


When a project needs accurate, high torque and precise movement control, it’s usually a pretty good bet that a stepper motor is the answer. As the name implies, by selectively energizing coils within the motor, very precise angular control in individual steps can be achieved. Like most common hardware in electronics projects, there is a large variety of stepper motors available, built for different use-cases. It’s important to be aware of the different types as we’ll need to design our driving circuitry around the motor!

There are two mainstream varieties of hobby stepper motors, Unipolar and Bipolar motors. Bipolar motors are very simple, consisting of two motor phases with a wire at each end – four leads in total. Two H-bridge drivers need to be used to run these correctly, since running two coils in either forward or reverse requires polarity control too. Unipolar motors usually have five wires and two coils with a centre-tapped common connection between them. By applying the supply voltage to the common wire, current can be directed through the coils to ground by using MOSFETs or transistors.

The motor we chose wasn’t anything fancy; we want to keep the complexity and cost to a minimum to show that you don’t need to purchase expensive hardware for astrophotography. We used a NEMA-17 size 12V Bipolar stepper from Core Electronics, which will do the trick just fine. While we could have used a stepper with a smaller step angle than 1.8° to achieve a higher accuracy and therefore smoother rotation, it is important to remember that our motor will be set up to slowly rotate a screw thread, which significantly increases the angular resolution of our mount. Additionally, we plan to use a driver capable of micro-stepping to further smooth out the movement of the motor.


The first thing we set up was the power wiring. There are two separate power rails for this project: 12V for the motor, and 5V for the logic. In the final build of this project, we’ll regulate the 12V down to 5V for the Arduino. However, for the fundamental build, we want to reduce any sources of error and keep the electronics simple.

A 2.1mm barrel jack adapter was used, inserted into the top-left corner of the breadboard. Note that you’ll need a power jack adapter with 2.54mm spacing (often called “breadboard compatible”), as many come with much wider solder tabs. Then, connect the positive terminal to the red rail on the breadboard, and the negative to ground.

It should come as no surprise that the trusty Arduino compatible Nano is the brains of our operation. Small but incredibly powerful, the Nano lets us run code that should be able to correct for most of our inherent inaccuracies with the mount. To connect it up, wire the ground of the Arduino to both of the blue rails on the breadboard, but only add the 5V connection to the bottom red rail. While the ground of our 5V and 12V rails are shared, do not connect 5V to 12V directly!

There are many different ways of driving both Unipolar and Bipolar steppers, from the DIY approach of using MOSFETs manually stepping the motor to using a pre-built motor driver with all of the control circuitry already built-in. We’re choosing the latter as we want the advanced features these fully-fledged stepper controller ICs come with. Our weapon of choice was the A9488 Black Edition controller. It packs a punch for its very modest size, including full current limiting control, 1/16th microstepping and a two-wire interface for microcontrollers.

The A9488 doesn’t come with presoldered headers, so we soldered headers onto ours and inserted it in the centre of the breadboard. The top left of the board needs to be connected to the 12V supply, and the top right to 5V. Add a 100μF capacitor between 12V and Ground.

The data wiring for the driver is incredibly simple, with just two pins: one for direction, and one for stepping! Depending on the HIGH/LOW state of the data pin, the motor will spin clockwise or anti-clockwise. The step pin simply detects the rising edge of a microcontroller digital output, and increments the motor by one step. Super simple stuff.

Since we’re using microstepping to control our stepper motor, we also need to connect three wires from the bottom side of the board to 5V. Depending on which of these wires are connected to 5V, different microstepping modes can be enabled:

LowLowLowFull step
HighLowLowHalf step
LowHighLowQuarter step
HighHighLowEighth step
HighHighHighSixteenth step

As we’re using 1/16 microstepping, we connect all wires to 5V. The stepper driver also requires the SLEEP and ENABLE pins to be connected together. Finally, we need to connect the stepper motor itself to the driver! To identify the stepper motor coils, you’ll need to grab a multimeter and begin testing each coil of the motor. Since our motor is bipolar, there should be two pairs of wires which have resistance between them. If two wires have infinite resistance (i.e. disconnected), those two wires belong to separate phases/coils. You can also refer to your stepper motor’s datasheet for wiring information.

We’re going to add a simple three-button interface for controlling the mount: Up, Down and Pause/Play. This will make it super easy to move the mount to the desired position and completely reset the mount.

Wire one side of each of the three buttons to pins D5, D6 and D7 and then connect the other side to ground. We aren’t using pullup resistors here as we’ll be utilising the Arduino Nano’s inbuilt 20kΩ pullup resistors.


This 3D printing section of Build 1 will be less of a tutorial, and rather more of a reflection of the methods we used to construct it and some problems we had with its practicality and performance. Build 1’s isosceles-style mount uses four 3D-printed arms that connect together with hinges.

We printed our 3D parts in Glow In The Dark filament, and requires a printer bed size of at least 25cm long. You'll need to increase the filament infill somewhat to make sure the strength is high enough to support a DSLR on the top!

We then used 40mm x 50mm hinges with their included self-tapping screws to secure them to the plastic. As we discovered later, these hinges were nowhere near beefy enough to keep the star tracker stable! Additionally, we figured out the hard way it's a bad idea to drive self-tapping screws into plastic parallel to the layer direction - we had a pretty bad split on the top hinge. So make sure to print your models with the flat size down! At this point we also assembled our drive bolt, supergluing a M10 25cm-long thread into the 3D printed adapter in order to secure it to the stepper motor.

Finally, we used superglue to fix the mounting hardware that lets us attach the tripod and ball-head for the camera on top. It shouldn't come as a surprise that you need to be careful around superglue - wear gloves if possible! The four 1/4" nuts on the bottom side of the mount will allow us to secure it to the tripod, with an adjustable weight balance depending on the weight of the lens we are using. In our final build, we moved these nuts so that they are mounted on the opposite side of the plastic, preventing them from being pulled out when the tripod is attached.


The code for this project essentially revolves around handling the button inputs and driving the motor itself. Our first approach to the code was using the delayMicroseconds() function to carefully space out the duration between motor pulses, however, we quickly found that this function is inaccurate when using long delays - 16383us is the largest delay officially supported by the Arduino.

To get around this issue, we used non-blocking code that continually polls whether the last time we pulsed the motor is longer than the time duration specified. If so, we pulse the motor and update the timestamp. We are still using the delayMicroseconds() function to actually send the pulse with a specified delay since it’s not essential that this pulse is of a certain length – as long as it is detected by the A4988 driver chip.

Of course, we don’t want to be constantly winding our motor in one direction only. There needs to be a quick way of both resetting and rewinding the mount. The three buttons on our board should function such that the middle button can play or pause the mount, and the two left and right buttons can move the mount in a specific direction. To fast-forward and significantly increase the speed of the mount to assist with resetting its position, we can simply press a direction button twice. Simple! Our “moveMode” variable determines whether our mount is stopped (0), normal speed (1) or fast-forwarding (2).

void loop() {
 unsigned long cur_time = micros();
 unsigned long cur_delay = current_pulse_delay;
 if(moveMode == 2) {
   cur_delay /= fast_forward_multiplier;
 if(last_step + cur_delay < cur_time && moveMode != 0) {
  last_step = cur_time;
  digitalWrite(3, HIGH);
  if(moveMode == 1) {
  } else {
  digitalWrite(3, LOW);
 digitalWrite(2, wind_dir);
 if(tangent_correction_interval + last_correction_timestamp < millis()) {
   last_correction_timestamp = millis();
   current_pulse_delay =
 for(int i = 0; i < 4; i++) {
  bool state = !digitalRead(button_pins[i]);
  if(state != button_states[i]) {
   button_states[i] = state;
   if(state && last_button_press + debouncingDelay < millis()) {
    last_button_press = millis();

Since we want the buttons to only activate once when it is pressed, we are also using some simple debouncing code that provides a mandatory delay between consecutive inputs. Not all of the code is shown, however we chose to show the core loop() function that provides the core features of the star tracker. Check the rest out in our project files.

The simple 3-button interface we are using for this project will effectively control the motor winding direction and speed. Depending on the movement direction and speed, we can then time and output the stepper timing appropriately. In testing, this is accurate down to a couple microseconds! We also recalculate the motor's speed every 10 seconds, according to our correction function.

Unfortunately, after we finished assembling this first build, we immediately noticed a number of problems. The instability of the three hinges and the drive bolt meant that the mount was simply too shaky to be used. We tested this with a 20-minute time lapse on our camera, and the circular movement of the camera frame suggests the rotational movement of the bolt is not uniform, causing divergence in its direction as it spins. For this mount to work, we need to have perfect (or close to) linear movement on a singular hinge axis. Especially when using telephoto lenses on the mounted camera, even small unwanted movements will completely ruin photos.

It’s very easy to identify the poor construction of the hinges we used once the project is assembled – any sideways movement of the hinges will be amplified. The bottom line is that while this Isosceles mount is theoretically more accurate, it requires more hinges of sturdier construction, which we underestimated. We really need machined precision hinges rather than rolled sheet steel door hinges, but these are not common or cheap. This is a classic engineering example of how a theoretical model of a design could be great, but when practically executed, unforeseen real-world issues arise that the model didn’t predict.

As a result, we’re redesigning the mount to be a more classic “Scotch” type mount with only one hinge. While this mount is less accurate, we have access to incredibly versatile Arduino control and can correct for most inaccuracies within the mount as it moves. We’ll also be using a much beefier hinge, which will be stiffer and have much less unwanted movement. However, if you are more handy with hardware than us, feel free to give the isosceles mount a go! Using much stronger materials and higher quality hinges will make this design highly effective.

The Main Build:


The 3D Printing for our final build is much simpler than the Build 1! There are five main parts to print. The two parts for the upper and lower hinges need to be printed horizontally.

The stepper slider and rail mount should both be printed vertically and sanded after printing to make sure they slide smoothly. They should require minimal force but not have significant wiggle room to maintain accuracy. Lubricant can also be used to help smooth out the slider if your printer has printed with too low a tolerance for sliding.

ADDITIONAL PARTS REQUIRED:JaycarAltronicsCore Electronics
2 x 6-Way 0.1" Screw Terminals*--PRT-16499
1 x 7805 Voltage RegulatorZV1505Z0505ADA2164
1 x 2.1mm Female/male Barrel Jack Extension Cable--FIT0114
1 x Universal Aluminum Mounting Hub for 5mm Shaft--POLOLU-1962
1 x Camera Tripod with 1/4" Mounting Plate---
1 x Camera Ballhead Mount with 3/8" Mounting Thread---
General Hookup Wire---


1 x M10x150mm Stainless Steel Hex Bolt
3 x M10 Hex Nut
4 x 1/4" Hex Nut
1 x 3/8" Hex Bolt
1 x 85MM Fixed Butt Hinge
6 x Self-Tapping 8G x 18mm Screws
1 x M10 Dome Nuts


* 6-way terminals are not required here, 4-way will work fine. Use whatever is easier to source.

Finally, the polar scope is an optional print since it is not part of the upper hinge, but is recommended to help align your mount. We printed our main hinge parts in Glow-in-the-dark filament, which not only provides an indication of where the mount is in the dark so you don’t trip over it, but also illuminates your polar scope for easy alignment.


To assemble the main hinge, you’ll need to use a 85mm x 50mm hinge and screw it in with self tapping screws that will fit the printed holes. The hinge should be as strong as possible and have little unwanted sideways movement.

After that, go ahead and screw on the polar scope. It just needs some M3 screws to tap into the plastic. Looking through the scope should be parallel to looking along the main hinge of our star tracker.


We changed the design of the drive bolt from the Fundamental Build. It now consists of a 150mm stainless steel bolt instead of a low-quality metal screw thread. This should make it easier to align and glue in the bolt so we get a smooth, linear travel. Once the drive bolt holder is printed, use some 10mm M3 screws to secure the metal adapter to it. It’s super important that this adapter is straight, otherwise the bolt will wobble when turned. We recommend mounting the adapter to the stepper motor and turning it to make sure it’s straight.


Our new design requires that the stepper motor can slide up and down, while it extends or retracts the screw thread, lifting the hinge. Many designs we saw online used a couple of aluminium rods to allow the stepper motor to slide, however we’re taking it one step further and using a 3D-printed slider. This should keep the motor as parallel as possible and as an added bonus, we can mount our final build electronics directly onto the slider!

To mount the stepper motor to the slider, sit the slider on top of the motor and screw in the four 10mm M3 screw to hold it in place. The wires coming out of the stepper motor should be facing towards the side of the slider with the two-semicircle wire holes for routing. During testing, we found that the stepper motor heats up considerably – not enough to be dangerous, but enough to melt or at least deform the nearby slider plastic. We recommend wrapping some electrical tape around it as a precaution.


Now it’s time to build the Arduino-controlled circuits that will drive our star tracker. Unique to the world of electronics, the final build of a circuit is often physically much smaller than the prototype – as is the case here! Our electronics will consist of two boards, mounted opposite each other on the motor slider. One will hold the Arduino Nano and the control buttons, and one will hold our power electronics plus the servo driver board.

We cut out two rectangles of prototyping board, with 19 columns and 13 rows. These are fairly small, so go slow when snapping off the board to avoid destroying it.

We started with the control board, onto which we soldered two strips of female headers to appropriately fit our Arduino Nano. We recommend leaving at least a 1-hole border around the prototyping board to avoid breaking the circuit if it snaps on its edge.

Next up, we’re going to solder our tactile pushbuttons for controlling the mount. Note that due to space constraints, we’re using the smaller 5mm pushbuttons here. The “rails'' of the buttons (i.e. the two pins on each button connected together) should be parallel to each other. This will make it simple to run a single ground copper wire underneath to connect them all together.

We soldered in three white solid-core wires from pins D5 to D7, connecting them each to consecutive buttons. To finish off the Arduino control board, we soldered in four 20cm hookup wires to the board – these will eventually connect to the motor board via screw terminals.

Now it’s time to work on the other half of the control electronics – the motor board. Solder the 2.1mm DC jack onto the bottom-right corner of the other rectangle of prototyping board. Alongside it, we added a 7805 regulator – acceptable in this build considering that the Arduino Nano will be drawing on the order of milliamps and thus will not waste much power through the inefficient regulator.

Finally, to help lay out where we want the rest of the components, we added two rows of female header pins for the motor driver – they need to be spaced four pins apart.

The motor board requires inputs for both its logic voltage (5V) and the motor voltage (12V), so you will need to add solid core wire from directly from the 12V input and the output of the 5V Regulator. The third and fourth terminal holes also need to be connected to the two data pins (STEP and DIR) on the driver board. Don't forget to join all three of the microstepping pins to 5V if you wish to use 1/16th microstepping.

A 100μF electrolytic capacitor can also be added between the 12V line and Ground, as close as possible to the stepper driver. And with that, the electronics are finished!

After pushing the wires through the stepper slider, we stuck the two prototyping boards to the plastic using some strong double-sided tape.


We’re adding a mathematical correction function to help maintain the correct movement of the mount. Because we are using a straight drive bolt to raise our mount, as the top arm with the camera continues to rotate, it moves at less and less of a constant angular velocity. An analogy of this problem is to imagine holding onto a door handle and walking in a straight line through the doorframe – the rotational speed of the door will change since you are moving at less of a tangent to the door as you get further away from it. Since the Earth’s rotational speed is constant, the mount will quickly fall out of alignment. To compensate for this problem, we need to use a function to increase the speed of our motor as time goes on.

Here is the tangential correction function we’re using:

t = the current time (seconds)

L = length of hinge to drive bolt hole (m)

R = rotational speed of the Earth in radians (7.29211*10-5rads/s)

p = the screw pitch of the drive bolt you are using (m)

s = the microstepping size of your stepper motor (degrees)

Θ = the smallest starting angle of your star tracker’s hinge (radians)

This equation is fun to derive, so if maths is your thing, give it a go! When we calculate this function, it will give us a time in seconds that corresponds to how long we should wait between stepping the motor. The code for the main build is identical to the fundamental build, since we haven’t changed anything except the correction function. If you want to nerd out with all of the details, check out the project code.

Note: This equation shouldn’t exclusively work on our Star Tracker. If you make your own Scotch mount, this should work absolutely fine. Just substitute the values above for those that correspond to your build, and it’ll work! After around 6 hours, this equation reaches zero so the motor should have a theoretically infinite step rate. Our mount won’t track for that long so we don’t need to worry.


Let’s get our new Star Tracker mount set up! When taking photos, a clear, moonless night is good and an area with minimal light pollution is even better. Head to and find an area near you to take photos with minimal interference from suburban lights. We tested ours in the beautiful Warrumbungle National Park – a dark sky park in NSW, Australia.


Don’t worry, this process isn’t as complex as it sounds! The objective of this is to set up the main hinge of the mount to align with the rotation of the earth as closely as possible. Depending on whether you’re in the Northern or Southern hemisphere, this process varies since there are different stars at the northern and southern celestial poles – we’re writing in the Southern Hemisphere here. First thing's first, we need to tilt our tripod upwards to set our declination – this is simply the latitude of your current location. For example, if you were doing this in Sydney NSW, which has a latitude of around 34 degrees, you need to tilt your tripod above the horizon by 34 degrees as closely as possible. Now, we need to find the Southern Celestial pole and finally align our mount. Once you’ve panned the tripod south, you’ll need to use the Southern Cross and the Two Pointers to get your mount pointing exactly where it needs to be. We’ve attached a diagram to make this easier. Looking through the polar scope we 3D-printed should help you to align.


Now that our polar alignment is complete, we can finally get to taking some awesome photos of the night sky.

After connecting the 12V jack to a battery or wall adapter, press the play button on the control board. Then, simply unlock the ball-head your camera is attached to and point it towards your desired astronomical object. You should see no visible movement in the stars when you zoom in on your camera’s Live View function. After tightening the ball-head so the camera will not droop, use a remote control, an intervalometer or the camera’s smart apps to remotely trigger a photo. Manually triggering the shutter will create large vibrations which will quickly ruin photos!


This is the fun bit: Photos of the night sky! We first tested our mount with 30-seconds to 3 minute exposures on a Canon 200D mkII at ISO 3200, f1.8 (or 2.8 for sharper photos) and a 50mm focal length. You typically want to be using the widest aperture available on your lens and, depending on what you want to be capturing, an appropriate focal length. Bear in mind that longer focal lengths will reduce the time the mount is effective as any errors in movement will be exaggerated.

We also wanted to see how good the results were that we could get when “stacking” photos – the process of taking many photos of the same object and using software to composite them into a single image output. We used a free program called DeepSkyStacker to blend together around 30 frames of 15 second exposures of the Orion Nebula, and this is what we got!

Large Magellanic Cloud and Tarantula Nebula.
Carina Nebula.
Orion Nebula.


If you're interested in astrophotography, this is an inexpensive way of getting awesome images on a budget. While for longer exposures and focal lengths it doesn't rival commercial solutions such as trackers from Sky-Watcher, it certainly does it's job well and removes virtually all streaking under a minute or so of exposure. And remember, these photos were all taken on an entry-level DSLR!

But as with any project, it's worth the time looking at how we could improve it. Starting with some basic "quality of life" improvements, we could definitely do with some limit switches on the mount! This would open up opportunities for full-auto calibration and resetting of the mount. On the performance front, this project could do with some beefier mounting hardware - a stronger tripod mount and more robust drive bolt would be good news for the project's accuracy.

Looking at the concept on a larger scale, the "barn door" geometry is much less common than the solution most commercial trackers use, which consists of a single strong bearing, an accurate motor and a counterweight for the camera. While making this system would be more effort than the barn door tracker, it would be almost certainly more accurate. Let us know what ideas you come up with!

Liam Davies

Liam Davies

DIYODE Staff Writer