Digital BBD concept looking for comments and beta testers

Prototypes were shipped to beta testers today 🥳🥳
Prototypes.jpg
A copy of the preliminary datasheet was sent by email, and attached here for anyone else that might be interested.

Let the games begin! :)

[Jan 20] Updated PDF with details of linking multiple modules, and MN3011 emulation firmware. Note the first batch of modules do not have the MN3011 firmware update.

[Feb 13] Moved datasheet PDF to CT3680 resources page on our website where we will keep the latest updates:

https://cabintechglobal.com/apps
 
Last edited:
Been quiet with the beta group getting their circuit design mojo worked up :-)

So we started the design of the next hardware iteration (first production model). A few key changes we are contemplating...
  1. Support only +5V supply using onboard 3.3V regulator. External 3.3V supply makes noise control challenging and unpredictable.

  2. Drop the castellated edges and SIP headers for I/O. Use an edge connector with finer pitch (e.g. 1.5mm). Will save lots of board space and allow other components to be through-hole (can't have TH with castellated edges because the PCB would not sit flat on the parent board). Would like to use a locking connector of some kind for vibration/impact resistance (gig gear!). We will make an adapter board to map the connector to a DIL footprint for breadboarding. Connector suggestions welcome! Need to be widely available and inexpensive.

  3. Support 2 channels of linked audio when chaining modules, selectable with an I/O pin (1 channel or 2).

  4. The (4) programming pins will be brought out to the I/O connector so the program can be selected externally or with a uC.

  5. Make everything smaller and denser, aiming for 30% PCB size reduction.
Input on any of that is welcome!
 
Mark (CabinTech) - is there a place where we CT3680 beta testers can meld minds and discuss what we're experiencing/achieving? Or is this the place?
I've got a rudimentary setup achieved using the +5V external supply scenario (+3.3V CV out from the CT3680 to 4 B10K pots), program "0" and mixing all 4 tapped outputs passively thru 1K resistors. (Thinking I can use lower mixing resistor values - ~470Ω ?)

My goal is to do the MN3011 emulation, but I got back-ordered on some crucial parts that will help make it happen.

I'm surprised to find this is based on the Experimental Noize 'FX Core" DSP. With that in mind, will CabinTech be creating other FX modules thus?
 
I think this is an OK place to share experiences, ask questions, etc. We don't have any private chat room or forum setup anywhere, so as long as the admins here don't mind...

For MN3011 emulation, FYI, we have implemented a dedicated program that fixes the tap delay interval ratios to match the MN3011 datasheet. The min/max scalars work as usual, but the CV delay control inputs are ignored. You can do this yourself with fixed resistors but it may be hard to get them just right without using multiturn trimmers and careful measurements. That MN3011 program also supports chained modules so the first module produces the first 4 MN3011 taps, and the second produces the last 2. Min/max can be used to set (and vary) the overall delay time (of both modules when using 2) and the tap ratios stay fixed across both modules (equivalent to changing the MN3011 clock frequency). The updated datasheet (above) has the details.

I think your modules were sent out before we added that program to the firmware, only the second batch of prototype boards got that update. If you want, we can send you updated modules and we can swap them for the ones you have. At the moment we don't have any good way for you to update the firmware, we have to do that here.

At first we looked at the FV-1 for this, but we saw no good way to get 6 audio outputs. By the time you put 3 FV-1's on a board it is cheaper to use the FXCore + codescs, and the FXCore has other benefits as well. It is possible we could build some other dedicated modules with it... anything in particular you are thinking about?
 
Last edited:
I think this is an OK place to share experiences, ask questions, etc. We don't have any private chat room or forum setup anywhere, so as long as the admins here don't mind...

For MN3011 emulation, FYI, we have implemented a dedicated program that fixes the tap delay interval ratios to match the MN3011 datasheet. The min/max scalars work as usual, but the CV delay control inputs are ignored. You can do this yourself with fixed resistors but it may be hard to get them just right without using multiturn trimmers and careful measurements. That MN3011 program also supports chained modules so the first module produces the first 4 MN3011 taps, and the second produces the last 2. Min/max can be used to set (and vary) the overall delay time (of both modules when using 2) and the tap ratios stay fixed across both modules (equivalent to changing the MN3011 clock frequency). The updated datasheet (above) has the details.

I think your modules were sent out before we added that program to the firmware, only the second batch of prototype boards got that update. If you want, we can send you updated modules and we can swap them for the ones you have. At the moment we don't have any good way for you to update the firmware, we have to do that here.

At first we looked at the FV-1 for this, but we saw no good way to get 6 audio outputs. By the time you put 3 FV-1's on a board it is cheaper to use the FXCore + codescs, and the FXCore has other benefits as well. It is possible we could build some other dedicated modules with it... anything in particular you are thinking about?
Cool beans. Here works for me and I don't think the forum admin and/or members will mind.

I understand the MN3011 fairly well. We've been working with and studying them for a few years with our RMS X100 rebuilds.

Yes please. Please make arrangements to swap my CT3680 modules for the 2nd revision. Happy to send mine back.

After the demise of the MN3011 supplies, we also looked at the FV-1 and have actually come up with very close mimic of the MN3011 using the MN3011 Block in Digital Larry's "SpinCAD Designer" app. So, we're going to be using the FV-1 and our custom patches to replace the MN3011 and MN3007s in our RMS Rockman X100 V3 builds.

As for other FX with your module . . . . whatever you deem worthy. I was thinking of the all the other standard FX like phasers, chorus, flangers, verbs, auto-wah, pitch-shifters, filters, etc.
With far greater versatility of the FX Core over the FV-1, other FX could be achieved as well - like rotaries, vibes, trems and so on.
 
We will get 2 updated modules to you in the mail and send a return label for the ones you have.

> very close mimic of the MN3011

How are you getting 6 delay taps from the FV-1, are you using more than one of them?
 
I assume … mixing the taps in the dsp and spitting out whatever composite “reverb” output is needed. It’s gonna sound a lot cleaner that way too.
 
We will get 2 updated modules to you in the mail and send a return label for the ones you have.

> very close mimic of the MN3011

How are you getting 6 delay taps from the FV-1, are you using more than one of them?
Thanks! Looking forward to getting the rest of my needed supplies to continue testing.


Knowing the FV-1 chip has only 2 outputs, we had to dig into patch editing. Digital Larry's "SpinCAD Designer" app has an MN3011 building block its building queue. It sums 5 taps to the left out and tap #6 to the right out. This block alone does not do the job sought after. But it does a nice job of emulating an MN3011 for mono use. We tried using two of them as you postulated, but couldn't get the sound right without over-arching the 128 code line maximum of the FV-1 limit. And after reviewing my notes, we actually went with using two of SpinCAD's "Three Tap" building block. Each block has three taps that can be configured for the max delay time and what percentage of that max delay time is assigned to each of the three taps.

In this screenshot example, (see attached), the configuration blocks are displayed to show how each is configured. And in this instance, nearly all resources of the FV-1 are nearly maxed out to achieve the "BOTH" effect of a Rockman X100. The "Scale Offset' block are used to scale the control pots and here they are set up so when they are all at their minimum settings, this patch pretty much nails the Rockman X100 "BOTH" setting. 'Pot 0' is attached to all three of the "Three Tap"Delay Tap controls (Delay Tap 1, Delay Tap 2 & Delay Tap 3). Control "Pot 1" controls the Feedback Gain of both of the "Three Tap" blocks. And Control "Pot 2" can increase the volume of the Chorus effect thru the final "Mixer 4:1" blocks.

Echo_Chorus_St-In_MD.spcd.png
 
Does the x100 feed one tap back or two? That would make a really big difference in the sound. 1 tap feedback would be constant density and 2 taps would increase the reverb density. The network you have here is actually constant density, despite feeding back two taps, which is a little odd for something meant to be a reverb.
 
Does the x100 feed one tap back or two? That would make a really big difference in the sound. 1 tap feedback would be constant density and 2 taps would increase the reverb density. The network you have here is actually constant density, despite feeding back two taps, which is a little odd for something meant to be a reverb.
The X100 uses a single tap out of the MN3011 and mixes that with a chorus chip (MN3007) as part of the feedback signal which is fed back into the pre-filter, then onto the MN30011 where it is split again.
Board_200_Schematic_Orig_Updated_ to_BOM.png

In my network, the two feedbacks remain separated in the left & right channels. The Feedback blocks are individually set/configured for the amount of max feedback to re-mimic the X100's configuration.
 
Hi all, some development updates...

We have implemented an aliasing feature in the firmware which allows for more "real world" BBD behavior if desired. This feature is enabled with an input pin (disabled by default), and has a 'manual' (CV control) and 'automatic' modes. Currently only 'manual' mode is implemented. In this mode, a CV controls the 'intensity' of the effect. What that really means is that it controls the simulated aliasing of a particular sampling frequency. At it's lowest setting (0.0v) the simulated sampling rate is ~48kHz, e.g. no audible aliasing. At max effect (3.3v) the simulated sample rate approaches 0Hz. In the future we might limit that to something more reasonable (near 0Hz the output is basically DC, e.g. no audio). The CV can vary with time (modulated) or might be linked to a delay-time CV so that a longer delay = more aliasing, as in a physical BBD.

A few beta testers have (or soon will have) this updated firmware. All the details are in the updated datasheet. We are hosting that now on our website along with a few other preliminary CT3680 resources:

https://cabintechglobal.com/apps

We have created a means to update the CT3680 firmware in the field, although it requires some specialized hardware. For beta testers we can loan out that hardware if you are interested in the new features, just let us know.

On the hardware front, a few production design modules will arrive soon. The bad news is that we already know they will be unusable to due a PCB design flaw. :mad: :mad: :mad: Check your doggone edge connector pads against the manufacture's data sheet!! Don't assume a library footprint is correct.!! Arrgg! Fortunately we only had a few built, but we are waiting until they arrive before fixing the connector pads to see what other surprises might be in store. We also have a few DIL adapter boards getting made that convert the fine pitch edge connector into a 40-pin DIL format for breadboarding and through-hole designs.

That's all the news from Lake Wobegon... :)
 
Have you guys considered any mid/side implimentation for stero operation? Not sure how it would be executed but that ability to alter the stereo field depth or possibly and maybe Haas effect auto panning (thinking more of a left right sweep vs a fixed position). This would be more so a feature set for euro rack and pro audio and maybe steps a bit too far outside of the scope of the project. Just an idea. Maybe for another dsp down the road...
 
Have you guys considered any mid/side implimentation for stero operation? Not sure how it would be executed but that ability to alter the stereo field depth or possibly and maybe Haas effect auto panning (thinking more of a left right sweep vs a fixed position). This would be more so a feature set for euro rack and pro audio and maybe steps a bit too far outside of the scope of the project. Just an idea. Maybe for another dsp down the road...
Program 4 has a Hass effect stereo output, but the effect is not adjustable (fixed at -15ms offset of the right channel). It would be easy enough to use CV_DELAY_3 input to control the Haas delay from (say) -20ms to +20ms. Sweep that through the range for a left/right pan. That would mean you could not use the alias effect at the same time since it also uses CV_DELAY_3 (really wish we had more CV inputs!).

Or we could do a new program that has only 2 delay lines (1 tap each) which frees up a CV input so both Haas effect and alias could be independently adjustable.

Is +/- 20ms enough? Too much more than that and you are into echo territory and lose the stereo perception.

I don't think stereo considerations are outside the scope at all. I have done a lot of studio mixing and appreciate the importance of the stereo field. We view the CT3680 as a sort of audio delay engine with broad application. Some features (like stereo) are interesting for studio type work, others like aliasing might be more directed at pedal and live performance type applications.
 
Program 4 has a Hass effect stereo output, but the effect is not adjustable (fixed at -15ms offset of the right channel). It would be easy enough to use CV_DELAY_3 input to control the Haas delay from (say) -20ms to +20ms. Sweep that through the range for a left/right pan. That would mean you could not use the alias effect at the same time since it also uses CV_DELAY_3 (really wish we had more CV inputs!).

Or we could do a new program that has only 2 delay lines (1 tap each) which frees up a CV input so both Haas effect and alias could be independently adjustable.

Is +/- 20ms enough? Too much more than that and you are into echo territory and lose the stereo perception.

I don't think stereo considerations are outside the scope at all. I have done a lot of studio mixing and appreciate the importance of the stereo field. We view the CT3680 as a sort of audio delay engine with broad application. Some features (like stereo) are interesting for studio type work, others like aliasing might be more directed at pedal and live performance type applications.
I'm one of those weirdos who loves and frequently used stereo live rigs back when I was still gigging, even on bass. In the grand scheme of what I'd like to do with this chip, morphing stereo soundstages would be at or near the top of the list, either via pedal control or other means. The aliasing feature seems counter to my typical wants and needs, but replicating pre-existing things has never been a big goal for me. ;)
 
I think it would be straight forward to take the program #4 Haas effect and make it variable to allow panning of the stereo field.

Using CV input 3, when that CV is at the center value (1.65v) outputs 2 and 3 (L and R) would be identical (both delayed by the amount defined by CV 2). Between 1.65 and 3.3v the R output delay increases to 20ms more than L, and output L remains unchanged. Between 1.65 and 0v, the L output delay increases to 20ms more than R, and R remains unchanged.

So question: where in the process would the Haas function be applied? As a final stage after all other (mono) effects have been done (e.g. reverb or whatever), or would you take a mono input, make it stereo (Haas) and then make effects on that stereo signal?

Currently Program #4 defines channel 3 to be a 277ms delay line with a single (mono) input and the Haas effect done after whatever delay is defined for that channel (up to 277ms). I am wondering if that is ever useful (delay the mono signal, then make it stereo), or would it be better to just define channel 3 as a dedicated Haas effect with a max delay of 20ms, and allocate that extra delay capacity to channels 0 and 1?
 
this is very interesting and I'm excited! I'd like to know when these are available for sure (even a beta model if you now have extra).

So question: where in the process would the Haas function be applied? As a final stage after all other (mono) effects have been done (e.g. reverb or whatever), or would you take a mono input, make it stereo (Haas) and then make effects on that stereo signal?

Currently Program #4 defines channel 3 to be a 277ms delay line with a single (mono) input and the Haas effect done after whatever delay is defined for that channel (up to 277ms). I am wondering if that is ever useful (delay the mono signal, then make it stereo), or would it be better to just define channel 3 as a dedicated Haas effect with a max delay of 20ms, and allocate that extra delay capacity to channels 0 and 1?

i think there is a place for a 277ms delay. that kind of flexibility is what I'm after.
 
I'm finally up and running now, everything looks stable and quite clean on my scope. Just sleeping on my initial feedback configuration for a basic two tap delay tester, hope to be making noise tomorrow.
 
Back
Top