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

Patch sm support #58

Closed

Conversation

CorvusPrudens
Copy link
Collaborator

There were some ugly #ifdef blocks necessitated by the patch_sm's unique hardware configuration.

@CorvusPrudens
Copy link
Collaborator Author

Copy link
Collaborator

@stephenhensley stephenhensley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Haven't done a complete test of every param yet, but it seems like stuff is mostly working.

Worth mentioning that v0.4.0-beta is sync'd between main/dev right now, and is already released. So you can move the new entry to a new section at the top of the file (will be v0.5.0-beta)

A few things we'll want to fix in libDaisy along with this update to oopsy:

  • channel swapping is happening reliably on the patch sm (SAI files)
  • gate outputs are swapped (patch_sm files)
  • Add a overload of the samplerate that takes the simpler input argument to all other board targets (probably better than adding the more-verbose option to the patch-sm, but we could do both).

And some stuff specific to the patcher:

  • CV outputs should be internally multiplied so that a normalized 0-1 can be used from max (same as patch/field boards)
  • where you set the outputs it looks like Daisy::CV_OUT_1, etc. but that doesn't look like a proper namespace (weirdly not seeing any errors for that).
  • remove midi out data handler, etc. from json
  • most/all of the stuff for the switches can be left as the defaults (the Switch::Type actually does nothing). That'll help keep the inserts section looking a little cleaner.
  • The hardware.ProcessAllControl() gets called for all boards already, within the audio_preperform() function within genlib_daisy.h so you're running that twice as often as needed.
  • the Daisy typedef also happens somewhere else, but I can't find it at the moment. I don't think that needs to be set in the json file (its not for the other boards).

@stephenhensley
Copy link
Collaborator

Quick test everything is looking like everything should work.

We should do a thorough test to make sure all of the inputs work as expected, and we'll still want to patch the channel swap bug in libDaisy before we make a release.

One thing in the template that we may want to remove is the @min -0.5 @max 0.5 on the param ctrl3, it makes it seem like it would work with negative voltage, but it doesn't. So pending any action related to #60 we should probably avoid negative minimums.

@stephenhensley stephenhensley added the duplicate This issue or pull request already exists label Oct 18, 2021
@stephenhensley
Copy link
Collaborator

Marking as duplicate, and closing.

Moved to local branch for release tagging, etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
duplicate This issue or pull request already exists
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants