A Python tool for reading and writing SCServo control table values with interactive menu and multi-servo support.
- Interactive menu system for easy operation
- Support for all control table addresses defined in SCServo protocol
- Dynamic servo ID selection (0-255 range)
- Automatic data size detection (1-byte or 2-byte registers)
- Byte order correction for 2-byte values
- EEPROM unlock functionality
- Error handling with detailed feedback
- Clone this repository:
git clone https://github.com/yourusername/scservo-control-editor.git
cd scservo-control-editor
- Install required dependencies:
pip install scservo-sdk
python Servo_diagnostic_linux.py
- Read all values - Displays all control table values for current servo
- Read specific address - Reads a single control table address
- Write to address - Writes a new value to specified address
- Change Servo ID - Switch to work with a different servo (0-255)
- Exit - Cleanly closes the connection
Edit the following variables in the script if needed:
DEVICENAME
: Serial port device (default: '/dev/ttyUSB0')BAUDRATE
: Communication speed (default: 1000000)SCS_ID
: Default servo ID (default: 1)
This tool is designed to work with SCServo series servos including:
- SCS0009
- SCS0015
- SCS0009
- And other compatible models
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please open an issue or pull request for any improvements or bug fixes.