# ServoEncoder **Repository Path**: worlderic/ServoEncoder ## Basic Information - **Project Name**: ServoEncoder - **Description**: Controls a motor by evaluating position feedback from a magnetic encoder - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-04 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ServoEncoder Controls a motor by evaluating position feedback from a magnetic encoder ## Features * Based on Atmega328P @ 2 MHz * Absolute magnetic rotary encoder EMS22A is mounted on the PCB * Used with JGY-2838 or a similar motor controlled by a two-wire interface * The two-wire output can be used as serial RX/TX for debugging * One can use a stepper motor by connecting the two-wire output to a stepper motor driver * PWM input like a typical servo or serial input (serial version has been chosen as it's more precise than reading the pulse length) * It provides a feedback to the main controller to determine if the motor is overloaded or stuck ![ServoEncoder PCB](https://github.com/OpenTransat/ServoEncoder/blob/master/images/servoencoder.jpg "ServoEncoder PCB") It has been designed as a robust solution for steering the rudder on autonomous boat. The life span has been tested with a worm geared motor JGY-2838. Ongoing test: 2 million cycles ## Video: Testing worm drive life span [![Testing worm drive life span](http://img.youtube.com/vi/ynh-ik3KGtM/0.jpg)](https://www.youtube.com/watch?v=ynh-ik3KGtM) ## Video: The actual application [![Rudder control: Worm geared motor with a position feedback](http://img.youtube.com/vi/95Na8EOg1Mo/0.jpg)](https://www.youtube.com/watch?v=95Na8EOg1Mo)