Context
I am working with a module built around a headless Raspberry Pi CM3+, the only form of interface with which is an ESP8266 chip (bear with me, the question isn't about either of these) which is connected via UART and acts as a TCP-UART bridge. This means that if connecting/talking to it, say over telnet, my PC will see a network connection while the Pi sees a serial one. No other ports or interfaces are available.
My task is to transfer files (specifically, small video files) from a PC to the Pi. This much I know is possible; my method of achieving it so far has been:
- Use a driver to create a virtual COM port outputting to the ESP via TCP (I used this one)
- Log into the Pi over this 'serial' connection using Tera Term
- Still using Tera Term, transfer the file with zmodem, having first sent the 'rz' command to the Pi
So far so good (and it took me a long time to get to even that point) - however, what I now have to do is simplify this process to the point where a most likely computer-illiterate user can do the same thing. I'm thinking the best way to do this would be to have a .bat file they can simply double click on which will prompt them to select the video file, then handle everything else for them. This would mean that everything I did previously using Tera Term and HW VSP3, I now have to accomplish using terminal commands.
I am able to install additional software on the Pi if required by removing it from the module.
Question
Is there a command-line piece of software I could run from a batch file that would create a virtual com port connecting to a TCP output? The closest I've found so far is com0com
/com2tcp
, but that doesn't seem particularly command line friendly (I'm looking further into it though). Alternatively, is there a better way I could be going about this? I know socat
would do the trick in Linux, but again the end user here probably doesn't even know what Linux is.