This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MCT8329A: Multiple devices on one bus, with minimal GPIO

Part Number: MCT8329A

Tool/software:

Hi, I've recently developed a test board for the MCT8329 and have been very impressed with it's performance. However, I wish to use six on one bus with the bare mini of GPIO needed. I intend to use PWM to control them though, not I2C.

The main issue is that all driver have the same address, making them clash on the bus. Board space will not allow a multiplexer. I also would rather avoid a programming jig, for both cost and complexity reasons. Allowing easy modification to motor settings is also a bonus.

I noticed the drivers have a SLEEP/SHUTDOWN mode, or something to that effect. On this mode, no signal on the speed pin will cause the driver to shut down the I2c bus. However, this is not the default mode- an I2C write is needed to turn it on.

Here is my proposal: write at address 0x01 the command to enable this mode (to all devices). Set all speed lines to zero. Scan the bus for addresses- if 0x01 shows up, repeat setting 0x01 to shutdown mode. Repeat until the bus is empty.

Now, wake the chips one by one to program address. Is this viable? No response would be expected from the chips, and in the event of a nack/failure we should be able to detect it when a chip stays online. Are there any flaws here? In theory, this should let 8 pins fully control 6 motors.

Thanks for your time, I look forward to working further with your hardware!