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

Buchla support for the Nothern Modular 2OC #81

Closed
wants to merge 7 commits into from

Conversation

synthi
Copy link

@synthi synthi commented Jun 15, 2024

Using both buchal flags dont work in the buchla module:
#define BUCHLA_SUPPORT --> this is for eurorack modules only, if you want 1.2V scaling. so - leave this one commented .
#define BUCHLA_4U --> this is the one for Buchla 4U, the northermodular 2OC buchla module

Also added the option for the OC in the left side.

synthi added 3 commits June 15, 2024 00:52
True Buchla 4U (2OC) support
change pewpewpew to Left side buchla 2OC
Add Buchla 2OC Left Side
Copy link
Author

@synthi synthi left a comment

Choose a reason for hiding this comment

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

sorry the second commin should not be here! just testing the 2OC Left flag instead the Flip180

@djphazer
Copy link
Owner

djphazer commented Jun 15, 2024

No worries! I think I see the general idea, just gotta find the right cocktail of build flags for your specific hardware variant... Seems like there are 3 different types of Buchla O_C then? 4 including the "left side" version?

Edit: just realized this isn't even pertaining to the Easel cardOC thing

@synthi
Copy link
Author

synthi commented Jun 15, 2024

Easel OC card is a card for the 208 with one OC, I don´t have it, it have its own flag I think.
Then there is the 2OC, a dual OC in 4U buchla format, thats the one I own and the most common, had several revisions and also a DIY version run. Because its dual it have and OC in the left and anoher one in the righ sid, the left one have the encoder mirrored that why it have its own flag for the left side.
...And the there is the "buchla support" flag, that have nothing to do with the buchla modules, is just a kind of hack for having 1.2v/oct in the original eurorak module.
Hope is more clear now!! thanks!!

@synthi
Copy link
Author

synthi commented Jun 15, 2024

So:
-for cOC (easel card) the flags needed are BUCHLA_cOC and BUCHLA_4U
-for 2OC (dual OC in 4U module) the flag needed is BUCHLA_4U for the right side, and BUCHLA_4U and NORTHERNLIGHT_2OC_LEFTSIDE for the left side.

Then, for people who wants 1.2V/oct in the stock OC, can use the flag BUCHLA_SUPPORT

synthi added 4 commits June 15, 2024 02:35
change pulse output voltage to 9, some buchla modules need a bit more voltage
change pulse output voltage to 9, some buchla modules need a bit more voltage
delte left OC
@djphazer
Copy link
Owner

Just wondering if you needed to enable the DAC8564 flag for the 2OC? Seems like it's necessary for the cOC, and maybe the hOC as well?

I'll be integrating these build options soon.

@synthi
Copy link
Author

synthi commented Jun 25, 2024

Thanks!
Some updates here.... had a inverted CV otoput whith the buchla builds until I discovered that for the 2OC the "BUCHLA_cOC" flag must be enable too!

The only thing is that the negative CVs always put out 0 Volts.. Trying the sequencerX all values beloww the "center" position output 0 volts, I think it should scale so the 0 is at the bottom negative value... maybe that because that DAC flag ??? I don´t know...

So I think for all three variants (cOC,hOC,2OC) both "BUCHLA_cOC" and "BUCHLA_4U" must be enabled. And also for the 2OC, becuase its dual it needs the special "NORTHERNLIGHT_2OC_LEFTSIDE" for the left OC firmware only.

@djphazer
Copy link
Owner

I think DAC8564 may have inverted values... but I'm still not sure which units have it, and how it behaves without the flag. It doesn't seem like the cOC flag should apply for the 2OC.

The 0V center issue within Hemisphere is somewhat a matter of preference, determined by kOctaveZero in OC_DAC.h ... you could set it to 5 instead, but it seems like a baseline of 5 volts would prevent triggers from working... maybe there needs to be a special case to differentiate triggers from full range values on Buchla hardware?

@synthi
Copy link
Author

synthi commented Jun 25, 2024

I think DAC8564 may have inverted values... but I'm still not sure which units have it, and how it behaves without the flag. It doesn't seem like the cOC flag should apply for the 2OC.

I don´t know about programming so I can´t speak what things does that flag, but for sure its the only way for have working CV outputs in mine!! notes and quantizers are working fine!

@djphazer
Copy link
Owner

djphazer commented Aug 6, 2024

I've merged this in for v1.8 - 0e48d43
Plus some follow-ups: b3e09bf / bd21695

Proper global configuration for DAC scaling is coming in v2.0

@djphazer djphazer closed this Aug 6, 2024
@synthi
Copy link
Author

synthi commented Aug 7, 2024

HI Again!! ok, buchla builds in the 1.8 release dont work in 2OC, need to enable -BUCHLA_cOC to make it work, the same as described here:

Thanks! Some updates here.... had a inverted CV otoput whith the buchla builds until I discovered that for the 2OC the "BUCHLA_cOC" flag must be enable too!

The only thing is that the negative CVs always put out 0 Volts.. Trying the sequencerX all values beloww the "center" position output 0 volts, I think it should scale so the 0 is at the bottom negative value... maybe that because that DAC flag ??? I don´t know...

So I think for all three variants (cOC,hOC,2OC) both "BUCHLA_cOC" and "BUCHLA_4U" must be enabled. And also for the 2OC, becuase its dual it needs the special "NORTHERNLIGHT_2OC_LEFTSIDE" for the left OC firmware only.

@djphazer
Copy link
Owner

djphazer commented Aug 7, 2024

oof, ok I guess we'll turn that one on for all 3 builds then! I'll get it right eventually...

@Banshee700
Copy link

Hi guys, let me shed some light onto the definitions and why they are there.
Buchla equipment, especially the 200e series, is vulnerable to negative voltages.
So we built the output structure with protected op amps basically flipping the voltages starting with the cardOC and then adapted that to the 2OC V1.5 and newer.
So technically there are even more variations than cardOC, hOC, 2OC_L and 2OC_R :P
The #define BUCHLA_cOC definition does the flip and the #define BUCHLA_4U does the offset , scaling and all of the graphic adaptations to 1,2V.
And both are needed for the all the new ones...

/* ------------ uncomment for use with Northernlight cOC program card: ----------------------------- /
#define BUCHLA_cOC
/
------------ uncomment for use with Northernlight 4U / cOC : ----------------------------------------------------------------------------------------- */
#define BUCHLA_4U

I just tested o_C-phazerville-v1.8_cOC-ed61862c.hex and it does not work...
Probably the voltages need to be inverted aka #define BUCHLA_cOC is missing.
The hOC also needs some help in the OC_gpio.h :
#define but_top 4
#define but_bot 5
Needs to be flipped to
#define but_top 5
#define but_bot 4

You can send me the releases to go through and check for main issues and I can report back if you like.
And thank you for doing all of this :)

cheers
Sascha

PS : We would love to make an updated T4.0 version and i think I could use your help with that

@djphazer
Copy link
Owner

djphazer commented Aug 8, 2024

Thank you for the guidance! It's possible that some things have deviated from the stock firmware, and I'd like to simplify some of these flags where possible...

I just tested o_C-phazerville-v1.8_cOC-ed61862c.hex and it does not work...
Probably the voltages need to be inverted aka #define BUCHLA_cOC is missing.

It was built with the cOC flag, but I also threw in the DAC8564 flag, which is probably not necessary? Do some of your modules use that DAC?

PS : We would love to make an updated T4.0 version and i think I could use your help with that

Definitely, try it out! I'll do what I can to assist. :)

@Banshee700
Copy link

Banshee700 commented Aug 9, 2024 via email

@synthi
Copy link
Author

synthi commented Aug 9, 2024

Hi!
Thanks for your clarifying replies!
have a 2OC 1.5 here, with pots but no leds. Working fine with both Buchla_4U and Buchla_cOc enabled.

What Id like to get is the right voltages for the negative part... ie. the sequecerX that I use a lot only work for the upper part, the lower part are negative values so it does nothing. would be great having all those scaled to 0-10V output. Maybe other applets with bipolar output have the same issues

@Banshee700
Copy link

Hi Josue,

There is a change that a lot of the new apps need rework, both in terms of offsets and graphics.
Let's focus on getting the options for the automatic builds sorted and then maybe set up a sheet where we can log graphic and value bugs for each app.
What I can vouch for is the classic apps Max and I redesigned work on all NLM platforms.
Hemisphere had a good run and i sent Jason a 2OC.22 for fine tuning them.
I am happy to do tests myself, if someone else is doing the coding :)

Sascha

@synthi
Copy link
Author

synthi commented Aug 10, 2024

Yes! I think automatic build is almost done, just need to add BUCHLA_COC flag to both Buchla L and Buchla R and will work fine!

Love Phazerville + 2oC, it really opened a new world of possibilities in my portable setup: I have a kind of "future easel" with a 208, 2x TSNMs and the 2oC, f.e. thanks to Ebb&LFO I can have a couple of aditional oscillators + 2 sequencers !
WhatsApp Image 2024-08-10 at 14 55 39

@djphazer
Copy link
Owner

Just pushed some tweaks - a2038af

It looks like the flags for 2OC-R and cardOC are actually identical... is that correct?

Grab the artifact from the workflow run to test - https://github.com/djphazer/O_C-Phazerville/actions/runs/10334428023
(I left out the NLM-DIY build, but there's a configuration in platformio.ini just in case)

Custom Builds with keyword buchla will also include the BUCHLA_cOC flag now, so that should work.

@Banshee700
Copy link

Banshee700 commented Aug 11, 2024 via email

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

Successfully merging this pull request may close these issues.

3 participants