Teletype and Sweet Sixteen I2c


So im testing my teletype with @M4ngu great Sweet Sixteen and im having some kind of issue.

With all faders set to unipolar ( range 0 to 8196) when i type:

FADER 1 (to 8) i get reading from 0 to 8196

but when i type:

FADER 9 (to 16) i get reading from 0 to 16380

Any ideas what do i need to change in the code?

Id have a looked into it with arduino and have changed the tx helper files, so the sweet sixteen behaves like a 16n:

// initialize the basic values for the TXi
int TxHelper::Ports = 8;
int TxHelper::Modes = 3;
bool TxHelper::W0 = true;


// initialize the basic values for the TXi
int TxHelper::Ports = 16;
int TxHelper::Modes = 4;
bool TxHelper::W0 = true;

If i change this value communication breaks between the two devices, and it doesnt work at all.

In fact it doesnt work on any cased if i upload from arduino.

Im using serial + midi, since if i only use serial i get compile errors since the module can output midi and there are arguments that define it inside the ino file.

The one that has communication but with messed up ranges is this hex that i load into the teensy directly:

Any one run into similar problems or have any ideas on what to modify??

Much appreciated!

just found a mistake in my version of the firmware, will fix it


Gracias @M4ngu! saludos

1 Like

I’m having the same issue when using the provided hex file. Any update on the fix @M4ngu ?

I’m also not able to compile the firmware in Follower mode, because of variables that are only declared #ifdef MASTER.

Arduino: 1.8.12 (Mac OS X), TD: 1.51, Board: "Teensy 3.2 / 3.1, MIDI, 96 MHz (overclock), Faster, US English"

_16n_faderbank_firmware_Sweet: In function 'void doMidiWrite()':
_16n_faderbank_firmware_Sweet:270: error: 'lastValue' was not declared in this scope
       if (notShiftyTemp != lastValue[q])
'lastValue' was not declared in this scope

will fix it and upload the new version to Github this weekend


@M4ngu just following up… any update on this fix?


If someone use your teletype with sweet sixteen, what are the command for control the sweet sixteen from teletype ?



The only relevant Teletype operations are FB 1 through FB 16 to read the value of each fader. If you have multiple faderbank devices and can adjust their I2C addresses, you can use FB 17 through FB 64 to access up to three more devices.

1 Like

Ok so no chance to read the input of sweet sixteen…
Thank you a lot @desolationjones for your help :blush:

Oh I apologize for the misunderstanding, but those inputs are attenuated by the faders and that signal becomes the fader value. So you CAN read the inputs.

1 Like

Ok perfect. Sorry, I was not enough explicit.
Thank you @desolationjones.
By the way it’s not possible to have a «continuous readings » of the value input from the SS for sending it to a, for example, ER301 modulation.
So, the solution can maybe is, to read it in the Metro script with a high speed metro ?
Am I right ?

Correct. Here’s the simplest metro script for sending all 16 values to ER-301:

L 1 16: SC.CV I FB I

I have had good success with metro rates as fast as M 25 (fastest allowed normally) but you might have luck with even faster rates using the experimental M! OP instead. This can take you as fast as M! 2 but I guarantee you will not have stable operation below 20 mS.

1 Like

WoW perfect. Thank you @desolationjones for the command. I will test it this night.
Wonderful :+1:

@M4ngu any update on fixing this?

I’m actually working on it, but I’m getting really weird issues. Sorry for this brutal delay btw


Just uploaded a new version to GitHub, the new one can be compiled without the #master thing, also values on the i2c won’t have any offset if pitch bend is selected as a midi controller. The code is a little cleaner too. I’m actually having an issue: when the #master is active I get no midi (at least in the trs out) but it has to be something from my computer/compiler/libraries or whatever, because I get the same issue with other 16n firmware versions, which are not modified by me at all.
Let me know if it works.


(I’m looking into the TRS midi / master issue over on the main branch this weekend)

1 Like

Hi again.
I have plug the sweet sixteen to the teletype for the first time and I try to read the value from SSixteen with FB 1, FB 2 etc… but there is nothing. Only the value 0.
When I plug the SSixteen to my ER301 it communicate but with teletype I have nothing.
Please is there something to configure ?

It’s strange because the values are transmitted to the TXo (the Leds bright on TXo) but I find nothing on the Teletype

The communication with ER-301 requires master mode (aka ‘leader’ in the new firmware) & i2C pull-up. For Teletype the Sweet has to be in ‘follower’ mode (no master) and without the pull-up (Teletype has its own). It’s all described in the 16n user guide: