S1 Idle state
S2 Init transfer in MASTER mode, send "I2C command" byte
S3 Send "transfer address" low byte
S4 Send "transfer address" high byte
S5 Send "byte count" byte
S6 Send block ("byte count" number of bytes, see S5)
S7 Receive block ("byte count" number of bytes, see S5)
S8 Finish transfer (set I2C stop condition)
S9 Init transfer in SLAVE mode, receive "I2C command" byte
S10 Receive "transfer address" low byte
S11 Receive "transfer address" high byte
S12 Receive "byte count" byte
S13 Receive block ("byte count" number of bytes, see S12)
S14 Send block ("byte count" number of bytes, see S12)
S15 Finish transfer (wait for I2C stop condition)