
Smart Servo Control Board Rev.1
PippoGot/PRJ_Smart_Servo
Repository containing files for a new servo controller board compatible with MG996R servo motor

Repository containing files for a new servo controller board compatible with MG996R servo motor
Smart Servo Control Board Rev.2 is an open-source printed circuit board by PippoGot, from the PippoGot/PRJ_Smart_Servo repository on GitHub. It is a 4-layer board of 100 × 73 mm with 60 parts on 144 nets, routed with 341 tracks and 23 vias.
It is built around the AH49E, 24LC256-I/P and AMS1117-3.3. Its parts include 16 capacitors, 14 resistors, 11 ICs, 7 connectors and 4 diodes. It belongs with the robots and motor control boards and the STM32 boards of this library.
The scope of this repository is to design a new controller board for the MG996R hobby servo, in order to improve position accuracy and performance.
In particular, the goal is to:
Implement a more accurate position controller;
Implement a current controller to limit stall overheating;
Implement a I2C interface to control the servo, for:
More useful things to have are:
"DATASHEETS": contains all of the datasheets for the components used, both in the original controller board and in the new developed board;
"default servo control board": contains the KiCAD files of the reverse engineered original servo controller board;
"MODELS & SIMULATIONS": contains the Simulink and LTSpice models, as well as the Matlab scripts for parameters and controller tuning;
"SOURCE": contains all the code for the microcontroller;
"STM32 PDFs & DATASHEET": contains the documentation of the microcontroller applied to the board, as well as some useful PDFs for making and programming embedded projects using the microcontroller itself;
"STM32F103C8T6 minimum board": contains the KiCAD files of a minimum board for any embedded project using that specific microcontroller;
| Qty | Value | Footprint | References |
|---|---|---|---|
| 13 | 100nF | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | C1, C2, C3, C4, C5, C6, C9, C10, C12, C13, C14, C15, C16 |
| 4 | 10R | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R1, R2, R3, R4 |
| 4 | 1K | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R8, R11, R12, R14 |
| 2 | 10K | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R9, R10 |
| 2 | 10m | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R6, R13 |
| 2 | 33uF | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | C8, C11 |
| 2 | AH49E | Package_TO_SOT_SMD:SOT-23 | U10, U11 |
| 2 | AH49E | Package_TO_SOT_THT:TO-92S | U8, U9 |
| 2 | Conn_02x20_Odd_Even | Connector_PinSocket_2.54mm:PinSocket_2x20_P2.54mm_Vertical | J5, J6 |
| 2 | FAULT | Diode_SMD:D_1206_3216Metric_Pad1.42x1.75mm_HandSolder | D3, D4 |
| 2 | INA219AxD | Package_SO:SOIC-8_3.9x4.9mm_P1.27mm | U3, U4 |
| 2 | PWR | Diode_SMD:D_1206_3216Metric_Pad1.42x1.75mm_HandSolder | D1, D2 |
| 1 | 10uF | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | C7 |
| 1 | 200m | Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R5 |
| 1 | 220K | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R7 |
| 1 | 24LC256 | Package_SO:SO-8_3.9x4.9mm_P1.27mm | U2 |
| 1 | 3A | MountingHole:MountingHole_4.3mm_M4_DIN965_Pad_TopBottom | H9 |
| 1 | 3B | MountingHole:MountingHole_4.3mm_M4 | H10 |
| 1 | 3C | MountingHole:MountingHole_4.3mm_M4 | H11 |
| 1 | 3D | MountingHole:MountingHole_4.3mm_M4_DIN965_Pad_TopBottom | H12 |
| 1 | 4A | MountingHole:MountingHole_4.3mm_M4_DIN965_Pad_TopBottom | H13 |
| 1 | 4B | MountingHole:MountingHole_4.3mm_M4 | H14 |
| 1 | 4C | MountingHole:MountingHole_4.3mm_M4 | H15 |
| 1 | 4D | MountingHole:MountingHole_4.3mm_M4_DIN965_Pad_TopBottom | H16 |
| 1 | AMS1117-3.3 | Package_TO_SOT_SMD:SOT-223-3_TabPin2 | U5 |
| 1 | AS5600 | Package_SO:SO-8_3.9x4.9mm_P1.27mm | U1 |
| 1 | DRV8830DGQR | DRV8830:DGQ10_2P18X1P72 | U6 |
| 1 | ESP-L | Connector_PinSocket_2.54mm:PinSocket_1x19_P2.54mm_Vertical | J1 |
| 1 | ESP-R | Connector_PinSocket_2.54mm:PinSocket_1x19_P2.54mm_Vertical | J2 |
| 1 | MOT | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | J14 |
| 1 | STM-L | Connector_PinSocket_2.54mm:PinSocket_1x20_P2.54mm_Vertical | J3 |
| 1 | STM-R | Connector_PinSocket_2.54mm:PinSocket_1x20_P2.54mm_Vertical | J4 |
| 1 | STM32F103C8Tx | Package_QFP:LQFP-48_7x7mm_P0.5mm | U7 |

PippoGot/PRJ_Smart_Servo
Repository containing files for a new servo controller board compatible with MG996R servo motor

PippoGot/PRJ_Smart_Servo
Repository containing files for a new servo controller board compatible with MG996R servo motor

PippoGot/PRJ_Smart_Servo
Repository containing files for a new servo controller board compatible with MG996R servo motor

miliar/saiboard
An open-source, wooden electronic Go board that integrates with KataGo.

climbingHacker/sewing-machine-pedal
A simple hall-sensor based phase-angle-control pedal using the RP2040 microcontroller.

EthicalEarth/Radio_SI4735_v1.0_stable
Stable final release of DSP Radio based on si4735 chip.

kurozz/dsp_amp_2to4
Amplifier with DSP based on TPA3116D2 and ADAU1701 with 4 outputs and stereo input.

emertcakir/uPIC46
PIC18F46K22-based versatile development board with CAN, RS-485, EEPROM, RTC, and user LEDs



It measures 100 × 73 mm and has 4 copper layers, 3.68 mm thick.
60 parts, built around the AH49E, 24LC256-I/P and AMS1117-3.3. 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.
From the PippoGot/PRJ_Smart_Servo repository on GitHub, at the commit this page was made from: the board is PCB/Smart Servo Breadboard Control Board Rev.2/Smart Servo Control Board Rev.2.kicad_pcb and its schematic LEGACY/default servo control board/default servo control board.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask PippoGot before reusing the design.