Skip to content

Commit ed66a4c

Browse files
committed
Add check for driver version
1 parent 717b398 commit ed66a4c

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

robot/controller.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,12 @@ def __init__(self):
5353
self.bot_num = int(hostname[-1])
5454
self.client = Redis(f'{ROBOT_HOSTNAME_PREFIX}{self.bot_num}', password=REDIS_PASSWORD, decode_responses=True)
5555

56+
def get_driver_version(self):
57+
redis_key = f'mmp::bot{self.bot_num}::veh::driver_version'
58+
self.client.delete(redis_key)
59+
time.sleep(3 * 0.008) # 3 cycles at 125 Hz
60+
return self.client.get(redis_key)
61+
5662
def get_pose(self):
5763
return tuple(map(float, self.client.get(f'mmp::bot{self.bot_num}::veh::sensor::x').split(' ')))
5864

@@ -122,6 +128,9 @@ def __init__(self, debug=False):
122128
self.redis_client.set_max_velocity(0.5, 0.5, 3.14)
123129
self.redis_client.set_max_acceleration(0.5, 0.5, 2.36)
124130
self.robot_idx = self.redis_client.bot_num - 1
131+
if self.driver_running:
132+
expected_driver_version = '2023-08-17'
133+
assert self.redis_client.get_driver_version() == expected_driver_version, f'Please make sure you are running the correct version of the mobile base driver ({expected_driver_version})'
125134

126135
# Control loop
127136
self.running = False

0 commit comments

Comments
 (0)