How many devices can be operated on the same bus?
32 devices can be discriminated by means of the physical address. However, it depends on some factors if this high number really makes sense. First of all it has to be checked if each device can be serviced under any circumstances in the maximum allowed time taking the bus speed and the individual real-time requirements of each device into account. Second, the idea of reserving address 0 for OTP physical address programming during systeminstallation and defective parts replacement reduces the number to 30. Third, the TMC211 has faster and slower types of the GetActualPos, GetStatus and SetPosition commands. The faster types of course can satisfy harder real-time requirements but can only be addressed to 8 different physical devices.

How to program the OTP physical address bits of a device if there are more devices
The problem here is that all new devices are shipped with the OTP physical address bits setto zero making it difficult to address just one device with the SetOTP command. Use HW input as chip select line to be able to address just one device bySetOTP. If this is impractible since the HW inputs are hardwired ornot controllable for any other reason the only alternative is to assemble and program one deviceafter the other. I.e., assemble only first device and program the desired non-zero address, thenassemble the second device and program the desired non-zero address, and so on until alldevices are assembled and programmed. This is also a good service concept when replacingdefective devices in the field: The idea is that all devices are programmed to different non-zerophysical addresses at production/installation time. Once a defective device is being replaced thereplacement part can easily be addressed by SetOTP since it is the only part with physicaladdress zero.

May I draw a small amount of current from the devices VDD-pin in order to supply an external component?
Yes, up to 10 mA can be drawn from the VDD pin.

Is it possible to connect the pullup-resistors required for SDA and SCL to the devices VDD-pin?
Yes, it is. However, the total current drawn from the VDD-pin by external components mustnot exceed 10 mA. I.e., each of the two pullup-resistors must have a minimum resistance of1 KOhm.

If the power-supply VBAT is 24V, may I still use 16V capacitors for VCP, CPN-CPP?
Yes, you can.

What is the maximum series-resistance allowable between SWI and an external switch to GND?
Maximum 2 KOhm for ON state, minimum 10 KOhm for OFF state.

How to interface the TMC222 SDA and SCL lines to a 3.3V system?

There are different solutions depending on the maximum SCL clock frequency and the actualsupply voltage:

  1. SCL clock frequency <= 100 KHz: TMC222 SDA and SCL high level input voltages must be atleast 3.0V for this frequency range. Pullup-resistors from SCL and SDA to the system?s 3.3Vsupply voltage are sufficient.
  2. SCL clock frequency > 100 KHz: TMC222 SDA and SCL high level input voltages must be atleast 3.5V for this frequency range. Many 3.3V systems are allowed to run at up to 3.6V. If 3.6Vcan be guaranteed as the system?s power supply voltage pullup-resistors from SDA and SCL tothe system?s 3.6V supply voltage are sufficient.
  3. If solutions 1 and 2 are not possible: Some kind of level shifting is required. One way is toinsert non-inverting open-collector TTL buffers as contained in the 7407 device into the SDA andSCL lines. The 7407 needs 5V supply voltage and has 3.3V compliant I/Os since the inputs haveTTL voltage thresholds (2V min. high level) and the outputs have open collectors.
    • Insert two '07 buffers connected anti-parallel between the SDA pin of the TMC222 and the SDA line of the 3.3V side.
    • Connect a pullup-resistor to the SDA line at the 3.3V side
    • Connect another pullup-resistor to the SDA line at the 5V (TMC222) side.
    • Do the same for the SCL line. Four '07 buffers are required altogether, i.e. only one single 7407 device is needed.

What is the meaning of ElDef?
The ElDef flag ("Electrical Defect") is the logical ORing of the OVC1 and OVC2 flags. OVC1 isset to one in case of an overcurrent (coil short) or open load condition (selected coil current is not reached) for coil 1. OVC2 is the equivalent for coil 2.