Go Back   IceInSpace > Equipment > ATM and DIY Projects

Reply
 
Thread Tools Rate Thread
  #1  
Old 19-06-2022, 10:01 AM
Sayfog (Alistair)
Registered User

Sayfog is offline
 
Join Date: Apr 2018
Location: Sydney
Posts: 49
SympleAstroFocus - a DIY autofocus solution for BYO stepper motor

Hullo, here's something I've been working on the last little while - a (hopefully!) simple to set up DIY focus controller that has a rich featureset in behind it - all designed to make your life easy though:
  • Native USB connection (No more messing about with serial COM ports!)
  • Sensorless homing/stall detection
  • Dynamic current scaling to save power
  • Configurability if needed past sensible defaults.
  • Designed around common hardware, allowing for easy sourcing of parts for DIY construction using only bread-board-able components.

The main hardware is a TMC2209 stepper driver and an STM32F103 microcontroller. You can either make your own on a breadboard/wires or other DIY construction, or order your own assembled PCBs from JLC.


https://i.imgur.com/B0CKhof.jpg

Demo of the sensorless homing in action on a 135mm lens:

https://www.youtube.com/watch?v=gBrDgyxgXSc

More details and downloads here:

https://github.com/AlistairSymonds/SympleAstroFocus


Now I've got that out of the way - I'd be very curious to hear any suggestions anyone has got. Just remember although the implementation may not be simple, the end product is designed to be as simple as can be. Where if you've already got a stepper motor attached somehow it just be a case of plugging in and it would all just work. For example no configuring through recompiling in an arduino ide or having to find which COM port matches up
Reply With Quote
  #2  
Old 19-06-2022, 11:42 AM
sunslayr (David)
Registered User

sunslayr is offline
 
Join Date: Nov 2018
Location: Perth
Posts: 209
Nice work, I was thinking about doing something similar with an esp32-s3 so I could have bluetooth too. Com is such a pain, changing all the time.
Reply With Quote
  #3  
Old 19-06-2022, 01:14 PM
AstroViking's Avatar
AstroViking (Steve)
Registered User

AstroViking is offline
 
Join Date: Mar 2022
Location: Melbourne
Posts: 1,037
Hi Alistair,

That's a very good looking project.

One question - your GitHub page mentions an ASCOM driver - will there be an INDI driver for those of us not using Windows?

Cheers,
V
Reply With Quote
  #4  
Old 19-06-2022, 03:19 PM
Sayfog (Alistair)
Registered User

Sayfog is offline
 
Join Date: Apr 2018
Location: Sydney
Posts: 49
> Com is such a pain, changing all the time.

Agreed! I tried using the myfpascom focuser esp32 variant but found the serial connection or the driver (or something) incredibly unreliable. So decided to spend agers developing my own which wouldn't have that issue instead of debugging someone else's design - clearly a more efficient use of time (not! )

> will there be an INDI driver for those of us not using Windows?
Yes an INDI driver is definitely something I'd love to do down the line - the ASCOM driver is only a few hundred lines with most of it being fairly repetitive get/setting of various data fields so I assume INDI shouldn't be too hard.

Just a matter of setting up a linux partition and the associated indi dev tools - might have to read up on GUIs a bit more though, I'm not used to designing those on any level and the windows forms system makes it very easy to make something dodgy that works, linux migfht need more attention to detail.
Reply With Quote
  #5  
Old 19-06-2022, 08:50 PM
AstroViking's Avatar
AstroViking (Steve)
Registered User

AstroViking is offline
 
Join Date: Mar 2022
Location: Melbourne
Posts: 1,037
Thanks for the quick reply.

I was thinking more of being able to interface the focuser to (say) Ekos and letting it do all work, and communicating to the focuser via an INDI library / plugin.

Does that make sense?
Reply With Quote
  #6  
Old 19-06-2022, 09:50 PM
Sayfog (Alistair)
Registered User

Sayfog is offline
 
Join Date: Apr 2018
Location: Sydney
Posts: 49
yeah definitely just getting that functionality in should be pretty easy - however to expose the more advanced settings like sensorless homing and current scaling I (assume) I would need to create some sort of custom GUI somewhere.

Its a good idea for a v1 INDI driver, I'll have to take a look at it sooner rather than later I think - all the config is saved on the microcontroller itself so you could do any config you need through ASCOM + windows then plug into a linux computer and have it all just work (tm).
Reply With Quote
  #7  
Old 23-06-2022, 07:19 AM
bojan's Avatar
bojan
amateur

bojan is offline
 
Join Date: Jul 2006
Location: Mt Waverley, VIC
Posts: 6,932
I recommend MyFocuserProII. Very low cost, and yet very flexible f/w solution.
I used CZ motors from ebay, they are still quite cheap)
Reply With Quote
  #8  
Old 25-06-2022, 07:18 PM
Sayfog (Alistair)
Registered User

Sayfog is offline
 
Join Date: Apr 2018
Location: Sydney
Posts: 49
Yeah I tried out that project originally but had some issues I didn't feel like debugging, I'd say the key differences between mine and that would be native USB and config being done using the driver as opposed to having to recompile/reflash.

It also has the cool stuff like sensorless homing: https://youtu.be/20G9TGgZjsw

Ultimately I designed mine to be really just BYO stepper then in symply works, as opposed to all the docs/stuff for mfp.
Reply With Quote
  #9  
Old 13-09-2022, 09:42 PM
Sayfog (Alistair)
Registered User

Sayfog is offline
 
Join Date: Apr 2018
Location: Sydney
Posts: 49
A little update on the project - things have been going well with steady progress being made inbetween having holidays and general life/work busyness.

+ ASCOM: Whilst it could have a prettier GUI I've been using it with my moonlite motor + NINA controlling it flawlessly for a few months inbetween clouds and since the release of v1.2 I'm cautiously saying its production ready.

+ Linux/INDI driver progress: There's a C++ driver core I've half written that compiles and runs on both linux and windows. Ideally I'll use this as the base for both an INDI driver and ASCOM on windows to cut down on the amount of code to maintain. Aiming to have the C++ done within in two weeks, and an INDI driver of some degree within four.

+ Hardware: JLCPCB has stock of STM32F103 chips again, and more importantly the prices are significantly lower than when I first started on this in mid 2021. Hurray! Unfortunately it seems as though the DIY option with a bluepill devboard off of ebay seems to be going in the wrong direction pricing wise currently :/

+ Project wise: i've sent out a fair few of the boards for testing/people to try. If everyone ends up being happy with those I think its time to put up a little tindie store or something. Otherwise more docs with answers to the questions I've been asked and restructuring the codebase to use a single set of C files for all the USB definitions shared between host and device.

Any and all feedback/ideas are welcome - no promises since I'm really trying to avoid a scope creep nightmare, but improvements on getting existing stuff rock solid and easy to use are a priority.
Reply With Quote
Reply

Bookmarks

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +10. The time is now 12:34 AM.

Powered by vBulletin Version 3.8.7 | Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Advertisement
Bintel
Advertisement
Testar
Advertisement