26 comments

[ 3.3 ms ] story [ 48.3 ms ] thread
This post reminds me of the beauty of open source. Well done build and a great project summary!
This is really impressive! I considered buying a big harmonic drive mount for my scope, but the cost is really prohibitive.

I have experienced the pain of getting ekos/kstars/indi tools to work well on my personal scope. If you want to try driving indi devices via python I have some python code (it's not super polished, but it does enough for my needs): https://github.com/dahlend/contindi

Cool project. What prompted you to write this? Asking because EKOS already has pretty good scheduling features (I've seen, not used). Along the way I did vibe-code a TUI for controlling the INDI server running on the MeLE 4C minicomputer attached to the telescope: https://www.svendewaerhert.com/content/blog/telescope-mount/... - I switched to a headless setup using a remote indi server after having a bad experience with reliability using remote desktop in Gnome. I'll probably put this TUI on Github once I clean it up a bit.
I'm most impressed with being able to order the CNC'ed metal parts. I'm just a novice cad designer and I'd love to learn that capability.
I joined my local Maker's Space specifically for the machine shop. They had a CNC machine that I took the classes on to be certified. I designed my first simple plate design piece for cinema camera support gear in the CAD software they had connected to the machine. There was even a bit of software that generates the G-code with a simulator to check for head crashes. However, every time I went up there to actually try to build the piece the unit was down because someone crashed the head and destroyed bits. Instead, I wound up using the regular metal working machines to hand make the first piece. It ended with square corners instead of rounded, and some of the hole alignment wasn't as precise as intended. I wish I would have known of one of these types of sites to have the piece still CNC'd instead.
I've been using freeCAD for about 3 years now. Looking at what he was able to make with it blows my mind. I love freeCAD, but I don't think I've ever been so continuously frustrated by a piece of software
Can concur. I jump between OnShape and FreeCAD in my free time. OnShape feels very polished. I go back to FreeCAD, because I've bought some models, I don't want to publish in OnShape's free tier.

It's amazing how much can be done, but anything that I think will take an hour, lasts 6. Many times into the night.

Though very grateful for projects like FreeCAD, I did encounter a fair bit of frustration while designing this. Especially random crashes, which only got worse as the project got more complex. As far as usage goes, it's mostly a matter of knowing how to do things in FreeCAD. I haven't encountered anything I could not achieve in FreeCAD. Having no experience in other CAD software probably helped sticking to it.
I think it’s great that we have FreeCAD as an option and I’m excited to see it mature.

That said, I recommend Autodesk Fusion free tier for anyone who just wants to get quality work done quickly. Some will refuse to use it on principle and that’s fine for them, but it really is quality software free for hobbyist use with trivial restrictions.

EDIT: Getting downvoted, presumably for suggesting a non-OSS software to get a job done. However I’d recommend anyone who just wants to get work done at least consider the options at their disposal. Not every software decision needs to be made on principle.

I've found ChatGPT and Claude to be extremely helpful as guides for this sort of stuff. As long as the software has decent/good documentation for the features you are trying to create, the AI does a great job telling you how to do things. There's definitely deep end stuff that the AI doest have enough reference material for, but I find it much quicker than blinding clicking through stuff or speeding watching YouTube videos.

You can also ask it to build a study guide for you to help build foundational knowledge.

But as always, expect some hallucinations, so ask it to provide links/references.

Cool project. Strain wave mounts are fantastic. Just ordered a wave 150i myself. Can’t wait to not having to waste time balancing my scope anymore.
I love this so much. Is there any open-source software that calculates where a given planet or star might be (based on your coordinates) and automatically finds the star / planet and then follows it? Can these mounts be used with such software if it exists?
One thing that I'd be interested in is having telescope mount suitable for doing quantitative measurements, basically doing astrometry from first principles. To me solving the orbits of planets (etc) based solely on my own measurements sounds very compelling. It would be like retracing the steps Kepler etc did.
Loved the write up, well done to the author. I get the same feeling building stuff with freecad and then printing it. Feels like there is no limit to what can be done. After going through the growing pains of designing stuff that was just poor and difficult to print I’m now confident enough to send it to be printed by jlcpcb or pcbway. And when they tell me to accept the risk of a failed print then I think, “I feel your pain, good luck”. So far I have never gotten a failed print back. Maybe a little warped but way better than my attempts. If I never have to use my large resin printer ever again I will be happy.

On the pcb front, I dread going through those final steps in the pcb ordering process. No matter how many parts I preorder, there is always something that is unavailable. So much churn in component availability.

After using standard EQ-mounts for so long, seeing something without a counter weight just looks wrong to my neanderthal brain. My current mount weighs 40lbs, the counter weight is 17lbs, and the tripod legs are 20lbs. So that's over 75lbs of weight and size of gear to move around every time it goes on a road trip. This design looks like it was a fraction of that. Color me intrigued
Amazing project and write up, very good timing too! I’ve been into amateur astronomy since I was 13, owning a few telescopes and spending many hours with family at star parties.

This week I pulled out our big Meade 10” SCT and our small Meade 4” Newtonian to show my 7yo son the moon and Saturn from my parents Bortle 8 backyard. It was wonderful seeing his awe and surprise, and the fact that my parents were there to see it too.

That 10” SCT is on an old fork mount which is motorized but has no GOTO capabilities at all. I’ve also gone down the rabbit hole of researching mount options, thinking I could just buy my way out of it. However, as much as I like the idea of GOTO, a big part of the fun is finding the objects. So I’ve never been able to pull the trigger. I did buy a ZWO 585MC though, I’ve always wanted a dedicated cooled camera.

That said, we have lost way too many hours to trying to find objects. The Telrad isn’t always enough!

I’ve been looking into using my 3D printer and electronics know-how to build my way out of this. I was even thinking of swapping the motors for NEMA 17 steppers.

Then I stumbled upon PiFinder, and I think this project is going to be the exact balance of automation and Push-to guidance that I would like.

https://www.pifinder.io/

It’s a wonderful hobby and I think the latest in 3D printing and PCB manufacturing does mean we’re going to be able to solve a lot of these problems soon.

> Then I stumbled upon PiFinder

HorizonXP - I think you should submit this as a story/link!

This is great! I never understood how people learn how to make solid PCBs, I've made a few things but I think I must be missing some decoupling capacitors or resistors or whatever, because my microcontrollers aren't very stable. How do you all just know what stuff to put on the PCB? Do you read the datasheet for the component and add whatever is there?
So is the accuracy and stability he achieved better or worse than the commercial mount?
You could sell kits for this btw. There would be demand. And I think you could be quite successful.

The reason is that Trump is tariffing the hell out of the main Chinese telescope accessories manufacturer, ZWO. So if you can provide a non-Chinese alternative....

Think of trying to be Prusa 3D solution in the astrophotography area.

One tiny nit on this amazing project / write up. He mentions that the traces have to be extra wide to support 24V. In truth though, the higher voltage means lower current, which means if anything the traces can be less wide. The size of the traces is determined by the current they carry, the voltage determines how much space must be between the traces (but it’s unlikely to be an issue at these voltages).
Nice. Harmonic drives are my 'favourite' machine element. The lash is silly and watching the carrier(?) deform is hypnotic.
I would encourage the author to share the kicad board and freecad parts on github.
Great project!

The cost of the PCBs must be driven by assembly, right? The board itself should qualify for JLCPCB's budget offer at least: 2 layers (judging by the KiCAD-screenshot), < 100mm, HASL, nothing special about solder mask or board thickness either from the look of it. I'm not not sure about the plated slots of the USB connector, though? Do these cost extra?

How many did you get assembled per version? Just two of the boards or all five of them? Did you try to stick to using the standard parts or extended library? Which difference would it have made to do some work on the PCBs yourself, e.g. by soldering the through-hole connectors by hand?

Either way, it is definitely an amazing project!

Edit: as soon as any part is from the extended library, all different components (even standard ones) incur a cost for loading them into the pick and place machine, right? So minimizing number of different components is the only way of keeping the cost down, I guess.

From the blog: "Not surprising once you understand that slewing to a target significantly increases the number of pulses per second sent to the motors, and everything became just too much to handle for our little ESP32."

A hobby application of mine involves driving multiple steppers at high-ish frequencies, following sigmoid curves precisely and no tolerance for glitches, because the mass and the cost of the device(s) is too great to risk any failure in pulse output, and there is no feedback, so I must not suffer "missed" steps, glitches, etc. The big hammer that solves this is obviating the MCU core (ARM or otherwise,) in motion control and using timer peripherals with DMA.

Ultimately, I ended up turning to STM32G4 MCUs because of the ACT (advanced control timer) peripheral. These timers can generate arbitrary waveforms using DMA in a relatively simple manner: the ARM core and its code/RTOS/whatever can suffer whatever overload, priority inversion, sleep mode, etc. happens to emerge, and the timers are unaffected.

Today I would consider using RP2350 and the PIO peripheral, which is also capable of achieving this, I believe.

ESP32 has its MCPWM peripheral, but I determined that with MCPWM you can't do the sort of arbitrary acceleration/deceleration profiles I needed in a 100% "core-free" manner without either a.) cascading timers or b.) using interrupts. The former is, comparatively speaking, complex[1], and the later gets you back into the MCU core, and possible glitches[2]. With the ST ACT peripheral, the problem is self contained to one timer per motor: simple and straightforward. At least one of their MCUs has three of those timers (G474, in larger packages, for example.)

The other way to go is specialized motor driver ICs. Analog Devices, by way of their Trimanic line of devices and low cost breakout boards, has great products there, widely used with 3D printers, CNC and similar. The driver software is much more complex than my simple ACT peripheral solution, however.

[1] I know it's possible and others have done it. The ST peripheral is far easier to get working and get right, if you can deal with CMSIS and the ST reference manual.

[2] I know about interrupt priorities. I also know about code evolution, bugs and other ways that dealing in interrupt priorities can get fragile.

So a note on the capacitor bank. Basically the power cable from the USB-C supply acts as an inductor. Meaning, it has an LC (C from its capacities) filter which acts as a low-pass. The capacitors on-board basically are here to counteract that. If you think about it, let's say the motors do start taking a high amount of current. Where would it come from? In an instant, an inductor can't change how much current goes through it, so it'll basically look like an open. That's where the capacitors come in. They'll provide the current while the inductor is responding. Eventually the inductor will allow current flow out of the supply's capacitors.