From 58935bd3c6615289112f73dbd7639f82dd45ef0d Mon Sep 17 00:00:00 2001 From: Langspielplatte Date: Thu, 16 Mar 2023 10:34:12 +0100 Subject: [PATCH] Adds support for EM9191. --- measurement_main.py | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/measurement_main.py b/measurement_main.py index fd0cd91..162394a 100644 --- a/measurement_main.py +++ b/measurement_main.py @@ -32,6 +32,8 @@ WAIT_AFTER_IPERF = 5.0 modem_serial_obj = None gps_serial_obj = None +MODEM_MODEL = None + class ProcessHandler: def __init__(self): @@ -220,7 +222,8 @@ def raise_receive_window(): def monitor_serial(ser, output_file): - run_cmds = [NR_CQI_COMMAND, NR_SERVINGCELL_COMMAND, NR_EN_DC_STATUS_COMMAND, NE_CA_COMMAND] + #run_cmds = [NR_CQI_COMMAND, NR_SERVINGCELL_COMMAND, NR_EN_DC_STATUS_COMMAND, NE_CA_COMMAND] + run_cmds = [b"at!gstatus?\r\n", b"AT!NRINFO?\r\n"] try: while ser.is_open: response = subprocess.check_output(CMD_TIME_EPOCH, shell=True).decode( @@ -230,12 +233,12 @@ def monitor_serial(ser, output_file): ser.write(cmd) sleep(NR_SERIAL_RESPOND_TIME) response += ser.read(ser.inWaiting()).decode("utf-8") - response = ( - response.replace("\n", ";") - .replace("\r", "") - .replace(";;OK", ";") - .replace(";;", ";") - ) + #response = ( + # response.replace("\n", ";") + # .replace("\r", "") + # .replace(";;OK", ";") + # .replace(";;", ";") + #) write_to_file(output_file, response + "\n") except: if not ser.is_open: @@ -320,11 +323,20 @@ def monitor_gps(ser, output_file): def connect_moden(provider="telekom"): print_message("Connect modem with provider {} ...".format(provider)) - os.system("/root/connect-modem.py -l {}".format(provider)) + if MODEM_MODEL == "EM9191": + os.system("/root/connection_mbim.py -l {}".format(provider)) + else: + os.system("/root/connect-modem.py -l {}".format(provider)) print_message("...done") def reconnect_modem(provider="telekom", hard=False): + #TODO + os.system("/root/connection_mbim.py -s") + sleep(2) + os.system("/root/connection_mbim.py -l {}".format(provider)) + + return global modem_serial_obj print_message("Reonnect modem with provider {} ...".format(provider)) if hard: @@ -1201,6 +1213,7 @@ if __name__ == "__main__": default=None, help="Start in client mode and set the server IPv4 address.", ) + parser.add_argument("--modem", default="EM9191", help="Modem model name.") parser.add_argument( "--prefix", default=now.strftime("%Y-%m-%d"), help="Prefix on filename." ) @@ -1303,6 +1316,7 @@ if __name__ == "__main__": args = parser.parse_args() disable_tso(args.interface) + MODEM_MODEL = args.modem if args.server: asyncio.run(start_server(args))