Spaces:
Running
Running
| export type ConnectionOptions = { | |
| baudRate?: number; | |
| protocolEnd?: number; | |
| }; | |
| export type ServoPositions = Map<number, number> | Record<number, number>; | |
| export type ServoSpeeds = Map<number, number> | Record<number, number>; | |
| export interface ScsServoSDK { | |
| // Connection management | |
| connect(options?: ConnectionOptions): Promise<true>; | |
| disconnect(): Promise<true>; | |
| isConnected(): boolean; | |
| // Servo locking operations | |
| lockServo(servoId: number): Promise<"success">; | |
| unlockServo(servoId: number): Promise<"success">; | |
| lockServos(servoIds: number[]): Promise<"success">; | |
| unlockServos(servoIds: number[]): Promise<"success">; | |
| lockServosForProduction(servoIds: number[]): Promise<"success">; | |
| unlockServosForManualMovement(servoIds: number[]): Promise<"success">; | |
| // Read operations (no locking needed) | |
| readPosition(servoId: number): Promise<number>; | |
| syncReadPositions(servoIds: number[]): Promise<Map<number, number>>; | |
| // Write operations - LOCKED MODE (respects servo locks) | |
| writePosition(servoId: number, position: number): Promise<"success">; | |
| writeTorqueEnable(servoId: number, enable: boolean): Promise<"success">; | |
| // Write operations - UNLOCKED MODE (temporary unlock for operation) | |
| writePositionUnlocked(servoId: number, position: number): Promise<"success">; | |
| writePositionAndDisableTorque(servoId: number, position: number, waitTimeMs?: number): Promise<"success">; | |
| writeTorqueEnableUnlocked(servoId: number, enable: boolean): Promise<"success">; | |
| // Sync write operations | |
| syncWritePositions(servoPositions: ServoPositions): Promise<"success">; | |
| // Configuration functions | |
| setBaudRate(servoId: number, baudRateIndex: number): Promise<"success">; | |
| setServoId(currentServoId: number, newServoId: number): Promise<"success">; | |
| setWheelMode(servoId: number): Promise<"success">; | |
| setPositionMode(servoId: number): Promise<"success">; | |
| } | |
| export const scsServoSDK: ScsServoSDK; | |
| // Debug exports | |
| export const DEBUG_ENABLED: boolean; | |
| export function debugLog(message: string): void; | |