I’ve spend most of yesterday and all of today trying to get closer to my teletype/301/i2c problem (sometimes some i2c triggers are delayed exactly one M cycle), I’m still hoping to produce a teletype scene + an er301 quick save that will trigger the problem, but it’s hard, since it seems it takes some unknown ingredient to trigger the problem.
Anyways, the strange experience was:
Yesterday while working on a track, the problem appeared, and I decided not to reboot (which is what I tend to do since it always fixes the problem and I’m in the middle of trying to make music). I poked around with the two modules for about two hours and found that sending to to all SC.TR with “L 1 99: SC.TR.P I 0” after every metro cycle made the timing correct again. Removing the line and it was all bonkers. I also noticed that while in the bonkers state, and looking at the scope, all triggers (SC.TR.P x from teletype) on the 301 showed up as just a spike (so extremely short, I assume 1 ms or less) and also that it wasn’t possible to adjust the length with SC.TR.TIME 1 20 (or similar). TO.TR worked just fine.
I looked at the teletype firmware, and although I don’t understand everything, it seems like SC opcodes are simply copies of (a small subset of) the TO opcodes, at least I don’t see anything odd there.
@odevices Any chance you could take a look at the i2c implementation in the 301 for me? Does this strange behavior ring a bell with you? Anything I can do to help (I’m still working on reproducing the problem reliably)???