Python code to Stream IQ data from flow graph to AWS cloud

Job ID: 32245010

Budget: $30 – $250 AUD

The objective of this challenge is to write a code in Python (use of python is mandatory) to achieve 100% real-time streaming of In-phase and Quadrature-phase (I-Q) data (complex data type) from GNU Radio Companion (GRC) to the AWS cloud. It is important that at the end of the data stream or if the stream is terminated in the GRC, the code should close the socket and display performance results such as end to end (E2E) latency, total packets transmitted, total packets received, packet loss rate, throughput (in bits/s), total amount of data transmitted (MB or GB), jitter, etc. The packet loss rate should not exceed 5% (i.e. PLR < 5%). The code should be scalable to transmit I-Q data using different sampling rates from the GRC e.g. 5, 10, 20, 50, 100 MS/s (i.e. Million Samples per second) and beyond.

The task will require very solid knowledge of GNU flow graph (GRC), ZMQ protocol and Python socket programming.
2 Client/Server models are required:
1. The first model will use only ZMQ sockets to transmit all the streaming data from the client (GRC) to the server (AWS cloud).
2. The second model can use ZMQ sockets to receive the data stream from the client (GRC) to python environment and thereafter use python socket programming to transport data to the server (cloud).

Delivery time: 48 hours.
Related categories: C Programming Python Linux Software Architecture Ubuntu