DA14706 - V18 (Pin#K2) Voltage Suppressed Under Load

Hello,

I am facing issue in DA14706 SoC that has been used in my design for BLE operations as well as to run low current applications from the output supply that DA14706 offers.

I am able to get proper output voltages as mentioned in the datasheet. However, I am unable to load even 1mA current from V18 that has been generated through pin K2. For my application i want to draw maximum 50mA from this output voltage.

In the EVK also, i found that the daughterboard only gives 0.2VDC output on this particular K2 Pin.

Any help in this would be highly appreciated.

Thanks in advance.

Parents
  • Hi Mohak,

    Apologies for the delay.
    Please refer on the hw_pmu_da1470x.h file. You can find the following for the V18 power rail.

    /***************************************** V18 ***************************************************/
    
    /**
     * \brief Voltage level options for the 1V8 power rail
     *
     */
    typedef enum {
            HW_PMU_1V8_VOLTAGE_1V2 = 0,     //!< 1.2V
            HW_PMU_1V8_VOLTAGE_1V8 = 1      //!< 1.8V
    } HW_PMU_1V8_VOLTAGE;
    
    
    /**
     * \brief Maximum load current options for the 1V8 power rail
     *
     */
    typedef enum {
            HW_PMU_1V8_MAX_LOAD_100 = 0     //!< 100mA
    } HW_PMU_1V8_MAX_LOAD;
    
    
    /**
     * \brief 1V8 power rail configuration
     *
     */
    typedef struct {
            HW_PMU_1V8_VOLTAGE voltage;
            HW_PMU_1V8_MAX_LOAD current;
            HW_PMU_SRC_TYPE src_type;
    } HW_PMU_1V8_RAIL_CONFIG;
    
    /***************************************** V18 ***************************************************/
    
    /**
     * \brief Set the voltage level of 1V8 rail
     *
     * This function sets the voltage level of the 1V8 rail, applicable both for wakeup / active
     * and sleep state.
     *
     * \param[in] voltage The voltage of the rail
     *
     * \return Returns HW_PMU_ERROR_NOERROR if the rail has been configured properly, or an
     *                 error code otherwise.
     *
     *  Valid input parameters \sa HW_PMU_1V8_VOLTAGE
     */
    HW_PMU_ERROR_CODE hw_pmu_1v8_set_voltage(HW_PMU_1V8_VOLTAGE voltage);
    
    /**
     * \brief Set 1V8 rail wakeup / active configuration
     *
     * This function sets the 1V8 rail configuration during the wakeup / active state.
     * This is effective immediately. The only power source is SIMO DCDC.
     *
     * The rail cannot be enabled if the power sources that supply it are off.
     * In this case HW_PMU_ERROR_NOT_ENOUGH_POWER error code will
     * be returned.
     *
     * \param[in] max_load The maximum current that can be supplied to the loads of the rail
     *
     * \return Returns HW_PMU_ERROR_NOERROR if the rail has been enabled, or an
     *         error code otherwise.
     *
     *  Valid input parameters:
     *  max load mA                   Source
     *  HW_PMU_1V8_MAX_LOAD_100       SIMO DCDC
     */
    HW_PMU_ERROR_CODE hw_pmu_1v8_onwakeup_enable(HW_PMU_1V8_MAX_LOAD max_load);
    
    /**
     * \brief Disable 1V8 rail in wakeup / active state
     *
     * This function disables all the 1V8 power sources used during the wakeup / active state.
     *
     * \return Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.
     */
    HW_PMU_ERROR_CODE hw_pmu_1v8_onwakeup_disable(void);
    
    /**
     * \brief Set 1V8 rail sleep configuration
     *
     * This function sets the 1V8 rail configuration during the sleep state.
     * This is effective immediately. The only power source is SIMO DCDC.
     *
     * The rail cannot be enabled if the power sources that supply it are off.
     * In this case HW_PMU_ERROR_NOT_ENOUGH_POWER error code will
     * be returned.
     *
     * \param[in] max_load The maximum current that can be supplied to the loads of the rail
     *
     * \return Returns HW_PMU_ERROR_NOERROR if the rail has been enabled, or an
     *         error code otherwise.
     *
     *  Valid input parameters:
     *  max load mA                 Source
     *  HW_PMU_1V8_MAX_LOAD_100     SIMO DCDC
     */
    HW_PMU_ERROR_CODE hw_pmu_1v8_onsleep_enable(HW_PMU_1V8_MAX_LOAD max_load);
    
    /**
     * \brief Disable 1V8 rail in sleep state
     *
     * This function disables all the 1V8 power sources used during the sleep state.
     *
     * \return Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.
     */
    HW_PMU_ERROR_CODE hw_pmu_1v8_onsleep_disable(void);
    
    /**
     * \brief Get the 1V8 rail active state configuration
     *
     * \param[out] rail_config The rail configuration
     *
     * \return POWER_RAIL_ENABLED if the rail 1V8 has been configured properly
     *         to work in active state, or POWER_RAIL_DISABLED otherwise.
     */
    HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_active_config(HW_PMU_1V8_RAIL_CONFIG *rail_config);
    
    /**
     * \brief Get the 1V8 rail wakeup configuration
     *
     * \param[out] rail_config The rail configuration
     *
     * \return POWER_RAIL_ENABLED if the rail 1V8 has been configured properly
     *         to work in wakeup state, or POWER_RAIL_DISABLED otherwise.
     */
    HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_onwakeup_config(HW_PMU_1V8_RAIL_CONFIG *rail_config);
    
    /**
     * \brief Get the 1V8 rail sleep configuration
     *
     * \param[out] rail_config The rail configuration
     *
     * \return POWER_RAIL_ENABLED if the rail 1V8 has been configured properly
     *         to work in sleep state, or POWER_RAIL_DISABLED otherwise.
     */
    HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_onsleep_config(HW_PMU_1V8_RAIL_CONFIG *rail_config);

    These are the APIs and the parameters required to configure the Voltage output and the load you want for the V18 rail.

    Could you please share your PMU configuration so we can understand how you are trying to test this?

    Best Regards,
    OV_Renesas

Reply
  • Hi Mohak,

    Apologies for the delay.
    Please refer on the hw_pmu_da1470x.h file. You can find the following for the V18 power rail.

    /***************************************** V18 ***************************************************/
    
    /**
     * \brief Voltage level options for the 1V8 power rail
     *
     */
    typedef enum {
            HW_PMU_1V8_VOLTAGE_1V2 = 0,     //!< 1.2V
            HW_PMU_1V8_VOLTAGE_1V8 = 1      //!< 1.8V
    } HW_PMU_1V8_VOLTAGE;
    
    
    /**
     * \brief Maximum load current options for the 1V8 power rail
     *
     */
    typedef enum {
            HW_PMU_1V8_MAX_LOAD_100 = 0     //!< 100mA
    } HW_PMU_1V8_MAX_LOAD;
    
    
    /**
     * \brief 1V8 power rail configuration
     *
     */
    typedef struct {
            HW_PMU_1V8_VOLTAGE voltage;
            HW_PMU_1V8_MAX_LOAD current;
            HW_PMU_SRC_TYPE src_type;
    } HW_PMU_1V8_RAIL_CONFIG;
    
    /***************************************** V18 ***************************************************/
    
    /**
     * \brief Set the voltage level of 1V8 rail
     *
     * This function sets the voltage level of the 1V8 rail, applicable both for wakeup / active
     * and sleep state.
     *
     * \param[in] voltage The voltage of the rail
     *
     * \return Returns HW_PMU_ERROR_NOERROR if the rail has been configured properly, or an
     *                 error code otherwise.
     *
     *  Valid input parameters \sa HW_PMU_1V8_VOLTAGE
     */
    HW_PMU_ERROR_CODE hw_pmu_1v8_set_voltage(HW_PMU_1V8_VOLTAGE voltage);
    
    /**
     * \brief Set 1V8 rail wakeup / active configuration
     *
     * This function sets the 1V8 rail configuration during the wakeup / active state.
     * This is effective immediately. The only power source is SIMO DCDC.
     *
     * The rail cannot be enabled if the power sources that supply it are off.
     * In this case HW_PMU_ERROR_NOT_ENOUGH_POWER error code will
     * be returned.
     *
     * \param[in] max_load The maximum current that can be supplied to the loads of the rail
     *
     * \return Returns HW_PMU_ERROR_NOERROR if the rail has been enabled, or an
     *         error code otherwise.
     *
     *  Valid input parameters:
     *  max load mA                   Source
     *  HW_PMU_1V8_MAX_LOAD_100       SIMO DCDC
     */
    HW_PMU_ERROR_CODE hw_pmu_1v8_onwakeup_enable(HW_PMU_1V8_MAX_LOAD max_load);
    
    /**
     * \brief Disable 1V8 rail in wakeup / active state
     *
     * This function disables all the 1V8 power sources used during the wakeup / active state.
     *
     * \return Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.
     */
    HW_PMU_ERROR_CODE hw_pmu_1v8_onwakeup_disable(void);
    
    /**
     * \brief Set 1V8 rail sleep configuration
     *
     * This function sets the 1V8 rail configuration during the sleep state.
     * This is effective immediately. The only power source is SIMO DCDC.
     *
     * The rail cannot be enabled if the power sources that supply it are off.
     * In this case HW_PMU_ERROR_NOT_ENOUGH_POWER error code will
     * be returned.
     *
     * \param[in] max_load The maximum current that can be supplied to the loads of the rail
     *
     * \return Returns HW_PMU_ERROR_NOERROR if the rail has been enabled, or an
     *         error code otherwise.
     *
     *  Valid input parameters:
     *  max load mA                 Source
     *  HW_PMU_1V8_MAX_LOAD_100     SIMO DCDC
     */
    HW_PMU_ERROR_CODE hw_pmu_1v8_onsleep_enable(HW_PMU_1V8_MAX_LOAD max_load);
    
    /**
     * \brief Disable 1V8 rail in sleep state
     *
     * This function disables all the 1V8 power sources used during the sleep state.
     *
     * \return Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.
     */
    HW_PMU_ERROR_CODE hw_pmu_1v8_onsleep_disable(void);
    
    /**
     * \brief Get the 1V8 rail active state configuration
     *
     * \param[out] rail_config The rail configuration
     *
     * \return POWER_RAIL_ENABLED if the rail 1V8 has been configured properly
     *         to work in active state, or POWER_RAIL_DISABLED otherwise.
     */
    HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_active_config(HW_PMU_1V8_RAIL_CONFIG *rail_config);
    
    /**
     * \brief Get the 1V8 rail wakeup configuration
     *
     * \param[out] rail_config The rail configuration
     *
     * \return POWER_RAIL_ENABLED if the rail 1V8 has been configured properly
     *         to work in wakeup state, or POWER_RAIL_DISABLED otherwise.
     */
    HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_onwakeup_config(HW_PMU_1V8_RAIL_CONFIG *rail_config);
    
    /**
     * \brief Get the 1V8 rail sleep configuration
     *
     * \param[out] rail_config The rail configuration
     *
     * \return POWER_RAIL_ENABLED if the rail 1V8 has been configured properly
     *         to work in sleep state, or POWER_RAIL_DISABLED otherwise.
     */
    HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_onsleep_config(HW_PMU_1V8_RAIL_CONFIG *rail_config);

    These are the APIs and the parameters required to configure the Voltage output and the load you want for the V18 rail.

    Could you please share your PMU configuration so we can understand how you are trying to test this?

    Best Regards,
    OV_Renesas

Children
No Data