Jjrobots startracker

Hi there!

I am planning to make the Startracker by JJrobots (link here: StarTracker – jjrobots) and I cannot find this one part anywhere on the internet (I even used the wayback machine and stuff like that). I'll post a picture of it down below. It is the orange-looking circuit board which is labeled "Stepper motor control module" or something like that. It has a link below that says "board redacted" so I assume that it is discontinued. I was wondering If I could use the JJrobots brain shield along with a Leonardo and a stepper motor driver instead. And if I do does anybody have any code adapted for the brain shield? Thanks for the help.
-Raidriar01

https://ibb.co/pWpkHkr
there is the link to the image of the board posted on the website
(the bottom board below the arduno mini is the board I have questions about)

Any small stepper (200 steps/revolution or higher) with enough torque to turn the screw will work. Pololu has a good selection of stepper motors, stepper drivers and setup guides.

That is called a "barn door" equatorial mount. Here is a sketch I wrote in 2020 to drive such a mount:

// Using a stepper to move an equilateral barn-door tracker at sidereal rate.
// Written by John Wasser, on May 23rd, 2020

const uint16_t StepsPerRevolution = 200;
const float MillimetersPerRevolution  = 1.0; // 1mm pitch threaded rod
const uint16_t RotationRadiusMM = 400;  // Distance from hinge to threaded rod.

// Some sidereal rate constants:
// Seconds per Sidereal Day: 86164.0905  (Astronomical constant from Wikipedia)
// Radians per Second 7.2921158579e-5  (2 Pi radians divided by Siderail Day in Seconds)
const unsigned long MillisecondsPerRadian = 13713441;

uint32_t TimeAtLastStep = 0;
uint32_t IntervalToNextStep = 0;
uint32_t CurrentSteps = 0;  // Barn Door Tracker starts closed.
float CurrentAngle = 0;

void setup()
{
  Serial.begin(115200);

  TimeAtLastStep = millis();
}

void loop()
{
  uint32_t currentTime = millis();

  if (currentTime - TimeAtLastStep >= IntervalToNextStep)
  {
    TimeAtLastStep += IntervalToNextStep;
    
    // Code Here to Step Once
    digitalWrite(LED_BUILTIN, HIGH);
    delay(1);
    digitalWrite(LED_BUILTIN, LOW);
    
    CurrentSteps++;

    uint32_t nextStep = CurrentSteps + 1;
    float nextRodLengthMM = (nextStep * MillimetersPerRevolution) / (float)StepsPerRevolution;

    float nextAngle = asin(nextRodLengthMM / (2 * RotationRadiusMM)) * 2.0;
    float deltaAngle = nextAngle - CurrentAngle;

    IntervalToNextStep = MillisecondsPerRadian * deltaAngle;
    CurrentAngle = nextAngle;

    Serial.print(currentTime);
    Serial.print('\t');
    Serial.print(CurrentSteps);
    Serial.print('\t');
    Serial.println(IntervalToNextStep);
  }
}

So this code will work with any barn door tracker with an Arduino, right?

It should, as long as both legs are the same length (RotationRadiusMM). It's set up for metric measurements and threads but it could be adapted to other units. The ratio of RotationRadius to ThreadPitch is the only important thing so they just have to be in the same units.

Ok, I'm new here so I have no idea what you just said. Would you mind explaining to me what the legs and Threadpitch as well as the rotationradius is and how to measure them to input the correct units into the code? Sorry for bothering you, I'm not very good with all this coding stuff haha.

See the "Isosceles mount" design. The sketch eliminates tangent error by changing the step rate over time.

Interesting. I'll be sure to check it out to get an idea of how all the measurement stuff works with the screw and all that.