Vidor as lab instrument

A few things that would be of interest to me and I'm sure others:

  • A polled I2C block that takes a slave address, data address, byte count, and clock divider and fills a looping buffer with data values that can be read by RAM
  • A block that connects to a common IMU, performs filtering (low pass, kalman, etc) to give clean and accurate position, velocity, and acceleration data.
  • A block that connects to a brushless motor controller (ESC) and an optional encoder to allow you to do fine-grained motor control.
  • A block that calculates PWM duty cycles for complex curves (splines, cubics, sinusoids, FM modulation) for motion or waveform synthesis.
  • A block that interfaces with a common PLL chip to allow you to set and maintain a stable clock.
  • An always-running G-code interpreter to free up CPU time (the CNC nerd in me is strong).
  • FFT, windowed average, PID, and other filter/control blocks (floating point maybe????)