Skip to content

Commit a201427

Browse files
committed
Merge pull request #3 from clearpathrobotics/CORE-1738
CORE-1738: wireless_watcher dies
2 parents 385f2ab + cf38872 commit a201427

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

wireless_watcher/nodes/watcher_node

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -26,23 +26,19 @@ class Connection(wireless_msgs.msg.Connection):
2626
def __init__(self, fields):
2727
args = {}
2828

29-
args['bitrate'] = trim(fields['Bit Rate'], float)
30-
31-
try: args['txpower'] = trim(fields['Tx-Power'])
32-
except: pass
33-
34-
args['link_quality_raw'] = fields['Link Quality']
35-
num, den = re.split('/', args['link_quality_raw'])
36-
args['link_quality'] = float(num) / float(den)
37-
38-
args['signal_level'] = trim(fields['Signal level'])
39-
40-
try: args['noise_level'] = trim(fields['Noise level'])
29+
args['bitrate'] = trim(fields.get('Bit Rate', "0.0"), float)
30+
args['txpower'] = trim(fields.get('Tx-Power', "0"))
31+
args['signal_level'] = trim(fields.get('Signal level', "0"))
32+
args['noise_level'] = trim(fields.get('Noise level', "0"))
33+
args['essid'] = fields.get('ESSID', "").strip('"')
34+
args['bssid'] = fields.get('Access Point', "").strip()
35+
36+
try:
37+
args['link_quality_raw'] = fields['Link Quality']
38+
num, den = re.split('/', args['link_quality_raw'])
39+
args['link_quality'] = float(num) / float(den)
4140
except: pass
4241

43-
args['essid'] = fields['ESSID'].strip('"')
44-
args['bssid'] = fields['Access Point'].strip()
45-
4642
super(Connection, self).__init__(**args)
4743

4844
class Network(wireless_msgs.msg.Network):
@@ -72,8 +68,12 @@ while not rospy.is_shutdown():
7268
fields_list = [re.split('[:=]', field_str, maxsplit=1) for field_str in fields_str]
7369
fields_dict = { 'dev': fields_str[0], 'type': fields_str[1] }
7470
fields_dict.update(dict([field for field in fields_list if len(field) == 2 ]))
75-
#print fields_dict
76-
connection_msg = Connection(fields_dict)
71+
72+
# Check if WiFi is connected to a network
73+
connection_msg = {}
74+
if "Not-Associated" not in fields_dict['Access Point']:
75+
connection_msg = Connection(fields_dict)
76+
7777
connection_pub.publish(connection_msg)
7878

7979
if not previous_success:

0 commit comments

Comments
 (0)