Write a fully functional CPP (or potentially acceptable Python) program for a the active emulation of a full duplex serial connection over packet based protocol Waveshare LoRa (which is by nature half-duplex) Raspberry PI Hat. Final code will be publicly released under GPL and rights to further and future use and expansion available to all. Ultimately the requirement is to extend the github working LoRaFTP example to permit a Serial full-duplex (albeit slow/high latency allowing for the TX and RX time slot waiting delay) for Point-to-Point PPP traffic and TCP/IP to transmit and be received and vice versa between minimum two Waveshare LoRa hat modules (code to be adaptable for use within 433Mhz, 868Mhz and 915Mhz and all their sub-frequency channels) installed on Raspberry Pi's. A secondary requirement for the full-duplex connection over the LoRa interface is to optionally have the nominate far end RPI setup for a serial getty for remote out-of-band-management connectivity.
Using existing GPL CPP ([login to view URL]) code, using references from Vendor ( Waveshare - [login to view URL] & [login to view URL] plus [login to view URL] ) and if necessary inspiration from ([login to view URL] & [login to view URL]) as a basis to interact with the specific Waveshare LoRa hat modules installed in multiple Raspberry PIs. The final operating code will allow a number of serial functions to operate over long distance (as per LoRa capabilities).