HS XMODEM is a software library in C (supplied with full source code) that provides a programmer with the off-the-shelf support for XMODEM protocol data transfer capability. Support for both sender and receiver are provided. Other features include 1024 block size vs 128, CRC vs checksum, configurable timers and retries
- Xmodem Sender and Receiver
- 128 and 1024 block size
- Checksum and CRC option
- Configurable timers
- Configurable number of retries
How It Works
When user application initlialises HsXmodem library, it provides interface callbacks for the services used by Xmodem protocol module: timer management, serial transmission and reception, memory management, event callbacks. This architecture makes it easy to port Xmodem protocol module to any environment.
Xmodem module handles all protocol information flow, error recovery, acknowledgements, timeouts and so on. When it is appropriate to send next block of data Hs Xmodem will get next memory block from user application. Similarly, when data has been received Hs Xmodem module will get the next block of memory from user application to store data into.
As a backup or an alternative to TFTP, Xmodem is often used in embedded devices and appliances for the purpose of software or configuration upgrade or retrieval.
HS XMODEM C Library Architecture
The library is designed to fit in a flexible architecture:
Hillstone Software provides additional services for customization, porting and integration of the library code to better suit the needs of your products