
RotatorBoard
Arduino firmware to control https://www.thingiverse.com/thing:4664558
- Size
- 86.4 × 71.1 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 18
- Nets
- 49
- Pads
- 100
- Tracks, vias
- 193, 0
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 5 (file 20171130)
- Created
- 8 Dec 2021
- Updated
- 27 Aug 2022
Overview
RotatorBoard is an open-source printed circuit board by ajohns1288, from the ajohns1288/AzElTracker repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 86.4 × 71.1 mm with 18 parts on 49 nets, routed with 193 tracks and 0 vias.
Its parts include 7 connectors and 2 capacitors. It belongs with the AVR (ATmega, ATtiny) boards of this library.
README
README.mdAzElTracker
Arduino firmware to control https://www.thingiverse.com/thing:4664558, designed by jbyrns
This project started as a class project and was designed to be compatible (enough) to work with gPredict/rotctrld. It seems to run pretty well.
Items Needed
1x Arduino Nano or equivalent
2x A4988 Stepper Boards
2x Stepper Motors
1x Small Magnet
1x Hall effect switch
How it works
1: At startup, the azimuth is assumed to be due north (0deg) and the elevation runs a homing routine
2: Once homed, serial port is polled for commands from external program.
3: Rotors can be moved indepentently as well as together. Each can rotate continously or to a set position.
See section below for implemented commands
Hardware adaptation
Since different people might want to use the same logic but for different hardware, the hardware specific values are in the rotorParams.h file. This way, you can tailor the code to your specific application without having to change mulitple variables all over the place
Commands
Command enumerations based on GS232 Protocol; works with 'rotctld -m 606 -r /dev/xxx' on RaspPi
CMD_R 'R' - Move right continously
CMD_L 'L' - Move left continously
CMD_U 'U' - Move up continously
CMD_D 'D' - Move down continously
CMD_STOP 'S' - Stop all axes
CMD_STOP_AZ 'A' - Stop azimuth only
CMD_STOP_EL 'E' - Stop elevation only
CMD_SPEED 'X' - Xs - Set speed to x (Azimuth only, 4: fast 1: slow)
CMD_MOVETO_AZ 'M' - Mxxx - Moves to azimuth xxx
CMD_MOVETO 'W' - Wxxx yyy - Moves to azimuth xxx, elevation yyy
CMD_GET_AZ 'C' - Display azimuth position only (NOTE: C2 will display both axes)
CMD_GET_EL 'B' - Display elevation position only
//Non-Standard GS232 Commands
CMD_DEBUG 'Q' - Displays current positions/status/modes of rotor
CMD_SET_HOME 'F' - Unimplmented, may be used to set current position as home in future release
Drawbacks
Stepper motors do not have feedback. If the motor stalls or skips, your position will be off
Future Work
Implement compass/accelerometer as position sensor input.
Parts
18| Qty | Value | Footprint | References |
|---|---|---|---|
| 2 | CP1 | Capacitor_THT:CP_Radial_D8.0mm_P3.80mm | C1, C2 |
| 2 | Conn_01x04_Female | Connector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_Horizontal | J3, J5 |
| 2 | Conn_01x04_Male | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Horizontal | J2, J4 |
| 2 | Conn_01x04_Male | RotatorBoard:PinHeader_1x04_P2.54mm_HorizontalFlipped | J6, J7 |
| 2 | Jumper_2_Open | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | JP1, JP2 |
| 2 | Pololu_Breakout_A4988 | Module:Pololu_Breakout-16_15.2x20.3mm | A2, A3 |
| 1 | Arduino_Nano_v3.x | Module:Arduino_Nano | A1 |
| 1 | Screw_Terminal_01x02 | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J1 |
The 14 most common of 18 parts.
Questions
How big is the RotatorBoard PCB?
It measures 86.4 × 71.1 mm and has 2 copper layers, 1.6 mm thick.
What parts does the RotatorBoard use?
18 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the RotatorBoard KiCad files?
From the ajohns1288/AzElTracker repository on GitHub, at the commit this page was made from: the board is PCB/RotatorBoard.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the RotatorBoard design in my own project?
Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
Similar boards
- 2 layers27.9 × 16.5 mm

- 2 layers42.7 × 13.7 mm

Stm32-mini12864
VoronDesign/Voron-Hardware
Cool Hardware designed by the Voron Design group
18 parts1.1kGPL-3.0 - 2 layers41.2 × 46.6 mm

- 2 layers44 × 51.3 mm

4272MAVcoder R4
hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!
18 parts915 - 2 layers28.3 × 14.3 mm

Tap Photosensor PCB
VoronDesign/Voron-Tap
Tap is a nozzle-based z-probe for the V2 and Trident printer designs. The entire toolhead moves to trigger an optical switch. Tap offers many advantages:
18 parts716GPL-3.0 - 2 layers20.3 × 15.2 mm

L0 stepper driver
Luos-io/luos_engine
Open-source and real-time orchestrator for cyber-physical-systems, to easily design, test and deploy embedded applications and digital twins.
18 parts546MIT - 2 layers

- 2 layers42.5 × 28.8 mm

C5VRX JACK DIY V2
Twotoz/C5VRX
Ultra-minimal, zero-CPU 5.8 GHz analog FPV video receiver using ESP32-C5 Wi-Fi 6 PHY MODEM_DIAG, BitScrambler WBFM demodulation & resistor DAC CVBS
18 parts515GPL-3.0