Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incorporate CV calibration #23

Open
grrrwaaa opened this issue Dec 9, 2020 · 1 comment
Open

Incorporate CV calibration #23

grrrwaaa opened this issue Dec 9, 2020 · 1 comment

Comments

@grrrwaaa
Copy link
Contributor

grrrwaaa commented Dec 9, 2020

See electro-smith/libDaisy#247

@grrrwaaa
Copy link
Contributor Author

Thinking aloud:

  • Hold down encoder (Patch) or SW1 (Field) or Tap (Versio) etc. on boot to enter calibration mode.

  • Existing calibration loaded into memory.

  • Per jbeda's notes at Calibrating CVs and storing on QSPI libDaisy#247 -- ensure some audio synthesis is running. Could simply be a triangle wave at the most recently-detected voltage.

  • (Patch/Versio etc.: turn all knobs fully CCW).

  • Show some LED lightshow to demonstrate we are calibrating.

  • Go through Each CV input in turn, patching a cable in from a midi controller's CV out.

  • (Patch/Field could also hook up the midi out to the midi controller to automate note playing... though there's some variance between manufactures about what MIDI note == 1v, we could just do about 6 octaves to cover most devices).

  • Play 1v, (2v, 3v), 4v. Device should be able to detect nearest integer v and store the sensed voltage accordingly. So, play C notes at different octaves. While a voltage is detected, data stored to calibration struct, and oscillator plays current pitch. So, polling, e.g. every 50ms or something.

  • Maybe want to add some smoothing to the CV inputs to get a nice average over microfluctuations.

  • Move to next CV input.

  • Next CV outputs. Tap the encoder/sw1/tap again to toggle to CV OUT calibration

  • Different lightshow for outputs.

  • Route a CV out N into CV in N (which is now assumed to be calibrated). Device is playing a step sequence of voltages (1v, 2v, 3v, 4v). Detected voltages (if above 0.5v) will trigger updating the stored value for the CV out.

  • A tiny bit of delay maybe needed compared to the CV out (a few ms to cover smoothing)?

  • Tap again to exit calibration. Calibration stored to QSPI. Now can test playing other notes to listen how well it is tracking.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant