Two-Wire Interface

The Home Micro uses a two-wire interface to communicate with cartridges. The same bus can also be used to communicate with peripherals. The protocol used on this bus is a limited form of I2C, where:

  1. Arbitrage is not supported. The computer is always bus master.
  2. Clock stretching is not supported. Only the computer can drive the SCL line.

In general, a device that supports I2C fast mode, does not attempt to become bus master, and does not stretch the clock should be compatible with the Home Micro's TWI.

The protocol has the following timing and electrical specifications. These are believed to be compatible with I2C at 400kHz fast mode. In some cases, the Home Micro TWI protocol provides for longer timings than I2C requires, allowing devices more time to respond.

Symbol Parameter Min Max Unit
VL Low input voltage -0.5 1.5 V
VH High input voltage 3.5 5.5 V
RPU Pull-up resistor value 950 1050 ohm
tHD;STA Start hold time 8.0* - us
tLOW Low period of SCL 1.3 - us
tHIGH High period of SCL 0.6 - us
tTH;DAT Data hold time 0 - us
tSU;DAT Data setup time 100 - ns
tr Rise time (for SCL and SDA)      
  @ capacitance <= 250pF - 300 ns
  @ capacitance <= 400pF - 500* ns
tf Fall time (for SCL and SDA) - 300 ns
tSU;STO Setup time for stop condition 4.0* - us
tBUF Time between stop and start 4.7* - us
Cb Bus capacitance - 400 pF
TVD;DAT Data valid time - 0.9 us
TVD;ACK Data valid acknowledge time - 0.9 us

* Value is longer than specified for 400kHz I2C.