when i asked tehn about it he said ansible/trilogy don’t have pull-ups. also, the older revision of teletype has the internal pull-ups disabled in the latest firmware versions.
uh, you sure? because the older hardware looks like it has discrete pull-up resistors: https://llllllll.co/t/ii-bus-board-v2-with-pullups/6777
ah didn’t realize there were additional pull-ups on the board. i meant the internal pull-ups on AT32UC3B itself.
I’ve just tested the 16nFaderbank in Master mode with my ER-301 and it works. You will have to modify the address in the code though. It’s not 0xB0 but 0x31 or 0x32 or 0x33. (issue created on Github)
// ER-301 sendi2c(0x31, 0, 0x11, q, notShiftyTemp);
The slave mode (for Teletype) doesn’t work for me at the moment but I hope it will be fixed soon.
Edit: Slave mode also fixed. I had the feeling it could be an issue related to the address as well.
According to https://github.com/monome/libavr32/blob/master/src/ii.h the address is 0x34 and not 0x80.
#else Wire.begin(I2C_SLAVE, 0x34, I2C_PINS_18_19, I2C_PULLUP_EXT, 400000); Wire.onReceive(i2cWrite); Wire.onRequest(i2cReadRequest);
Is there any functional difference between master and slave mode?
If I wanted TT, ER-301, TXo, and 16n on the same bus, what’s the recommended configuration?
I’m not a specialist and I had to dive into the code before finding the cause of the issue (spent three days testing different hardware configurations etc) but from what I heard it’s complicated to have two Masters on the same I2C bus. The recommended configuration for this kind of setup is to keep the faderbank in Slave mode and to let the Teletype be the master and dispatch info to the slave devices on the bus. You just need to set a Metro script to trigger a script that will read the state of the faders and transmit this info to SC.CV
- correct me if I’m wrong
Cool, that confirms my own understanding. Thanks for all your hard debugging work!
FWIW, I tested the I2C with a 1m long TRS cable and it works.
Configuration: 16nfaderbank connected to a series of two TXO+ The TXo are connected to the Teletype via a TT busboard. 1m is bit too long but I had to test this…
On the Teletype, I used this code to read the status of the faders:
I: M 25
L 1 16: SC.CV I FB I
I tried M! 5 but it -kind of- blocks the TT. 25ms is enough for a fluid/smooth transition.
Question on a ER301-Teletype-Faderbank setup - is something like the TELEXb the most practical way of connecting both an ER301 and Faderbank to the Teletype or could you connect the er301 to the 3 SDA/SCL/GRD pins on the back of the TT and make a TRS cable to connect to the other 3 SDA/SCL/GRD pins on the TT instead?
Also in this setup would you need a dedicated script in the TT to pass faderbank messages to the ER301 to control 301 parameters? Or can the faderbank messages be sent direct to the 301?
A related question - could a message on the faderbank be sent to a parameter in the er301 as well as being read by a TT script?
(Sorry if these are dumb questions )
Either way would work. If you use the TXb and a Teletype on the same I2C bus, do not power the TXb.
EDIT: Which vintage of Teletype hardware do you have? ie is the PCB black?
The Teletype would need to pass values along to the ER-301 via a script. Early tests show this is stable down to ~50 ms rate. And yes, those values can be used in multiple scripts. Not stupid questions at all, but I’d encourage you to come over to Lines since it sounds like you’re a bit new to TT scripting.
If you want the 16n to send commands directly to ER-301, the 16n will need to be in master mode. The I2C bus can handle this even with TT attached, but you will likely crash TT if you use its I2C OPs simultaneously with the 16n. Not recommended. Better to use the TT as go-between if you have one.
As a bonus to passing the values through the TT, it would be VERY easy to make multiple “pages” of faders where each page sends 16 independent values to the ER-301. The trigger for switching pages could be a gate input (I’m going to try a footswitch) or a monome grid selection. Heck, I bet you could even code a “soft pickup” feature so your values don’t jump unless you move a fader.
I’m on the cusp of ordering a TT
Just trying to get a handle on what is and is not possible. For the latest version of the TT is there any further consideration with respect to connecting both the ER301 & fader bank?
Great, yes assuming I go for a TT then I’ll have to do my homework over on Lines
WOW!!! That is neat!
Thanks ever so much for the info!
Finished two 16ns yesterday and hooked them up to Teletype + ER-301 via I2C today for the first time. It’s really cool to have controls for so many parameters at once in front of you. Can’t recommend this thing enough. Definitely opens up the whole teletype ecosystem a lot.
How did you make the connection between the 16n and the Teletype?
I currently use a ridiculously improvised cable.
I’ve got everything on the way for a 2hp stereojack -> i2c header module of my own, but it’ll be a few days until the parts are here and today all the stores were closed, so I used what was available
There’s less concern with the newer TT hardware since it is configured correctly for hosting multiple I2C devices. In other words, no powered adapters would be needed for the I2C bus. The older hardware requires a powered I2C backpack or equivalent.
I must apologize in advance for not been able to understand exactly what I need,
I have a pre 2018 ER that is running on the 5v mode
From what I understand is I will have to do the mod to the board and just follow the guide to get the right connector out of the ER that part is clear to me, where Im confused is do I need to ask Raph over at Michigan SW to ad the pull up resistors? I only want to use the 16n to control the ER will probably never get a TT I do want to probably use a 2hp panel and create a jack that will go to the back of the ER so my question is, in my scrnario do I need to as Raph to place the pull up resistors and if I do what are the specs for them? In advance many thanks!!
[Presuming no TXb or equivalent powered I2C bus device]
Yes, you’d want the pull-ups on the 16n board, and you’d want the 16n firmware configured for I2C master. There is a simple flag to set in the code. The value of the pull-ups should be about 2.2kOhm each.
Thanks man! You rock!! Messaging Raph ASAP
Any chance you can share what kind and were you got the i2c cable
Edit 1: I just realized the request was for probably a TRS to ribbon cable. It looks like @x2mirko soldered a TRS minijack to a Female Ribbon, used a male to male adapter, and then to one of the cables i listed below.
You do not need anything fancy, something like this works fine (and does with my TT and ER301):
Peel off 3 at a time for the connection, make sure they are aligned at both ends. I didn’t search too hard, maybe you can find them for the length you require and possibly even cheaper?