tonyc / open890

A web-based remote UI for the Kenwood TS-890.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Complete EXPAND implementation

tonyc opened this issue · comments

The EXPAND functionality in #87 is basic, and works, but has a couple of shortcomings:

  • When scrolling in CENTER mode, the bandscope data that was "offscreen" isn't rendered, so we lose the main advantage of EXPAND mode in CENTER.
  • Spectrum/waterfall data seems to be "chunkier" than on the radio. I think the radio does some interpolation/averaging between points.

The solution seems to be to do most of the work client-side

  • Back out the changes in #87 to make the server-side expand functionality done in the client.
    • Broadcast a new event for EXPAND mode state, and handle it in the Bandscope Hook in JS.
    • This is challenging because the spectrum points are all just jammed straight into the resulting SVG, and none of the functionality for the spectrum is drawn in JS.
  • Interpolate/average the points, rather than simply duplicating them.
  • Figure out a way to draw the bandscope "offscreen" and then scroll the offscreen pixels into view when changing frequency in CENTER mode.