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.

Fault LED 06 glows on non-functional DRV8301-69M-KIT

Other Parts Discussed in Thread: DRV8301

My DRV8301-69M-KIT recently stopped working.  Whenever GUI Composer or one of the Lab assignments starts stimulating the Piccolo to generate PWM signals to the DRV8301 / MOSFETs, the FAULT LED (06) starts glowing.  The  Fault LED starts glowing immediately after the EnableSys and RunFlagIdentify flags are set in the CCS debugger's watch window.  When the RunFlagIdentify flag clears, the Fault LED stops glowing.

The same symptoms occur when operating GUI Composer.

Either way, the motor never turns.  Nor do the motor parameter estimations get valid values.

According to the schematic, the Fault LED is activated by the FAULT output on the DRV8301.

After reading the DRV8301's datasheet, I noticed the registers associated with the DRV8301's status are accessible via the Piccolo's SPI interface.  

Using the watch window, I was able to inspect the SPI status structures associated with the DRV8301.  Unfortunately, all status bit are '0', with the exception of DeviceID.

If the Fault LED is lighting up as a result of the DRV8301's FAULT pin going low, why aren't there any flags in the SPI Status structure indicating what's causing the problem?

  • Hi Edward,

    • When are you inspecting the DRVs registers? The FAULT bits are not latched and will only assert during the condition. 
    • Are you performing a read to update the status structure?
    • Does the FAULT occur even without a motor attached?
    • Did the board operate normally before? You implied the board recently stopped working, perhaps some damage occured.

     

  • The board operated fine before.  I have been tuning the Ls, flux and Rs values up until two days ago.

    The FAULT LED glowed when a motor was attached.  I have not tried to disconnect the motor.  That may be a logical next step.

    The DRV8301 status structure is located in the CCS Watch window.  The Watch window has been in continuous  refresh mode.

    According to the DRV8301 datasheet, some of the errors are latched.  The flags are all zero, with the exception of the DeviceID flag.  The flags are zeroes while the Fault LED is glowing.

    Thanks for your help!

  • Hi Edward,

    I would try with no load.

    There is a global variable in the structure that signals for the SPI to perform a read. I can't remember the name of it at the moment. You need to change it to "1" and then the SPI will actually go and read from the DRV8301. The value you are reading now are just from the initial SPI read when the project starts I believe.

  • I have disconnected the motor from the three-phase output of the DRV8301-69M-KIT.  The Fault LED still glows.

  • I issued a SndCmd and RcvCmd sequence (see gDrvSpi8301Vars); this updated Stat_Reg_1.  

    The FAULT element in this status structure was updated with 1024 and the GVDD_UV element was updated with 512.

    The GVDD_UV element indicates a GVDD undervoltage.   I don't know why this condition is occurring; maybe the DRV8301 is no longer functioning as it should.

  • Since the GVDD_UV element reads  512 (bit 9 in the DRV8301 status structure), the status indicates a Gate Driver Under-voltage condition.  

    Today, I measured the voltage of the GVDD pin while the FAULT LED was glowing; the voltage read ~12Vdc.  This is in the range of 8-16Vdc, which should not cause an under-voltage condition.  

    Morover, Avdd measures 6Vdc, PVDD measures 49Vdc and DVDD reads 3.3Vdc.  These voltages are all within their normal ranges, so I don't know why the FAULT pin is active.

    I have been suspicious of driving a larger PMSM (125A continuous at 96V, 300A at 96V for 1 minute maximum) with the DRV8301-69M-KIT, but the motor operates just fine at lower voltages (49Vdc) and currents (10A).

  • Edward,

    It is possible that damage has occured to the device then.

    The DRV8301 has an Abs. Max supply voltage range of 70V. This would definitely cause issues if the device was exposed to voltages beyond this level.

  • The DC power supply is only rated to 49Vdc. 

    Is it your impression the DRV8301 is damaged?

  • Edward Jakob said:

    I have been suspicious of driving a larger PMSM (125A continuous at 96V, 300A at 96V for 1 minute maximum) with the DRV8301-69M-KIT, but the motor operates just fine at lower voltages (49Vdc) and currents (10A).

    What is the Bemf of this motor?  Is it possible that at 49V/10A it generated enough Bemf to over voltage the caps / DRV8301?

     

  • I've never measured the BEMF of this motor.  I spun the motor at 5000 RPM using GUI Composer, but it never went that fast while tuning the motor parameters in Lab 2a and later.

    Is the BEMF obtainable in some other manner?

  • It looks like you used InstaSPIN-FOC or MOTION.

    What is the FLUX value that was identified?

    I doubt this is an issue since you say it's only a 96V motor. It should have a flux somewhere around 96V / maximum Hz, which means you would have to run the motor to over half of full speed to produce a large enough Bemf.

    If you are using a motor designed for 400V and 1 KHz, that will have a flux of ~ 400 / 1000 = 0.4 V/Hz

    If you somehow ran that motor on 48V, it would only take 60 V / 0.4 V/Hz = 150 Hz (15% of rated sped) for the motor to produce enough Bemf to blow the DRV8301 EVM.

     

  • The flux values measured using GUI Composer and the Labs are 0.05987-0.0629 V/Hz.  I have seen larger values as high as 0.15729 V/Hz, however.

  • you would have to run at close to 1000 Hz for this to be a problem...so, I doubt this is what caused the damage, but it does seem like you have injured HW.

    I have personally damaged several DRV8301 EVMs, always due to over voltage. 

  • It sounds like someone else is having a similar problem.  It's in another message thread:

    http://e2e.ti.com/support/microcontrollers/c2000/f/902/t/330630.aspx

    His solution was to replace the DRV8301 chip.  In my case, this is a huge undertaking.  Is it possible to simply disconnect the FAULT pin from the board?

  • the FAULT LED is on likely because the DRV8301 is damaged. You can get rid of the LED, but the problem will remain.  I would think replacement (of the device or whole EVM) is in order.

     

  • The FAULT signal not only causes the LED 06 to glow, but it also asserts a Trip Zone (TZ) input on the Piccolo.  If the Fault signal were not logically ORed with other signals that might assert the TZ signal, the PWM s would continue to operate.  

    If the FAULT pin were lifted from the board, the Piccolo's PWM signals would continue to operate.  Is this safe to do?  I have to do a little more investigation.

    It might also be possible to software-configure the TZ input to ignore the FAULT signal, but this could prove dangerous.

  • Hi Edward,

    You can remove the FAULT signal (from the DRV8301) if you wish the Piccolo to continue sending signals to the DRV8301 but the DRV8301 may not respond if damage has occured. The only solution then is to replace the DRV8301 or obtain a new board as Chris mentioned.

    A few checks would be to.

    • Appply power, read STATUS registers (EN_GATE = LOW, no load)
    • Enable EN_GATE, read STATUS registers (no load)
    • Switch each half bridge manually and read STATUS registers.

    You mentioned that the GVDD UVLO fault is reporting. Please measure the GVDD voltage when the FAULT is asserted.

    You can order DRV8301 samples from ti.com and with a hot air gun and solder paste it is possible to replace the chip without to much difficulty. I would try and determine what caused the damage in the first place in order to not have a repeat of the same event.

  • Hi Nick,

    Surprisingly, the GVDD pin was delivering ~12Vdc when the FAULT signal was asserted and the SPI Status register 1 asserted the FAULT and GVDD_UV flags.

    I'll have another look at it tonight.  I'll also look into software-deactivating the pertinent TZ input.

    Thank you,

    Ed

  • I cleared bit 2 in the TXSEL registers associated with ePWM1, 2 & 3.  It now ignores the FAULT signal generated by the DRV8301.  Unfortunately, when Enable_Sys and Run_Identify are set to 1, the system crashes.

    I guess the next logical step is to replace the DRV8301.