# How long does a I²C message transmission take? Online calculator

Enter the number of data bytes to be transmitted (excluding the start byte containing the slave address & RW bit).

[to-calculator-info][/to-calculator-info][calculator] [calculator-input name=“databytes” label=“number of bytes to be transmitted” unit=“bytes”][/calculator-input][calculator-expression name=“nbits” formula="(databytes + 1)*9" unit=“bytes”][calculator-expression name=“sz100k” formula=“nbits/100e3” unit=“s”][calculator-expression name=“sz400k” formula=“nbits/400e3” unit=“s”][calculator-expression name=“sz1M” formula=“nbits/1e6” unit=“s”] [calculator-output name=“transmission time” unit=“seconds”]Transmitting an I²C message containing <%= format(databytes, “bytes”) %> of data will be transmitted as <%= format(nbits, “bits”) %> and take:<%= format(sz100k, “s”) %> at 100 kbit/s (I²C normal speed)<%= format(sz400k, “s”) %> at 400 kbit/s (I²C Fast Mode)<%= format(sz1M, “s”) %> at 1 Mbit/s (I²C Fast Mode Plus) [/calculator-output]

[/calculator][latex display=“true”]N_{\text{bits}} = (N_{\text{bytes}} + 1) \cdot 9[/latex][latex display=“true”]\Delta T_{\text{transmission}} = N_{\text{bits}} / \text{bitrate}[/latex]