/** * Motor Communication Utilities * STS3215 motor reading and writing operations */ /** * Interface for motor communication port * Compatible with both WebSerialPortWrapper and RobotConnectionManager */ export interface MotorCommunicationPort { write(data: Uint8Array): Promise; read(timeout?: number): Promise; } /** * Read single motor position with retry logic */ export declare function readMotorPosition(port: MotorCommunicationPort, motorId: number): Promise; /** * Read all motor positions */ export declare function readAllMotorPositions(port: MotorCommunicationPort, motorIds: number[]): Promise; /** * Write motor goal position */ export declare function writeMotorPosition(port: MotorCommunicationPort, motorId: number, position: number): Promise; /** * Generic function to write a 2-byte value to a motor register */ export declare function writeMotorRegister(port: MotorCommunicationPort, motorId: number, registerAddress: number, value: number): Promise; /** * Lock a motor (motor will hold its position and resist movement) */ export declare function lockMotor(port: MotorCommunicationPort, motorId: number): Promise; /** * Release a motor (motor can be moved freely by hand) */ export declare function releaseMotor(port: MotorCommunicationPort, motorId: number): Promise; /** * Lock motors (motors will hold their positions - perfect after calibration) */ export declare function lockMotors(port: MotorCommunicationPort, motorIds: number[]): Promise; /** * Release motors (motors can be moved freely - perfect for calibration) */ export declare function releaseMotors(port: MotorCommunicationPort, motorIds: number[]): Promise; //# sourceMappingURL=motor-communication.d.ts.map