UCSD-E4E / radio_collar_tracker_gcs

Ground Control Station software for the Radio Collar Tracker
http://e4e.ucsd.edu/radio-collar-tracker
GNU General Public License v3.0
1 stars 0 forks source link

Drone Based GCS #76

Open ntlhui opened 11 months ago

ntlhui commented 11 months ago

Working drone-based GCS support

hgrehm commented 11 months ago

Having difficulties testing this with the simulator. Here's the traceback from my most recent attempt, which failed as I tried to connect the GCS to the sim:

2023-56-28 14:07:51.541: ERROR:rctComms.mavComms: Exception during callback
Traceback (most recent call last):
  File "C:\Users\hgreh\miniconda3\envs\rctGCS\lib\site-packages\RCTComms\comms.py", line 1222, in execute_cb
    cb_(**kwargs)
  File "C:\Users\hgreh\workspace\radio_collar_tracker_gcs\RctGcs\droneSimulator.py", line 562, in __do_get_options
    packet = RCTComms.comms.rctOptionsPacket(scope, **self.PP_options)
TypeError: keywords must be strings
{<Options.DSP_PING_WIDTH: 'DSP_ping_width'>: 27.0, <Options.DSP_PING_SNR: 'DSP_ping_snr'>: 0.1, <Options.DSP_PING_MAX: }

Curious if you're seeing this too? I can troubleshoot on my end if it might be an issue with versions or something else local to my machine. I don't see why an Enum shouldn't be allowed as a key since it's immutable...

ntlhui commented 11 months ago

Fixed in 8eb890764935f7a09d0f8d16c8d5530c8bc435fc

All options are now of type Dict[Options, Any]. You cannot keyword expand into kwargs if the keys are not str. All option packets now accept a full dict instead of kwargs.