Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions dronecan/driver/common.py
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,10 @@ def set_signing_passphrase(self, passphrase):
'''set MAVLink2 signing passphrase'''
pass

def set_parameter(self, name, value):
'''set parameter on the remote device'''
pass

def stream_progress(self):
'''stream progress of the current stream'''
pass
Expand Down
9 changes: 9 additions & 0 deletions dronecan/driver/mavcan.py
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,8 @@ def handle_control_message(m):
nonlocal signing_key
signing_key = m.data
conn.setup_signing(signing_key, sign_outgoing=True)
elif m.command == "SetParam":
conn.param_set_send(m.data[0], m.data[1])

connect()
enable_can_forward()
Expand Down Expand Up @@ -282,6 +284,13 @@ def get_filter_list(self):
'''get the current filter list'''
return self.filter_list

def set_parameter(self, name, value):
'''set parameter in the remote air vehicle'''
if len(name) > 16:
raise DriverError('Parameter name %s too long' % name)

self.tx_queue.put_nowait(ControlMessage('SetParam', (name, value)))

def passphrase_to_key(self, passphrase):
'''convert a passphrase to a 32 byte key'''
import hashlib
Expand Down
Loading