-
Notifications
You must be signed in to change notification settings - Fork 0
/
NetworkSounder.py
40 lines (32 loc) · 1.18 KB
/
NetworkSounder.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# NetworkSounder.py
# Billy Kihei (c) 2021
# Intelligent Mobile Device Lab @ Kennesaw State University
# Part of the 5Gtoolkit for testing commercial 5G networks.
# This app simply sends the character '0' to a non-existent UDP server.
# The purpose of this app is to activate the cellular modem such that
# the modem will attach to a 5G mmWave site.
# The intended use is to run this app in Termux, then put the phone in service mode
# to see what 5G bands the phone is attaching to.
# 1. Open Termux.
# 2. Download the 5gtoolkit git repo.
# 3. python NetworkSounder.py
# 4. On Samsung Android phone (T-Mobile) type on phone keypad: *#0011#
# 5. Look at the NR band the modem attaches to.
import socket
import sys
import signal
import time
tx=0
server_addr = ("8.8.8.8", 53)
udpSerSock= socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
def signal_handler(sig, frame):
udpSerSock.close()
print('\n')
print("%d bytes sent!\n" % (tx))
sys.exit(0)
signal.signal(signal.SIGINT, signal_handler)
print('Sounding continuously. Ctrl+C to stop.')
while True:
udpSerSock.sendto(str.encode("0"), server_addr)
tx+=len(str.encode("0"))
time.sleep(.1)