Skip to content

Latest commit

 

History

History
99 lines (71 loc) · 3.2 KB

TODO.md

File metadata and controls

99 lines (71 loc) · 3.2 KB
  • Create agent to run on remote servers to manage local devices that are being shared. This would have all the intelligence on how to accommodate OS differences This would install kernel modules as needed Will have to figure out plugin support for different server or just bake them in.

When remote commands fail raise good errors in GUI

Update jobs to have pre and post scripts for sharing and unsharing Agent side or server side Add toggle to enable/disable script execution

Add client api for retrieving reservation record

Resources for USB power switching https://acroname.com/store/s79-usbhub-3p https://www.crowdsupply.com/capable-robot-components/programmable-usb-hub/updates/production-update-part-ii https://www.yepkit.com/product/300115/YKUSHXS https://electronics.stackexchange.com/questions/393468/efficient-way-to-selectively-unpower-usb-ports https://www.smartspate.com/how-to-convert-a-basic-usb-hub-into-driven-one/

Tasks to update device status are not scalable as they are done serially. Look ay making them async, or break them up into subtasks. Move host information to separate table Set up tasks to process hosts in parallel Merge checks for share state and online state so only one connection is needed for both

Windows support

Update client to have a wait for connections command background mode? decide where to log

Andriod ADB support VirtualHere driver works better I think there is a issue with the USBIP driver where adb size limits on reads are not honored.

for all servers schedule task in task for each connector get all state information update online status if online update share state

Create autocomplete for adding host automatically retrieve host key display host key in record as read only

Create autocomplete for adding device automatically retrieve all suitable devices on host not being used elsewhere

Migration plan create remote host table add field to device

for each dev get host field host = check if remote host exists for SSH if not create remote host for ssh host = new host delete host field from device update device host field to $host update driver field to "USBIP" save device

Update client to embed default server url change reservation arg to only need reservation number add server arg to override default

Get rid of json_config. Move to simple key-value, maybe something else.

Remove dependence on usbip command, probe /sys directly """ From usbip source code, /* Take only USB devices that are not hubs and do not have * the bInterfaceNumber attribute, i.e. are not interfaces. */ """ for i in $(find /sys/bus/usb/devices/); do [ ! -f $i/bInterfaceNumber ] && [ -f "$i/bDeviceClass" ] && grep -qv '09' "$i/bDeviceClass" && echo $(basename $i),$(cat $i/idProduct),$(cat $i/idVendor),$(cat $i/manufacturer),$(cat $i/product); done

Update UI to group devices by pool

Make example driver app

Move drivers to plugin model Namespace usb_quartermaster_* Make USB_Quartermaster_common package with doc Figure out how to impliment integration plug-ins