-
Notifications
You must be signed in to change notification settings - Fork 32
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
Patch sm support #58
Conversation
This may not be the correct place to put this (not sure of the current version).
There was a problem hiding this 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 theinserts
section looking a little cleaner. - The
hardware.ProcessAllControl()
gets called for all boards already, within theaudio_preperform()
function withingenlib_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).
NOTE -- if starting the adc after the init method of the `DaisyPatchSM` class causes issues, then the relevant ifdef block will have to be added back in.
…opsy into patch_sm_support
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 |
Marking as duplicate, and closing. Moved to local branch for release tagging, etc. |
There were some ugly
#ifdef
blocks necessitated by the patch_sm's unique hardware configuration.