Configuration, it's definition; an arrangement of elements in a particular form, figure, or combination, doesn't tell us too much of what we're about here. What we are trying to do is to get the OnStep software to talk to our STM32 controller so it will make our mount do as we desire.
Well there's a few things you have to do before you continue here. If you haven't gone through the prior post on configuration do that first. The scarred veterans of that experience can continue.
OnStep will work with just about any telescope mount you may imagine. But we can't do that right out of the box. It needs to be told the details of your mount. Configuration is what gives it its great flexibility. I guess it may be more accurate to say Howard Dutton & friends have designed OnStep with the flexibility to adapt to any configuration. All we have to do is to accurately communicate our mount's details to OnStep.
If you have done this with OnStep versions before 3.16, it's time to learn it again. Gone is the Configuration Generator and ConfigXXX.h. If this is your first go you won't miss them. There is now just one Config.h file for all the OnStep controller designs. So here's how to use it.
After you've down loaded OnStep-beta.zip (ver. 3.16), move it into your Documents/Arduino folder and expand it. Go into your old OnStep folder and delete all the files. Open the OnStep-beta folder, copy all the files and folders and paste in the old OnStep folder. Good House Keeping tip: don't hang onto old versions of OnStep. The Arduino IDE will find them and get confused.
When you open the OnStep folder you will see the Config.h file. Do your self a favor and save a copy of the native file as XConfig.h somewhere, just in case you have start from GO.
In the file, which should be opened in a text editor like Notepad, you will find, by my count, 103 "define" statements that together describe you mount's characteristics to Onstep. Don't panic! To get started you only have deal with about 20 of them. Yeah, it's like twenty questions and you know the answers, only OnStep doesn't. OK, here an example for a fairly simple Vixen SP.
- #define PINMAP STM32
- #define SERIAL_C_BAUD_DEFAULT ON // needed for STM32
- #define MOUNT_TYPE GEM
- #define LED_STATUS ON // I like the light
- #define BUZZER OFF // I unlike the this
- #define BUZZER_STATE_DEFAULT ON //
- #define TIME_LOCATION_SOURCE DS3231
- #define ST4_INTERFACE ON
- #define ST4_HAND_CONTROL ON_PULLUP
- #define TRACK_AUTOSTART ON // at least at 1st, I go w/ON
- #define TRACK_REFRACTION_RATE_DEFAULT ON
and deal with statement 42; define AXIS1_STEPS_PER_DEGREE, et seq. [Didn't think you'd ever need that Latin, huh?
The circled values should be transferred to you Config.h file as follows:
- #define AXIS1_STEPS_PER_DEGREE 15360
- #define AXIS1_STEPS_PER_WORMROT 38400
- #define AXIS1_DRIVER_MODEL DRV8825 // driver model
- #define AXIS1_DRIVER_MICROSTEPS 64
- #define AXIS1_DRIVER_MICROSTEPS_GOTO OFF // no µstepping during slews
- #define AXIS2_STEPS_PER_DEGREE 15360
- #define AXIS2_DRIVER_MODEL DRV8825
- #define AXIS2_DRIVER_MICROSTEPS 64
- #define AXIS2_DRIVER_MICROSTEPS_GOTO OFF
// THAT'S IT FOR USER CONFIGURATION! You may want to come back and adjust things as you gain experience with your mount, but for now you should be working. Now copy your edited Config.h over the native Config.h and go on to flash your controller.