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: EEPROM Writing issue

Part Number: MCT8329A
Other Parts Discussed in Thread: MCT8329EVM,

Hi all,


I am using MCT8329EVM for testing. I have constant issue with writing EEPROM using the GUI provide (all version V1.0.0, V1.1.0, V1.1.1)

I often have issues that the EEPROM is not written after hit "WRITE TO EEPROM" even the GUI prompted the "EEPROM write_cmd successful". 




I am sure the driver is connected properly through I2C as I was able to tune the driver and set the register, and confirm that the motor behaved as set. 

According to the datasheet: 
MCT8329A allows EEPROM write and read operations only when the motor is not spinning.

So I am sure about this as well.

Other board setting:

-Dirver is on brake mode 
- BrakePin - Low
- Speed/wake pin - 1V -> using this pin to set analog speed
- DRVOFF - Low



The procedure I followed:

- Make sure the I2C works and the GUI and connect properly by changing a couple setting and run the motor

- Load saved EEPROM

- click " write to EEPROM"

- disconnect USB

- power cycle the board

- plug the USB 

- hit "read register" -> and find the EEPROM was not written since the setting is not the one with saved EEPROM 


Not sure if anyone has seen the same issue.
As we have purchased 3 EVM and design one custom board, and all have the same issue

  • Hi Hung-Chen,

    Sorry that you've ran into problem when writing the MCT8329 EEPROM.

    Unfortunately, I was not able to recreate this issue in GUI v1.1.1 and v1.1.2 and was able to successfully write the ISD_CONFIG register to different values in EEPROM (persists through power cycle).

    Could you please provide the register.json config file that you are trying to write to the device EEPROM so that I could try to recreate this on my side? Thanks!

    Best Regards,
    Eric C.

  • Hi Hung-Chen,

    Re-reading your post, I just noticed that you mentioned "Driver is on brake mode". Since your brake pin is low, I assume you've set the PIN_CONFIG1.BRAKE_INPUT register to 0x1.

    This puts the device algorithm state into MOTOR_BRAKE, which actually also prevents the EEPROM from being written. I believe the wording in the datasheet needs to be updated to clarify that the EEPROM can only be written when the motor is not being driven.

    Please try setting setting the BRAKE_INPUT to 0x0, or 0x2 (motor status becomes MOTOR_IDLE), then write to EEPROM registers again.

    Regards,
    Eric C.

  • Hi Eric,

    Thank you for your support. 

    Putting the driver in IDLE_MODE works. 
    Please update the datasheet to specify that the driver has to be in idle mode to be programmed. 


    Sorry for the confusion on my original post. The brake pin was input high that make the driver on brake mode.

  • Hi Hung-Chen,

    Thanks for the confirmation. We will update the datasheet to clarify this.

    Regards,
    Eric C.