Skip to content

Conversation

@renbingcheng
Copy link

Description

This PR adds YMODEM protocol support to the existing XMODEM implementation. YMODEM is built on top of XMODEM with additional file metadata capabilities.

Key Features Added

  • Full YMODEM protocol implementation (based on XMODEM-1K)
  • File header transmission (filename + size metadata)
  • Batch file transfer capability
  • Backward compatible with existing XMODEM usage

Implementation Details

  • Extended XMODEM class with ymodem mode support
  • Added file info packet handling (_send_file_info method)
  • Maintained all existing XMODEM functionality
  • Followed the project's existing code style and patterns

Testing

The implementation has been tested with:

  • Single file transfers
  • Various file sizes (small to large)
  • CRC checksum validation

Documentation

Updated README and docstrings to reflect the new YMODEM support.

Backward Compatibility

Existing XMODEM functionality remains unchanged. The new YMODEM support is opt-in via the mode='ymodem' parameter.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant