linuxfile-transfer

YModem with I2C


I'm currently in a situation that my SoC will be connected via its I2C bus through a I2C-to-UART converter MAX3107 to the UART port of a microprocessor.

Although the communication between the two shouldn't be an issue, the part were the Soc should update the firmware of the microprocessor has to be done with the Y-Modem file transfer protocol.

Although a question is pending at the manufacturer, I still wanted to check here:

  1. Would this even be possible
  2. The SoC runs Linux, is this depending on the MAX3107 driver
  3. Does this concern the I2C bus or is only the UART driver and bus interesting.

https://datasheets.maximintegrated.com/en/ds/MAX3107.pdf


Solution

  • I used the SC16IS750 instead with the Linux kernel driver.

    Sending a file via Y-Modem doesn't seem to be a problem. I tried both Minicom and TeraTerm to send a file and it works. The receiver responds is just 1 character each time before sending a part of the file. If the responds would have been more than 64-byte at a time (instead of the one character) this would have been a problem, because the FIFO first needs to be read and cleared before another sting can be received.