Difference between revisions of "SatNOGS Rotator Controller"

From SatNOGS Wiki
Line 130: Line 130:
==== Encoders ====
==== Encoders ====
For stepper motor setup is optional.
For stepper motor setup is optional (AS5601 encoder).
* AS5601 encoder
<br clear="all"/>
<br clear="all"/>

Revision as of 13:38, 1 September 2017

SatNOGS Rotator Controller
SatNOGS Rotator Controller
Type: Rotator Controller for SatNOGS rotator.
Cost: ?
Release Information
Status: Working
Latest Release: [v2 v2]
Repository: SatNOGS Rotator Controller
Documentation: SatNOGS wiki


SatNOGS Rotator Controller refers to the set of electronics designed to operate a SatNOGS Rotator. There have been multiple iterations of the rotator controller design, but the modularity of the approach enables operations between different versions of the controller and the rotator. Since the start of 2016, the rotator controller design is able to facilitate a DC-motors or stepper-motors rotator design. We intend to keep this modularity for the electronics and firmware design to facilitate the variety of build by our community.

Rotator Controller v2

The PCB are tested in this ground station.


  • It is designed to fit the entire electronics needed to control rotator in Euroboard 80x50 mm.
  • Main micro-controller is Arduino pro-mini dev-board with ATmega328p.
  • The modular design includes plug-in either DRV8825/A4988 or DC motor drivers (MC33926).
  • The power supply in embed in the same board in contrast with previous version.
  • Filter in power supply of micro controller.
  • It has an I2C multiplexer to connect I2C encoders AS5601 (same ID) to get position feedback for each axis.
  • A temperature sensor TC-74 monitoring the temperature inside the controller box in order to protect them from over-temperature.
  • More dev-pins to connect other peripherals like IMU, LCD display.
  • Pins with RC-Low Pass filter for end-stops.
  • Default communication interface is RS-485 (WIP) but it can be also used UART.
  • Avoid connection with GNDD directly with motor GND use keep out area.
  • Electrolytic capacitor and TVS-diode in PSU input

Build sequence

  • Make sure you have a mechanical assembly of the rotator constructed and ready
  • Buy the PCB
  • Assemble the PCB, by soldering the components
  • Burn the firmware
  • Using the wiring diagram, connect the controller to the Rotator
  • You are ready! Proceed with testing

Micro controller

Microcontroller Orientation
I2C pull-up resistors

Motor Drivers

Stepper motor driver
Stepper motor driver

For the stepper motor driver 2 options are tested, DRV8825 and A4988. For both options it is necessary to solder:

  • 2 electrolytic capacitors C3, C4 100uF
  • 4 single 0.1" male connectors for U3, U4
  • 2 fixed terminal blocks, Phoenix 1985467
  • 6 jumpers to adjust the micro-step, default option is Full Step
  • Not solder 2 resistors 100k, R4, R7

Be careful:

JP3/JP6 JP2/JP5 JP1/JP4 Microstep Resolution
Low Low Low Full step
High Low Low Half step
Low High Low 1/4 step
High High Low 1/8 step
Low Low High 1/16 step
High Low High 1/32 step
Low High High 1/32 step
High High High 1/32 step
DC motor driver



UART Jumpers
Pin Header

To use UART:

  • solder JP7 and JP8
  • solder pin header 0.1" female connector
  • not solder C1, U2, R18, R9, R8, R1, D3
  • A is TX and B is RX


Power Supply

Power Supply


  • Mechanical Endstops


For stepper motor setup is optional (AS5601 encoder).



Temporary wiring

Rotator Controller enclosure - Placement

Firmware and Pin Assignments

Pre-Flight Check

Need to add testing procedure here.

Rotator Controller v1