let's design a standard digital communication bus

Cwejman, Doepfer, Erica, MakeNoise, Mutable instruments, TipTop Audio, Analogue Solutions, and much more! The world’s most popular format.
Be sure to look into MANUFACTURER SUB-FORA as well..
User avatar
akrylik
Super Deluxe Wiggler
Posts: 1911
Joined: Sat Feb 18, 2012 9:13 am

let's design a standard digital communication bus

Post by akrylik »

So many wonderful advancements in euro are hampered by the lack of a common digital communication layer in our racks (think the Buchla 200e series but open).

- modules that reconfigure themselves based on what modules are in your case
- modules that query and save for later recall the state of other modules
- dedicated display modules to free up panel space for more knobs and patch points!

I think eventually someone is going to manufacture 2 modules that communicate digitally and if there is no standard, then they will be creating their own which might not be optimal for others to join in.

So I say we should get together and create our own standard right now before that happens because it will happen!

Here is my suggestion:

I could be wrong but I believe that many of us don't really use the GATE/CV bus that's part of our power distribution boards. What if we commandeered these lines for a case-wide I2C bus?

I choose I2C because so many chips already support this standard and it only requires 2 wires.

Discuss.
User avatar
Graham Hinton
Super Deluxe Wiggler
Posts: 3318
Joined: Fri Jul 02, 2010 6:28 pm
Location: England
Contact:

Re: let's design a standard digital communication bus

Post by Graham Hinton »

akrylik wrote:I could be wrong but I believe that many of us don't really use the GATE/CV bus that's part of our power distribution boards. What if we commandeered these lines for a case-wide I2C bus?
Apart from the dubious suggestion of adding digital signals next to an already shaky power distribution system what you are proposing will make all modules "digital devices" and so legally require FCC and CE testing and certification. That won't happen. You can't build castles on sand.
User avatar
akrylik
Super Deluxe Wiggler
Posts: 1911
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik »

:deadbanana: ?

Graham, I have to admit I don't know anything about FCC/CE certification. I assume you are talking about this?

http://www.cclab.com/fcc-part-15.htm
User avatar
akrylik
Super Deluxe Wiggler
Posts: 1911
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik »

After skimming the documents on this, I have the growing impression that these FCC limits and certification tests are only applicable to finished products. I know its a total technicality but can't a module manufacturer claim that they are selling parts for assembly and its up to the assembler to meet any FCC limits but only if they go and sell the assembled synthesizer which doesn't usually happen.

This doesn't change by the inclusion of a digital bus right? We already have plenty of digital devices in our cases.

I'm going to keep reading because I'm not convinced yet but I would appreciate more direct experience with the matter if anyone has any.
User avatar
akrylik
Super Deluxe Wiggler
Posts: 1911
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik »

Graham, I can certainly see that crosstalk could be an issue so maybe reusing GATE/CV is not such a great idea but I still think the original call for a standard digital communication bus is valid.

How about a shielded twisted 2-wire pair that you can daisy chain throughout your case?
User avatar
dslocum
darwin's nemesis
Posts: 2203
Joined: Sat Aug 29, 2009 6:58 am
Location: "Exit 89", NJ USA
Contact:

Post by dslocum »

I've actually been thinking a bit about this for a while. I think the I2C bus would probably be good, and I'd suggest using two RJ-11 or RJ-25 telephone connectors per PCB so that daisy chaining is convenient, rather than trying to use (re-use) the power buss system.
Doug Slocum
Synthetic Sound Labs
www.steamsynth.com
------------
"I guess all the Forest Mims Radio Shack books I read finally paid off!"
"I ordered twice as many _______ as I thought I'd need, only to find out that I'm still less than half way to having enough."
"...this whole thing was started by a dream and a mouse." - Walt Disney
"Flatulence sounds aren't just for brass and reed instruments anymore, thanks in large part to Dr Moog." - Ockeghem
User avatar
Drumdrumdrumdrum
What she said
Posts: 2719
Joined: Tue Jul 26, 2011 6:06 am
Location: Tropical Australia

Post by Drumdrumdrumdrum »

I'm not sure what this is about? Is it anything like the custom system that Hans Zimmer is using to integrate his modular with his DAW? :hmm:
"There are two means of refuge from the miseries of life: music and cats."
- Author, Albert Schweitzer.

"Modular synths can take your ego out of the equation which, in music, is a blessing" - Jeremy Greenspan


http://www.cdbaby.com/cd/glennkingsleymortimer
User avatar
hanerlend
Jesus wiggler
Posts: 311
Joined: Fri Dec 30, 2011 3:52 am
Location: stavanger, NO

Post by hanerlend »

i've been thinking about this for a while.

if it is just a matter of storing the individual modules settings (pots and switches), why not use the cv bus on the power distribution board. if every module could discern between "single notes", ie 0,083333 volts, then 0-10 volts would give us 120 presets! :banana: the modules would need a way to store those presets. nothing an arduino cannot handle. the gate bus could be used as a "store preset" command.

then... you hook up an lfo to the cv bus and cycle through those 120 presets! :banana: :bananaguitar:



you don't get the screen sharing and bells and whistles, but you get a "raw", powerful patch management system.

edit: does it annoy you that banana and guitar-banana don't move to the same beat?! :banana: :bananaguitar:
ImageImage
User avatar
radiodread87
Super Deluxe Wiggler
Posts: 2017
Joined: Wed Jan 05, 2011 5:14 am
Location: Great Southern Land

Post by radiodread87 »

something like this would be incredible, I think that Silent Way is about as close as I have come to saving anything modular so its repeatable (or at least semi!)
some intriguing ideas being discussed here, and interesting stuff from Graham Hinton.
"I have come here to Kick Ass and chew bubblegum.....and I'm all out of bubblegum"

"And since - my friend we have exposed your deepest fear! I sentence you to be exposed before all your peers! Tear Down the Wall!"
User avatar
neil.johnson
Super Deluxe Wiggler
Posts: 1961
Joined: Thu Apr 08, 2010 3:51 pm
Location: Cambridge, UK
Contact:

Post by neil.johnson »

There are two problems with standards:
1/ everyone thinks they can write them
2/ very few people actually can

Unfortunately, the people referred to in #1 rarely think #2 applies to them.

Too many examples to demonstrate this, but I digress.

Better to find existing standards and see if you can get them to work for you. Would MIDI not do what you want?

As regards I2C, I wouldn't use it. It's not really designed for stringing across multiple PCBs across multiple cabinets. I'd look at RS-485 as a possible hardware interconnect.

Doug's RJ-45 suggestion is a good choice - widely available connectors, and ready-made patch leads at reasonable lengths at reasonable prices. If you go with RS-485 you have at least a couple of twisted pairs in a standard RJ-45 cable to choose from. Or for a really cheap option go for single twisted pair on 2-pin Molex headers (RS-485 allows quite a lot of common-mode voltage so you don't need a 0v wire with the twisted pair in a closed system with common-ish ground, such as in a modular synth case).

Neil
Random ramblings :: http://www.njohnson.co.uk
SSI parts and more :: https://www.cesyg.co.uk
User avatar
Mitchk1989
*Probably* not a cyborg.
Posts: 2107
Joined: Sun Jan 02, 2011 3:32 pm
Location: Kelowna, BC

Post by Mitchk1989 »

if I wanted this stuff, I'd have bought a buchla :despair:

I don't use the CV/Gate bus because it's not what modular is 'supposed' to be imo.
User avatar
akrylik
Super Deluxe Wiggler
Posts: 1911
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik »

Drumdrumdrumdrum wrote:I'm not sure what this is about? Is it anything like the custom system that Hans Zimmer is using to integrate his modular with his DAW? :hmm:
I don't know anything about what Hans Zimmer is doing, but I guess you could use this to talk to devices outside of your modular (via I2C to USB device most likely). However, I am personally more interested in intermodule communication because I would like my modular to maintain a certain independence from the computer. In fact I would think a modular with its own communication bus would make it even easier to be away from the computer.

I2C is a standard that allows digital chips to communicate with each other. All the chips that want to communicate share the same two wires and simply bash their message out onto the wire for any chip on the bus to receive, kind of like 100Base-T.
User avatar
akrylik
Super Deluxe Wiggler
Posts: 1911
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik »

Mitchk1989 wrote:if I wanted this stuff, I'd have bought a buchla :despair:

I don't use the CV/Gate bus because it's not what modular is 'supposed' to be imo.
There are other reasons to not buy a Buchla, its expensive and its closed system being two I can think off the top of my head.

One of the great things about euro is that no one cares what people think a modular is "suppose" to be. They just do it because they think its f**kin cool. :twisted:

That being said, I actually do agree partially with you that everything that is going on should be visible on the front. However, there must be some way around that even if modules are communicating behind the scenes on certain functions. Just can't think of it at the moment :hmm:
User avatar
Graham Hinton
Super Deluxe Wiggler
Posts: 3318
Joined: Fri Jul 02, 2010 6:28 pm
Location: England
Contact:

Post by Graham Hinton »

akrylik wrote:After skimming the documents on this, I have the growing impression that these FCC limits and certification tests are only applicable to finished products. I know its a total technicality but can't a module manufacturer claim that they are selling parts for assembly and its up to the assembler to meet any FCC limits but only if they go and sell the assembled synthesizer which doesn't usually happen.
Try asking the FCC... I can guess what they will say.
You are treading into the realms of non-harmonised international standards and trade protection barriers. There is no point in trying to evade them, it's like buying a 150mph motorbike, having some fun on it and then complaining when you lose your license for speeding.

In the US there are FCC Class A and B devices and the domestic B regulations are stricter. You only need one person in a domestic environment to make a complaint to the FCC about tv/radio interference and someone is going to lose their setup and alert them. The FCC only have to use Google to find who's selling this stuff. Behringer thought they could get away with it and got a $1M fine.
This doesn't change by the inclusion of a digital bus right? We already have plenty of digital devices in our cases.
Yes and they are technically illegal. One day someone will get caught. You only need one customs official to get wise and impound a shipment of modules... Or prosecute the distributor that is importing them...

I'm not saying that digital control is a bad idea or undesirable, but it comes at a cost and it has to be designed in from the ground up and it is not a good idea to use a low cost unscreened system that already has enough problems of its own for the basis and have it retrofitted. No module already designed will have considered screening from long runs of digital signals. Not to mention the consequences of +12v or -12V accidentally touching a digital bus connected to every module... You are opening a can of worms.

I always cite MIDI as a good example of how a working standard can be introduced. It was sorted out by a few companies who knew what they were doing before anyone else got involved, tested and proved before it was formalised and released.

I spent too many wasted years of my life researching this sort of technology for Solid State Logic and I can tell you "Hinton's Law": If you take an existing analogue circuit and make it totally controllable it will be 4 times the size and 4 times the price. Think about it, most modules are not even fully CV controllable, most of the pots are signal/CV attenuators, and every pot and switch has to be replaced by a control element and control system that won't work as well as the original and will introduce artefacts.
User avatar
akrylik
Super Deluxe Wiggler
Posts: 1911
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik »

neil.johnson wrote:
(snip)

Better to find existing standards and see if you can get them to work for you. Would MIDI not do what you want?

As regards I2C, I wouldn't use it. It's not really designed for stringing across multiple PCBs across multiple cabinets. I'd look at RS-485 as a possible hardware interconnect.

Doug's RJ-45 suggestion is a good choice - widely available connectors, and ready-made patch leads at reasonable lengths at reasonable prices. If you go with RS-485 you have at least a couple of twisted pairs in a standard RJ-45 cable to choose from. Or for a really cheap option go for single twisted pair on 2-pin Molex headers (RS-485 allows quite a lot of common-mode voltage so you don't need a 0v wire with the twisted pair in a closed system with common-ish ground, such as in a modular synth case).

Neil
RS-485 does look really promising. Looking around at where its used makes it obvious that is very much more appropriate for board to board communication then I2C. Nice one.

Are the chips used for interfacing with a RS-485 bus cheap and easy to use?
User avatar
akrylik
Super Deluxe Wiggler
Posts: 1911
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik »

Graham Hinton wrote:
(snip)

I spent too many wasted years of my life researching this sort of technology for Solid State Logic and I can tell you "Hinton's Law": If you take an existing analogue circuit and make it totally controllable it will be 4 times the size and 4 times the price. Think about it, most modules are not even fully CV controllable, most of the pots are signal/CV attenuators, and every pot and switch has to be replaced by a control element and control system that won't work as well as the original and will introduce artefacts.
I have to respond to this one first and think about your other (spot on) comments more. I'm definitely NOT proposing that we make all of our current beloved modules into digitally controlled monsters. If we are going to have digital modules in our modulars then it would be a shame to not to have the option of them passing information back and forth. It's an extra dimension for the creativity of the euro industry, not a requirement.
User avatar
Drumdrumdrumdrum
What she said
Posts: 2719
Joined: Tue Jul 26, 2011 6:06 am
Location: Tropical Australia

Post by Drumdrumdrumdrum »

akrylik wrote:However, I am personally more interested in intermodule communication because I would like my modular to maintain a certain independence from the computer.
There seems to be a lot of this going around. I think OCD eventually gets to a point where everything has to be quarantined in its own room. God help us if the peas touch the protean on our dinner plates! :hihi:
"There are two means of refuge from the miseries of life: music and cats."
- Author, Albert Schweitzer.

"Modular synths can take your ego out of the equation which, in music, is a blessing" - Jeremy Greenspan


http://www.cdbaby.com/cd/glennkingsleymortimer
User avatar
akrylik
Super Deluxe Wiggler
Posts: 1911
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik »

Graham Hinton wrote:
(snip)

I always cite MIDI as a good example of how a working standard can be introduced. It was sorted out by a few companies who knew what they were doing before anyone else got involved, tested and proved before it was formalised and released.

(snip)
This comment kind of stopped me in my tracks (way more than the FCC/CE stuff, mind you :lol: ). I feel you are completely right that a standard can't be created out of just a discussion and then forced on the next person who actually builds something. Its ass backwards. In reality, I guess we have to wait for one of the module manufacturers to try something and see how it goes. If they are successful AND if they open it up to the rest of us THEN it will become a standard. Maybe?

I guess I should alter the thread of this title to "Let's brainstorm about digital communication buses for euro". I have to admit "standard" was too strong a word.
User avatar
Graham Hinton
Super Deluxe Wiggler
Posts: 3318
Joined: Fri Jul 02, 2010 6:28 pm
Location: England
Contact:

Post by Graham Hinton »

neil.johnson wrote:There are two problems with standards:
1/ everyone thinks they can write them
2/ very few people actually can

Unfortunately, the people referred to in #1 rarely think #2 applies to them.
Well put, Neil. Add:
3/ The people who want to write standards are the last ones who should be allowed to.
I was on the working group for what has become AES59 last year. It was not a pleasant experience, more like arguing with a bunch of lawyers about whether the wording says "should" or "must" and with absolutely no understanding of the original proposal or practical use.

akrylic wrote:If we are going to have digital modules in our modulars then it would be a shame to not to have the option of them passing information back and forth. It's an extra dimension for the creativity of the euro industry, not a requirement.
I don't see any advantage in trying to fit such a scheme into Euro. All it needs is a different rack next to it.
If you want fully preset digital modules, anybody want to take a TX816 off my hands? Unused for 20 years.
User avatar
akrylik
Super Deluxe Wiggler
Posts: 1911
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik »

Looks like at least one manufacturer is starting their own implementation for euro:

viewtopic.php?t=71233&postdays=0&postorder=asc&start=0

I for one will be watching with interest.
User avatar
urbanscallywag
Ultra Wiggler
Posts: 939
Joined: Sat Sep 05, 2009 10:20 pm
Location: San Diego, CA

Re: let's design a standard digital communication bus

Post by urbanscallywag »

akrylik wrote:(think the Buchla 200e series but open).
I talked to Ezra Buchla and he said they are willing to share the bus specifications with 3rd parties.
Erthenvar | PulpLogic Modules | Erthenvar Modules | Euro Accessories | 1U Tiles
User avatar
vozs
Wiggling with Experience
Posts: 291
Joined: Tue May 04, 2010 1:56 pm
Location: http://www.youtube.com/watch?v=nQPlFLtWDwM

Post by vozs »

Did they reveal the bus specification then?
User avatar
Veqtor
Super Deluxe Wiggler
Posts: 2193
Joined: Fri Nov 14, 2008 6:25 pm
Location: Stockholm, Sweden

Post by Veqtor »

I would also like to see this implemented but I believe it wouldn't be a good idea to try and put it on the normal power bus, it would be much better to have a serial connection where every module has one output pin that isn't forwarded that basically says "i'm done, now you go ahead" to the next module on the bus.

This way you could connect multiple cases toghether and it could scale forever in theory.

I think an important choice to make is to store the preset information on the host. Why?

* You can perform patch mutation like on the Nord Modular
* Hosts can be defined by any manufacturer or DIY-er
* A host could be a computer plugin that recalls parameters for daw sessions and could be dedicated to digitally controlled clones of cool analog outboard hardware :deadbanana: :deadbanana: :deadbanana: :deadbanana:

Ideally I think it should work like this:

Power on / connecting a host like a pc / or external host module:
Host module sends out "go ahead" message to first module on bus (this is like a CS pin) Module one says hi i'm <string modulename>, I have x parameters of types <array parametertypes> and they're called <array parameternames>, when it's finished it tells the next module to go ahead and introduce itself until the last module is reached and it has a termination connector on the bus connector so it send out all done message.

Preset save: Host sends out a similar command as when connecting/powering up and the slaves sequentiella return their parameter values.

Recall/Mutate etc: Host sends out adressed packets with parameters, all the slaves get them but only the ones the packets are for react to them obiously.


This could become an incredibly powerful open technology!

I've pondering the ins and outs of this bus for endless hours trying to fall asleep :lol: I think it should extend to all formats and DIY endevours really. I would, if more people are interested, like to form an interest group that would co-develop this tech with manufacturers. I myself plan to start making modules and would really like to have this laid out and approved by multiple interested parties as soon as possible.

It needs to be a community developed protocol and an open one that anyone can use. This is also a reason for the host idea, there's no telling what cool hosts that could be implemented, perhaps they could react to what type of module they're sending out random values to and conform them to a table that works well for that module?

The possibilities are endless!
User avatar
DonKartofflo
The knob-twisting Hive Mind
Posts: 3042
Joined: Thu Feb 02, 2012 7:56 am
Location: Stuttgart, Germany / Bratislava, Slovakia

Post by DonKartofflo »

Veqtor wrote:I would also like to see this implemented but I believe it wouldn't be a good idea to try and put it on the normal power bus, it would be much better to have a serial connection where every module has one output pin that isn't forwarded that basically says "i'm done, now you go ahead" to the next module on the bus.

This way you could connect multiple cases toghether and it could scale forever in theory.

I think an important choice to make is to store the preset information on the host. Why?

* You can perform patch mutation like on the Nord Modular
* Hosts can be defined by any manufacturer or DIY-er
* A host could be a computer plugin that recalls parameters for daw sessions and could be dedicated to digitally controlled clones of cool analog outboard hardware :deadbanana: :deadbanana: :deadbanana: :deadbanana:

Ideally I think it should work like this:

Power on / connecting a host like a pc / or external host module:
Host module sends out "go ahead" message to first module on bus (this is like a CS pin) Module one says hi i'm <string modulename>, I have x parameters of types <array parametertypes> and they're called <array parameternames>, when it's finished it tells the next module to go ahead and introduce itself until the last module is reached and it has a termination connector on the bus connector so it send out all done message.

Preset save: Host sends out a similar command as when connecting/powering up and the slaves sequentiella return their parameter values.

Recall/Mutate etc: Host sends out adressed packets with parameters, all the slaves get them but only the ones the packets are for react to them obiously.


This could become an incredibly powerful open technology!

I've pondering the ins and outs of this bus for endless hours trying to fall asleep :lol: I think it should extend to all formats and DIY endevours really. I would, if more people are interested, like to form an interest group that would co-develop this tech with manufacturers. I myself plan to start making modules and would really like to have this laid out and approved by multiple interested parties as soon as possible.

It needs to be a community developed protocol and an open one that anyone can use. This is also a reason for the host idea, there's no telling what cool hosts that could be implemented, perhaps they could react to what type of module they're sending out random values to and conform them to a table that works well for that module?

The possibilities are endless!
Nicely thought out! But what should be included? Knob positions and connections I would say. So we need all ins and outs duplicated so the presets can work.
And what about knob positions? I would say if you load a preset, current actual knob positions are ignored and the preset knob position is used. however if you move any knob that is included in the preset, the current setting is overwritten and replaced by the actual knob position.

Okay really cool to think about but as graham pointed out, this would be a freaking LOT of work on every single damn module. digital encoders, duplicated inouts and everything...
however I find this to be interesting and visionary and if i could code I would definately offer my soul to the workgroup!
Nelson Baboon wrote:Beware of people who tell you to smile.
WTB (EU): Mungo d0, c1
User avatar
neil.johnson
Super Deluxe Wiggler
Posts: 1961
Joined: Thu Apr 08, 2010 3:51 pm
Location: Cambridge, UK
Contact:

Post by neil.johnson »

Veqtor wrote:...
So you're trying to reinvent Open Sound Control?
Random ramblings :: http://www.njohnson.co.uk
SSI parts and more :: https://www.cesyg.co.uk
Post Reply

Return to “1U & 3U Eurorack Modules”