I2C communication with Monome Teletype

It was indeed as worse as imagined, and as such I am the protagonist of the thread’s cautionary tale, midst all the talk of successes!

A word of advice to all you young turks like me who think “I’ve done a bit of welding, a bit of angle grinding, a bit of ploughing…how hard can it be?” Solder suckers and surface mount boards do not mix! :blush: :astonished:

I must again heap praise upon Mr Clarkson for his, yet again, exemplary customer service. Yesterday my new board arrived (the prior having rather brutally had a diode and attached circuit board pads sucked off in the course of the above mentioned injudicious solder sucker application) replete with diode mod performed by Brian prior to sending it out.

I now see what the fuss was about! Incredible breadth of possibility with the communication between the two modules.

Thanks again to @odevices for going above and beyond the call of manufacturer’s duty.

10 Likes

After hearing your (mis) adventures, I’ve decided to put away my soldering iron and try to enlist help. Anyone in the nyc area down to perform this mod for me? Pm me with your info and we will work something out. :heart:

1 Like

There is the potential that I am just particularly inept :grin: There’s plenty of folks who’ve had no such issues, but if you’re in an urban area where there’s solderers of experience about…

1 Like

6 modules on the i2c bus!

9 Likes

Whoa! Crazy cool!

1 Like

7 posts were merged into an existing topic: Thread To Break The Forum Silence

Where can I find this most recent ER-301 firmware for Teletype integration?

may i help?

i believe that since version 0.3.06 teletype is on board of all firmware iterations:

v0.3.06 CHANGES

NEW UNIT: Slew Limiter, 3ms to 786s.
ENHANCED: -10V to 10V are now mapped to -1 to 1 (previously -10.24V to 10.24V was mapped to -1 to 1).
ENHANCED: Teletype support added.

the latest firmware is

and should have teletype, too.

you can find it here:

2 Likes

thanks!

I’ve already asked, but what is the bandwidth of the i2c bus? Or is it such that no matter how many things you link, you’ll never come close to saturating it?

2d

The Teletype currently sets the bus speed at 100k in its source code. I believe that its processor might support up to 400k, but this is untested.

Here are some nice speed details from the Teensy i2c library page:

https://forum.pjrc.com/threads/21680-New-I2C-library-for-Teensy3

Note that at high speeds the specified clock is not necessarily equivalent to actual SCL clock speeds. The peripheral limits the actual SCL speeds to well below the theoretical speeds (both in terms of actual bit clock frequency and throughput rates).

I should note that the protocol is very lean. A command without value is three bytes; with value it is five. I’ve beat the hell out of it and have found no throughput-related problems.

Hope this answers your question! :slight_smile:

6 Likes

It took me a little while to figure out :blush: but Rate here refers to the i2c clock in kHz, i.e. Rate=2400 means 2.4MHz i2c clock. For the Teletype currently, we are interested only in the Rate=100 row. So the transfer speed is 10469 bytes/s which is close to theoretical 100kHz/8bits = 12500bytes/s. :nerd_face:

If the average message size is 4 bytes then that is about 2500 messages per second. Since I don’t think you can trigger a Teletype script to execute faster than 100Hz, it follows that the i2c layer is not a bottleneck for typical scripts.

9 Likes

Thanks for the deeper dive into that chart, @odevices; it was designed for Teensy processors but it gets us in the ballpark.

The thing that I should point out is that the “quality” of the bus also makes a difference (which is influenced by its topology - the devices, cabling, and pull-up resistance). Also, the reactiveness of the target devices also has a direct influence. Finally, I didn’t mention that i2c reads (like what the Teletype does with Ansible and the TXo) use a total of around seven bytes and have a bit more handshaking involved.

2 Likes

I2C reads from ER-301 could be very interesting…

1 Like

Oh no, not a bottleneck at all. Why I was even asking at all was because david-rothbaum was talking about having 6 modules connected via the i2c bus instead of just 1 (er… 2).

Interesting and thanks for breaking it down. I really could have just looked it up, but I figured someone here more familiar would already know.

Thanks again!

2d

I’ve had enough requests for help with cables for connecting the ER-301 via i2c and in the 2HP busboard/expander (TXb) that I’ve been prototyping that I figured it would make sense to mention here that I’ve put “interest check” pages up at my web store (https://store.bpcmusic.com/) for pre-made cables and the expander module. There are also a few other cool things up there now as well (including a 2HP remix of the open source, amazing fixed panner/mixer “nearness” called the TXn). Prices will be subject to change based on interest.

If this is inappropriate to mention here, please moderate this post to oblivion.

4 Likes

100% appropriate as far as I am concerned, and I doubt anyone will mind at all!

The only person who can give 100% blessing though is @odevices

Sure it will be fine though!

Registered :slight_smile:

1 Like

new mannequins w/ is i2c equipped :slight_smile: having wet dreams of 301-w/ dialogues :smiley:

2 Likes

I do too but I doubt they’ll speak to each other anytime soon since the ER-301 is an i2c receiver only at the moment (i2c specs on the w/ are not known at the moment AFAIK)

1 Like