sightsdev / sights

A complete teleoperative robot control interface
https://www.sights.dev
GNU General Public License v3.0
12 stars 8 forks source link

Reduce Bandwidth Usage #83

Open WilliamsJack opened 4 years ago

WilliamsJack commented 4 years ago

Is your feature request related to a problem? Please describe. SIGHTS should require minimal data transferred to be more viable for longer range communication methods.

Describe the solution you'd like Send less important data less often, and optimise objects that are sent for size.

Describe alternatives you've considered Invent a new method of wireless communication.

Additional context The camera streaming software "Motion" is outside the scope of this issue; we should focus only on the core SIGHTS software and official sensor wrappers.

WilliamsJack commented 4 years ago

In v1.2-14-g24f7471, the SIGHTS idle overhead (no sensor streams aside from those in the example config (i.e. RAM, CPU and disk usage and CPU temp) is 3.45 kilobits/second.

About 70% of this is the RPC2 request for the service log. If the log was only sent when there are changes, we could save a lot of bandwidth.

WilliamsJack commented 4 years ago

Sights as a progressive web app: If the interface assets were cached, the initial hit of loading the entire page would be negligible compared to normal usage. There could be some other benefits of Sights as a PWA, but I've barely scratched the surface.