Repository navigation
Major Features Added
🎯 Indirect Addressing Support
Complete DYNAMIXEL indirect addressing functionality for high-performance applications:
setupIndirectAddress(),writeIndirectData(),readIndirectData()for basic operationsbulkReadIndirect()andbulkWriteIndirect()with automatic contiguous address optimizationsetupCommonIndirectMappings()andreadCommonStatus()for streamlined monitoring- Full validation with descriptive error messages
- Supports up to 20 indirect mappings with efficient bulk operations
⚡ Goal Current Control
Current-based motor control for precise torque applications:
setGoalCurrent()andgetGoalCurrent()methods- Enhanced control capabilities for force/torque-sensitive applications
- Seamless integration with existing position and velocity control
⏱️ Realtime Tick Support
Hardware timestamp access for precise timing:
getRealtimeTick()method for 16-bit hardware timestamp counter- Enables precise timing measurements and multi-motor synchronization
- Essential for real-time applications and performance monitoring
🚀 Serial Buffer Configuration
Configurable buffer sizes for performance optimization:
highWaterMarkoption in SerialConnection and DynamixelController- Default 64KB, configurable from 0 to 1MB+ for different use cases
- Optimizes memory usage and performance for high-speed applications
🛠️ Enhanced Development Tools
New example applications:
realtime-timestamp-test.js- Demonstrates indirect addressing and realtime tickserial-buffer-options.js- Shows buffer configuration options- Enhanced motor profiles and debugging utilities
Technical Improvements
- Advanced Protocol Support - Full indirect addressing implementation
- Performance Optimization - Configurable buffers and contiguous bulk operations
- Real-time Capabilities - Hardware timestamp access
- Enhanced Documentation - Better TypeScript/JSDoc integration
Migration Guide
- High-performance apps: Use indirect addressing for efficient bulk operations
- Precise control apps: Utilize current-based torque control methods
- Real-time apps: Use hardware timestamp for synchronization
- Buffer optimization: Configure
highWaterMarkbased on your requirements
Compatibility
All changes are backward compatible - no breaking changes.
🤖 Generated with Claude Code