Skip to the content
4 layers56.4 × 56.4 mmNema23Driver, the printed circuit board in 3D

Open Source Astrophotography Hardware and Software

Size
56.4 × 56.4 mm
Copper layers
4
Thickness
1.6 mm
Parts
60
Nets
78
Pads
261
Tracks, vias
494, 113
Pours
10
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
29 Sep 2023
Updated
27 Mar 2025

Overview

Nema23Driver is an open-source printed circuit board by neatstranger, from the neatstranger/Dagerro repository on GitHub. It is a 4-layer board of 56.4 × 56.4 mm with 60 parts on 78 nets, routed with 494 tracks and 113 vias.

It is built around the RP2040, MT6701CT-STD-R and TPS54360BDDAR, with the W25Q128JVSIQ TR, SM03B-SRSS-TB(LF)(SN)(P) and B560C-13-F-MS among its other parts. Its parts include 26 capacitors, 11 resistors, 8 ICs, 2 connectors and 2 switches. It belongs with the RP2040 boards of this library.

Main components

10

README

README.md

Dagerro

The first known attempt at astronomical photography was by Louis Jacques Mandé Daguerre, inventor of the daguerreotype process which bears his name, who attempted in 1839 to photograph the Moon. Tracking errors in guiding the telescope during the long exposure meant the photograph came out as an indistinct fuzzy spot. Source

Guide Timing

Some notes for myself as well as anyone reading. We need to move the steppers about 8 times per second and the Real Time Clock(RTC) doesn't allow for time resolution greater than 1 second. The RTC(DS3231) outputs 32,768 pulses per second on the 32K pin. We attach an interrupt to that pin with the following line.

attachInterrupt(digitalPinToInterrupt(interruptPin), countCycles, CHANGE);

Note the use of the CHANGE for activation. This means that we will capture one interrupt for each rise, and one for each fall. With our second now divided up into 65,536 segments.

text
1 Degree = 60 ArcMinutes
1 ArcMinute = 60 ArcSeconds
1 Degree = 3600 ArcSeconds

How fast does the earth rotate? My previous assumption of 1ArcSecond/Second is wrong. Let's do the math.

text
360° = 24 Hours
15° = 1 Hour or 60 Minutes or 3600 Seconds
1° or 3600 ArcSeconds = 4 Minutes or 240 Seconds
Math = 3600(ArcSeconds-Angle)/240 (Seconds-Time)
15 ArcSeconds(Angle) = 1 Second(Time)

The arduino receive exactly 1,658,880 pulses every 25.3125 seconds. During this period of time, we need to take exactly 1500 steps.

python function to solve the problem.

text
x = 1
maxcount = 1500
xmult = 1105
ymult = 1107

while x <= maxcount:
    y = maxcount - x
    if (xmult*x)+(ymult*y) == 1658880:
        print(x)
        print(y)
        print((xmult*x) + (ymult*y))
    x+=1

I used this script, changing the values for xmult and ymult, until I got a result that looks like this:

text
810
690
1658880

Which means that if we take a step every 1105 interrupts, 810 times. Followed by taking a step every 1107 interrupts, 690 times. We will have taken 1500 steps in exactly 25.3125 seconds.

text
1500 Steps * 0.253125 ArcSeconds Per Step = 379.6875 ArcSeconds
379.6875 ArcSeconds / 25.3125 Seconds
15 ArcSeconds / Second

Parts

60
QtyValueFootprintReferences
130.1uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC3, C11, C12, C15, C16, C17, C20, C21, C22, C23, C24, C25, C26
45kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR8, R9, R10, R11
4MountingHole_PadMountingHole:MountingHole_5.3mm_M5H1, H2, H3, H4
210KResistor_SMD:R_0805_2012MetricTH1, TH2
215pCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC13, C14
21kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR5, R7
21uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC18, C19
22.2uCapacitor_SMD:C_1206_3216MetricC1, C2
247uCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC6, C7
2Conn_01x03_SocketConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ1, J2
10.022uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC8
10.22uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC9
10.47uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC10
110.2kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR4
110kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR6
113kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR2
1162kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR1
131.6kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR3
139pCapacitor_SMD:C_0402_1005Metric_Pad0.74x0.62mm_HandSolderC5
16800pCapacitor_SMD:C_1206_3216MetricC4
1ABM8-272-T3_C20625731PARTS:CRYSTAL-SMD_4P-L3.2-W2.5-BLU5
1AO3400_C2938367PARTS:SOT-23_L2.9-W1.3-P1.90-LS2.4-BRQ1
1B560C-13-FPARTS:SMC_L7.1-W6.2-LS8.1-RDD1
1DRV8434SPWPRPARTS:HTSSOP-28_L9.7-W4.4-P0.65-LS6.4-BL-EP-5U2
1DS-08BLPPARTS:SW-TH_16P-L21.9-W9.9-P2.54-LS7.6SW1
1FXL1040-8R2-MPARTS:IND-SMD_L11.5-W10.0_FXL1040L1
1MT6701CT-STD-RPARTS:SOP-8_L4.9-W3.9-P1.27-LS6.0-BLU4
1PTVS6V0S1UR_C18723426PARTS:SOD-123_L2.7-W1.6-LS3.7-RDU3
1R-RJ45R10P-B000PARTS:RJ45-TH_R-RJ45R10P-B000RJ1
1RP2040PARTS:LQFN-56_L7.0-W7.0-P0.4-EPU6
1SM03B-SRSS-TB(LF)(SN)(P)PARTS:CONN-SMD_SM03B-SRSS-TB-LF-SN-PU8
1SRE-24VDC-SL-2CPARTS:RELAY-TH_SRE-12VDC-SL-2CK1
1Stepper_Motor_bipolarPARTS:CONN-TH_DB125-2.54-4P-GNM1
1TPS54360BDDARPARTS:SOIC-8_L5.0-W4.0-P1.27-LS6.0-BL-EP2.0U1
1W25Q128JVSIQTRPARTS:SOIC-8_L5.3-W5.3-P1.27-LS8.0-BLU7

More from neatstranger/Dagerro

5
  • 2 layers177.8 × 127 mmPicoControl, the printed circuit board in 3D

    PicoControl

    neatstranger/Dagerro

    Open Source Astrophotography Hardware and Software

    50 parts3
  • 4 layers194.1 × 115.6 mmMountControl, the printed circuit board in 3D

    MountControl

    neatstranger/Dagerro

    Open Source Astrophotography Hardware and Software

    25 parts3
  • 2 layersWheel, the printed circuit board in 3D

    Wheel

    neatstranger/Dagerro

    Open Source Astrophotography Hardware and Software

    14 parts3
  • 2 layers35.6 × 33 mmDriver, the printed circuit board in 3D

    Driver

    neatstranger/Dagerro

    Open Source Astrophotography Hardware and Software

    13 parts3
  • 2 layers35 × 30 mmMagneticEncoder, the printed circuit board in 3D

    MagneticEncoder

    neatstranger/Dagerro

    Open Source Astrophotography Hardware and Software

    11 parts3

Similar boards

  • 6 layers80.9 × 63 mmCM4IOv5, the printed circuit board in 3D

    CM4IOv5

    neatstranger/Pi-In-The-Skyy

    PoE Camera, Based on Raspberry Pi CM4

    69 parts24
  • 4 layers120 × 130 mmSingleCharger, the printed circuit board in 3D

    SingleCharger

    BatteryMaximus/Dock-PCB

    95 partsGPL-3.0
  • 2 layers30 × 30 mmROS2Stamp, the printed circuit board in 3D

    ROS2Stamp

    pablogs9/ROS2Stamp

    38 parts
  • 4 layers449.2 × 272.9 mmBoard v4 pre v5, the printed circuit board in 3D

    Board v4 pre v5

    lolz0r/Williams-WPC-Power-Driver-Board-A-12697-3

    Untested, unverifed, AI created design.

    415 parts2
  • 4 layers180 × 160 mmPCE colorlight carrier, the printed circuit board in 3D

    PCE colorlight carrier

    supermomo31/PCE_colorlight_carrier

    console PCE depuis un FPGA format SODIMM : colorlight i5

    258 parts
  • 2 layers42 × 15 mmThrottle Module, the printed circuit board in 3D

    Throttle Module

    ninemind/aeromax-throttle-module

    Unofficial, open-source DIY throttle module for the VIRPIL CDT-AEROMAX, with 3D-printable parts, KiCad PCB files, and assembly documentation.

    7 parts3CERN-OHL-S-2.0
  • 4 layers100 × 100 mmAmod b, the printed circuit board in 3D

    Amod b

    gallicchio/AMOD-and-RFMOD

    The tutorial's 2x12 adapter (/mudd/133electronics/icepi-zero-dac-adc/adapterboard/) with a 2 x 6 right-angle Pmod socket on a 15 mm extension of its right-hand end, so an Icepi Zero can drive AMOD-A's and RF-MOD's Pmod…

    147 parts
  • 6 layers100 × 53.8 mmPower, the printed circuit board in 3D

    Power

    SSL-A-Team/electrical

    circuit board design files, gerbers, and circuit analysis

    175 parts6MIT

Questions

How big is the Nema23Driver PCB?

It measures 56.4 × 56.4 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Nema23Driver use?

60 parts, built around the RP2040, MT6701CT-STD-R, TPS54360BDDAR and W25Q128JVSIQ TR. 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 Nema23Driver KiCad files?

From the neatstranger/Dagerro repository on GitHub, at the commit this page was made from: the board is Electronics/Nema23Driver/Nema23Driver.kicad_pcb and its schematic Electronics/Driver/Driver.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Nema23Driver design in my own project?

Its repository states no licence, so its author keeps all rights: ask neatstranger before reusing the design.