Topics

Newbie to OnStep


Kedar
 

Hi,

First of all, awesome project! Almost exactly what I was looking for. Thanks!

I have an Orion EQ3 mount with a Newtonian 6" reflector. The EQ3 mount has a drive only for RA. Declination is manually operated worm wheel. I am planning to convert this mount to a full Goto using OnStep. I have spent past few days voraciously reading up everything on the wiki. I am comfortable with embedded C (firmware developer by career) and also soldering etc. The mount has placeholder screws for adding dec drive and likely enough space to put up a NEMA17 motor which can slew faster.

For now, I am intending to build a protoboard with sockets for modules. I am trying to figure out what is a way forward that allows growth later. As can be expected, I have many questions and would be glad if someone can help answer them.

0) What is the hardware setup that would get me off the ground quickest?
     It seemed to be the new FYSETC S6, but I can't find it locally in India
     My choices (based on availability locally)
     a) Wemos R32 with CNC V3
     b) ProtoBoard with Teensy 4.1 or 4.0

1) Can I start with a cheaper A4988 or 8825 as motor driver
     and then later switch to the likes of TMC5160?

2)  How does OnStep know which motor driver the board has?
     Is it thru config.h?

3) Do I really need RTC and GPS? Can't OnStep take both these
     from the android control app?

4) What is the typical way to power this setup?
     I am planning to build a custom Li Ion battery pack capable of
     yielding 12v and about 3A.

5) How do I choose a stepper motor? Isn't picking up the
    one with greatest torque within NEMA17 stable logical?
    I have checked the motor current, and most are in 1.5A or less range.
    Are there other considerations than Torque & Current in combination
    with the motor driver I choose?

Someone reported success with Teensy 4.1 being used as 4.0. I am planning to use this same approach. I am comfortable with embedded C, and could help add 4.1 support once I get off the ground.

Thanks in advance. This is an awesome project.


Thanks/Kedar


Khalid Baheyeldin
 

On Wed, Nov 18, 2020 at 06:32 AM, Kedar wrote:

Start by reading the showcase page https://onstep.groups.io/g/main/wiki/4414
There are several EQ3 mounts there.

0) What is the hardware setup that would get me off the ground quickest?
     It seemed to be the new FYSETC S6, but I can't find it locally in India
     My choices (based on availability locally)
     a) Wemos R32 with CNC V3
     b) ProtoBoard with Teensy 4.1 or 4.0

If it was me, I would go with the R32, since it is really cheap and fairly easy
to put together. Later, I would consider something else without worrying
about money or effort put into the R32.

1) Can I start with a cheaper A4988 or 8825 as motor driver
     and then later switch to the likes of TMC5160?

Those two are not recommended, since they have limitations.
You can start with an LV8729 though.

2)  How does OnStep know which motor driver the board has?
     Is it thru config.h?

Yes. PINMAP variable.

3) Do I really need RTC and GPS? Can't OnStep take both these
     from the android control app?

Not required.
RTC helps inaccurate clocks on Arduino boards. But other boards are
accurate enough.

4) What is the typical way to power this setup?
     I am planning to build a custom Li Ion battery pack capable of
     yielding 12v and about 3A.

That would work, if your motors are running at 0.7A or so.

5) How do I choose a stepper motor? Isn't picking up the
    one with greatest torque within NEMA17 stable logical?
    I have checked the motor current, and most are in 1.5A or less range.
    Are there other considerations than Torque & Current in combination
    with the motor driver I choose?

For your mount, the 0.9A 0.9 degree NEMA17 motors should do the job with
a 2.5:1 pulleys.


Howard Dutton
 

So might end up something like this:

https://onstep.groups.io/g/main/message/26375


Kedar
 

Pardon if my questions sound dumb, but I have zero experience with stepper motors.
I got the Wemos D1 R32 and CNCv3 hat. I am getting ready to make the Y power cable this weekend & power try getting OnStep to work fully.
How do I wire up the motors the "correct" way? Is it trial and error and swap one or the other winding polarity?
Here is what I am planning to do:

0) Use an automotive 2Amp fuse which I think is certainly DC rated and make a Y power cable with this fuse in path.
1) Wire up the motors making sure the windings are correctly paired (no cross wiring) that current actually flows.
2) Pretend I have hooked up the motors to the mount in the correct orientation
3) Using the android app, point the "scope" to a star on eastern horizon.
4) I know the direction in which the motors should be turning the worm gears to slew to that star.
5) If any axis is wired up wrong, swap the connections on one of the windings of the stepper motor on that axis.

I am a bit confused about the number of ways you can wire up a 4 wire 2 winding device to 4 pin header on the CNCv3.

Any inputs highly appreciated.


Thanks/Kedar


Lloyd Simons
 

You can see in this pic how mine are wired. Refer to the schematic for your stepper but the pairs for mine are red/blue and green/black. From L to R i have Blue/red/green/black and I have reverse ON in  config.h. I never experimented with changing the wiring.


Kedar
 

Hi,

Made some progress, but again stuck. I can now compile upload OnStep to the Wemos D1 R32 board. OnStep is now running and responds to :GVP# with On-Step#. I can also pair "OnStep" with my Android phone over Bluetooth. But it immediately disconnects after pairing. Any subsequent attempts to connect don't succeed.
ANy ideas on what is going wrong?

Thanks in advance,
Kedar


Kedar
 

On the serial monitor, I get the following error:

On-Step#0On-Step#On-Step#1Guru Meditation Error: Core  1 panic'ed (Cache disabled but cached memory region accessed)
21:42:08.663 -> Core 1 register dump:
21:42:08.696 -> PC      : 0x400e5518  PS      : 0x00060034  A0      : 0x80081304  A1      : 0x3ffbe920   
21:42:08.796 -> A2      : 0x000143a2  A3      : 0x00000001  A4      : 0x00000001  A5      : 0x00000001   
21:42:08.895 -> A6      : 0x00060021  A7      : 0x00000000  A8      : 0x80081160  A9      : 0x00000020   
21:42:08.994 -> A10     : 0x3ffbf264  A11     : 0x00000000  A12     : 0x000143a2  A13     : 0x00000000   
21:42:09.061 -> A14     : 0x00000001  A15     : 0x56800000  SAR     : 0x00000006  EXCCAUSE: 0x00000007   
21:42:09.193 -> EXCVADDR: 0x00000000  LBEG    : 0x00000000  LEND    : 0x00000000  LCOUNT  : 0x00000000   
21:42:09.293 -> Core 1 was running in ISR context:
21:42:09.326 -> EPC1    : 0x40087241  EPC2    : 0x00000000  EPC3    : 0x00000000  EPC4    : 0x400e5518
21:42:09.425 ->  
21:42:09.425 -> Backtrace: 0x400e5518:0x3ffbe920 0x40081301:0x3ffbe940 0x40081959:0x3ffbe960 0x40084de1:0x3ffbe980 0x4008723e:0x3ffba190 0x400831c7:0x3ffba1b0 0x4008e6e1:0x3ffba1d0
21:42:09.591 ->  
21:42:09.591 -> Rebooting.


Kedar
 

I am running the master branch code. Output of git log on my checked out copy of OnStep code:

commit d7c9b8bef676c645e2939536b61b0bf7e363d723 (HEAD -> master, origin/master,
origin/HEAD)
Author: Howard Dutton <hjd1964@...>
Date:   Tue Nov 17 09:34:15 2020 -0500

    Upped patch level


Kedar
 

Hi,

I made some progress and am now able to slew & point the telescope to specific stars and the alignment seems to be "OK". My latest problem is this: when I slew the telescope, my motors are able to drive the scope well. But when I am in tracking mode, I find that for specific orientations (likely worsened by balancing/lack of it, or non-uniform stiffness of the gear train etc.) the RA drive can't track. The motor shaft kind of creeps forward, but can't transition to the next step position and slips back into old position. At this same time and same orientation/position (where tracking was not working) if I slew the motor the motor can easily move the drive.

What would cause this?

My suspects are the following:
1) I have a 16T GT2 pulley on RA motor driving a 40T pulley on the RA worm drive. Is it possible that the 16T pulley can't transmit the needed torque
2) I my motor weak? I have a 4.2kg-cm motor with current rating of 1.4A & I use LV8729 with 128 microsteps to drive it. My vref is 0.9v.
    The LV8729 documentation says the formula is Current limit = Vref*2
     I tried using Vref of 0.28v thru 0.5v. They don't work as is the motor can't track or slew.
     After some trial and error, I settled on this Vref, but haven't experimented with 0.6v thru 0.8v.

How to fix this? I thought of the following, but need advice.

1) Use a 30T pulley to increase the #teeth the motor shaft has to transfer torque.
2) Lower Drive current thru Vref in 0.6 thru 0.8v range
3) Use a more powerful or geared motor.

Any ideas would be greatly appreciated!

Thanks
Kedar


Curly
 

Hi Kedar I’m no expert but from my understanding most OnStep users have micro stepping set to 64 or even 32. 
128 steps will produce very little torque. 
The 16t pulley on the motor is good, do not fit a bigger one as this will REDUCE torque. 

The smaller the drive gear compared to the bigger the driven gear gives the most torque. 
So try lowering the micro steps to 32 or 64 first. 
If you don’t have enough tracking resolution to do that you need to swap the 40t pulley for something bigger eg 60t. This will increase your reduction by 50%

Curly 

On Mon, 30 Nov 2020 at 09:23, Kedar <kpatankar7@...> wrote:

Hi,

I made some progress and am now able to slew & point the telescope to specific stars and the alignment seems to be "OK". My latest problem is this: when I slew the telescope, my motors are able to drive the scope well. But when I am in tracking mode, I find that for specific orientations (likely worsened by balancing/lack of it, or non-uniform stiffness of the gear train etc.) the RA drive can't track. The motor shaft kind of creeps forward, but can't transition to the next step position and slips back into old position. At this same time and same orientation/position (where tracking was not working) if I slew the motor the motor can easily move the drive.

What would cause this?

My suspects are the following:
1) I have a 16T GT2 pulley on RA motor driving a 40T pulley on the RA worm drive. Is it possible that the 16T pulley can't transmit the needed torque
2) I my motor weak? I have a 4.2kg-cm motor with current rating of 1.4A & I use LV8729 with 128 microsteps to drive it. My vref is 0.9v.
    The LV8729 documentation says the formula is Current limit = Vref*2
     I tried using Vref of 0.28v thru 0.5v. They don't work as is the motor can't track or slew.
     After some trial and error, I settled on this Vref, but haven't experimented with 0.6v thru 0.8v.

How to fix this? I thought of the following, but need advice.

1) Use a 30T pulley to increase the #teeth the motor shaft has to transfer torque.
2) Lower Drive current thru Vref in 0.6 thru 0.8v range
3) Use a more powerful or geared motor.

Any ideas would be greatly appreciated!

Thanks
Kedar


Howard Dutton
 

On Mon, Nov 30, 2020 at 02:00 AM, Curly wrote:
Hi Kedar I’m no expert but from my understanding most OnStep users have micro stepping set to 64 or even 32. 
128 steps will produce very little torque. 
This isn't really true.

Where you see statements like this folks are talking about the holding torque (rotor angular displacement allowance) within the fraction of a step.  I.e. a 1/128 step (for a 400 step motor = 0.007°) displacement requires less torque applied vs. a 1/2 step (0.45°) displacement.  It doesn't mean displacing the rotor a full step (so it then misses a step/stalls) is going to require much less torque.  In our application the fine micro-stepping reduces resonance (due to vibration from those big jumps in rotor position) and wasted torque at useful speeds and often improves performance.


Howard Dutton
 

On Mon, Nov 30, 2020 at 01:23 AM, Kedar wrote:

How to fix this? I thought of the following, but need advice.

1) Use a 30T pulley to increase the #teeth the motor shaft has to transfer torque.

As curly said, isn't the way to go.

2) Lower Drive current thru Vref in 0.6 thru 0.8v range

I wouldn't go above 0.45V for 0.9A. The maximum allowed would be 0.63V for 100% power but motors get quite hot when doing that and they don't perform better.

You can confirm that the motors get rather warm when running at Vref=0.45V, that provides some evidence the LV8729 current sense resistors are as expected.

3) Use a more powerful or geared motor.

I'd look at the mount mechanical aspect first and see if I could get rid of that binding.

Is worm adjustment possible?


Drew 🔭📷🚴‍♂️
 

First and foremost is to get the mechanicals right. Even a 4.2kg-cm motor can produce enough torque to tear things up. I wish I did not know that. Without the timing belt in place test the axis by spinning the 40T pulley by hand thru the entire range (with the scope in place). Do this both directions. If you detect any binding that requires effort or leaves indents in your fingers this must be corrected first. The required force should be fairly even throughout the entire range. Twisting the pulley in back and forth should give you an idea of the backlash. There should be some but a "click" or some free rotation indicates adjustment  is needed.

The LV8729's come in two versions with regard to current limiting. See this thread: https://onstep.groups.io/g/main/message/6821 The formula you are using assumes a R100 reference resistor. If you have the version with the R220 reference resistor the current is reduced by 45%. This could easily cause the problem you are reporting.


Kedar
 

Howard,

I would definitely look at opening the mount hub & rebuilding it to understand where these strange jumps & gummed up zone's come from. May be something is stuck in the gear teeth. But that has to wait for the weekend.

About my suggestion to use a 30T pulley, I was intending to pair that with a similarly larger other side to keep the velocity ratio close. From the current 16:40, I would go to 30:60 or a geared stepper motor (14x gear ratio) with a 30:30 pulley.

I tried out 32 & 64 steps, and they just make the whole thing more noisy and I see missed steps / gummed up zones showing up during slew which never happened before.

What is "worm adjustment"?

Thanks/Kedar


Kedar
 

Drew,

You are right. My LV8729 is the "odd" type, with Desired Current = Vref/1.1. I unplugged the driver, and on the underside, I could see two R220 (0.22 Ohm) resistors. Also factory default Vref for my LV8729 was 0.8v as mentioned in the thread you pointed to. The max Vref is 1.46v. For me, the Vref in 0.8 thru 1.1 work best, with motor stalling at both extremes.

I removed the top off my worm gear assembly for RA and rotated the RA axis while examining the gear teeth. I don't see much wear at all, which is consistent with very light use. The mount is in mint condition. Nor do I see any serious obstructions. I haven't dis-assembled it yet. Waiting for the weekend. What grease should I use? Basic bicycle grease would do or do I need fancy silicone/MoS2 types?

After examining the worm assembly, I think my RA drive is just under-powered. When I see the motor stall, if I provide manual assist or adjust counterweights to favor the RA, tracking works as well as slew. My RA gear wheel has 130 teeth. Would GR2 of 2.5 suffice with a 4.2Kgcm motor driven at 0.9A suffice? I am thinking of using a 60T/16T pulley giving me 50% more torque compared to 40T/16T. and using 80% of rated current instead of the 70% I am currently doing.

Thanks
Kedar


Drew 🔭📷🚴‍♂️
 

On Tue, Dec 1, 2020 at 10:18 AM, Kedar wrote:
The max Vref is 1.46v.

Glad you found that one out. I am not sure which one is actually the oddball. Another problem is the Vref voltage. You have a 5v supply. My MaxESP2 board has 3.3v supply which creates a 0.96v "ceiling". I have moved on to TMC2130/5160 SPI myself. I prefer the config.h control and other options.  I still use the LV8729 for my focuser.

What grease should I use?
I am a fan of "SuperLube" https://www.amazon.com/Super-Lube-92003-Lubricating-Translucent/dp/B0081JE0OO/ref=sr_1_2?dchild=1&keywords=superlube&qid=1606838912&sr=8-2. I also like Tungsten Disulfide as dry lube. https://www.amazon.com/Tungsten-Disulfide-Sulfide-lubricant-powder/dp/B08722JW9H/ref=sr_1_23?crid=8JRRQGJYZODL&dchild=1&keywords=tungsten+disulfide+ws2+powder&qid=1606838966&sprefix=tungsten+di%2Caps%2C191&sr=8-23
Both of these are far superior to anything they used in these old scopes.

I think my RA drive is just under-powered.
I don't. A 4.2Kgcm 0.9A motor is enough in my experience. I would not go over 75% rated torque. It uses the most current at standstill, make sure you can touch it. If it is really hot to the touch back the current down. I use 48T/16T commonly.

Again, I would eliminate all mechanical issues first. There is just no substitute for a butter smooth motion. The 200" at Mt. Palomar's claim to fame is you can move it  by hand.


Khalid Baheyeldin
 

On Tue, Dec 1, 2020 at 10:18 AM, Kedar wrote:
My LV8729 is the "odd" type, with Desired Current = Vref/1.1. I unplugged the driver, and on the underside, I could see two R220 (0.22 Ohm) resistors. Also factory default Vref for my LV8729 was 0.8v as mentioned in the thread you pointed to. The max Vref is 1.46v. For me, the Vref in 0.8 thru 1.1 work best, with motor stalling at both extremes.
I used the same LV8729, the ones with the R220 resistors.
They were set to output 0.67A for my tiny NEMA11 motors, and they work well.
But part of that is my high reduction (180:1 and 18:1).
They can move the mount even when it is out of balance.

Like Drew I moved to the TMC5160 and like the way current is set in Config.h rather than potentiometers.
But that was mainly motivated by my moving to a board that cannot do mode switching on LV8729 (FYSETC S6).


Kedar
 

Drew,

While I am waiting for the weekend to disassemble / rebuild the mount, I found this youtube video which goes into detail on "worm adjustment". I tried it and it certainly has made the worm gear smoother. But in the process I discovered another problem. If I hold the "worm gear" part of the hub in hand, unlock the clutch which frees the mount for manual move and "spin" the base (with polar alignment scope), there is one specific orientation at which there is more stiffness in one direction of rotation. The area of stiffness is about 5 degrees of rotation. When I do this, the worm is not engaged/driving due to unlocking the clutch.

What could this be?


Thanks/Kedar


Drew 🔭📷🚴‍♂️
 

On Thu, Dec 3, 2020 at 07:04 AM, Kedar wrote:
The area of stiffness is about 5 degrees of rotation.
This is not uncommon. Only when you disassemble, polish and regrease will we be able assess it. Take a lot of pictures as you take it apart, both for reference and to post to the group. Almost all of my bushing type mounts have a tight spot or two. The goal of the refresh is to minimize these and adjust the axis so they do not bind there.

As to what causes this I have several theories. Perhaps George can comment on this, he has extensive experience with mount and their particularities.


Kedar
 

I spent few hours cleaning up the RA worm gear assembly of my mount and now I am glad to report that the "motor stalls during tracking but OK during slew" is gone. I did open the whole RA assembly, just the worm gear and thru that opening, while turning the worm gear, I cleaned it up with WD-40 and then some toothpicks to clean the gunk and finally with grease. Also the RA motor now makes slightly louder and different sound when slewing. But is very quiet during tracking.
Can't wait to try this out on real sky.

Thanks go to Howard & Drew. Without your guidance, I would likely have used a higher torque motor without cleaning the worm and over a period of time thoroughly messed up the mount. I will put up the whole story with pictures and report back! Planning to take it to my local amateur group tomorrow evening!


Thanks/Kedar