-
Notifications
You must be signed in to change notification settings - Fork 0
/
wifiLinkTest.py
38 lines (30 loc) · 1.73 KB
/
wifiLinkTest.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
import time, sys
import ps_drone # Import PS-Drone-API
def time_convert(sec):
mins = sec // 60
sec = sec % 60
hours = mins // 60
mins = mins % 60
print("Time Lapsed = {0}:{1}:{2}".format(int(hours),int(mins),sec))
drone = ps_drone.Drone() # Start using drone
drone.startup()
drone.reset() # Sets drone's status to good (LEDs turn green when red)
while (drone.getBattery()[0] == -1): time.sleep(0.1) # Wait until the drone has done its reset
print ("Battery: "+str(drone.getBattery()[0])+"% "+str(drone.getBattery()[1])) # Gives a battery-status
drone.useDemoMode(False) # Give me everything...fast
drone.getNDpackage(["demo","pressure_raw","altitude","magneto","wifi"]) # Packets, which shall be decoded
time.sleep(1) # Give it some time to awake fully after reset
NDC = drone.NavDataCount
prevWifi = drone.NavData["wifi"]
while True:
while drone.NavDataCount == NDC: time.sleep(0.001)
#start_time = time.time() # Wait until next time-unit
while (drone.NavData["wifi"]==prevWifi): time.sleep(0.1) # Sleeps until battery percentage diminishes
#end_time = time.time()
#time_lapsed = end_time - start_time
#time_convert(time_lapsed)
#if drone.getKey(): end = True # Stop if any key is pressed
NDC=drone.NavDataCount
print ("Wifi link quality: "+str(drone.NavData["wifi"]))
prevWifi=drone.NavData["wifi"]
drone.shutdown()