Quantcast
Channel: Forums - Recent Threads
Viewing all 262198 articles
Browse latest View live

LDC1101EVM: Unable to install EVM GUI on Windows 10

$
0
0

Part Number:LDC1101EVM

Hi,

I am trying to install the EVM GUI application on Windows 10 machine. Tried using Administrator rights and also with compatibility mode. In all the cases the application is terminated while it is displaying initial 'Terms & conditions' screen.

Has anybody observed same behavior? Any solution to this issue?

Best Regards

-Satish


RTOS/CC1310: Easylink 2 Transmitters 2 Receivers Blocking Each Other

$
0
0

Part Number:CC1310

Tool/software:TI-RTOS

Hello,

We have designed custom devices for digital signal transfer. Transmitter device sends input values every 50ms and receiver process the data and outputs the transmitter signal values. Devices use address filter for not mixturing any data. If one transmitter sends the data to the receiver, everything works well.

But, 2 transmitters send the data packet at the same time, receivers confuse. Receivers cannot process the data and it behaves unstable.

For clear declaration;

TransmitterDevice-1=ON - address filter=0x04, ReceiverDevice-1=ON - address filter=0x04, TransmitterDevice-2=OFF - address filter=0x05, ReceiverDevice-2=OFF - address filter=0x05 >>> WORKS NORMALLY

TransmitterDevice-1=ON - address filter=0x04, ReceiverDevice-1=ON - address filter=0x04, TransmitterDevice-2=OFF - address filter=0x05, ReceiverDevice-2=ON - address filter=0x05 >>> WORKS NORMALLY

TransmitterDevice-1=OFF - address filter=0x04, ReceiverDevice-1=OFF - address filter=0x04, TransmitterDevice-2=ON - address filter=0x05, ReceiverDevice-2=ON - address filter=0x05 >>> WORKS NORMALLY

TransmitterDevice-1=OFF - address filter=0x04, ReceiverDevice-1=ON - address filter=0x04, TransmitterDevice-2=ON - address filter=0x05, ReceiverDevice-2=ON - address filter=0x05 >>> WORKS NORMALLY

TransmitterDevice-1=ON - address filter=0x04, ReceiverDevice-1=ON - address filter=0x04, TransmitterDevice-2=ON - address filter=0x05, ReceiverDevice-2=ON - address filter=0x05 >>> UNSTABLE, NOT WORKING, RECEIVER LEDS CUT OFF 

In unstable condition (2 devices powered on at the same time and their transmit times are equal), I power off one transmitter and power on back it again, it works (time difference between transmitters).

TRANSMITTER PROGRAM:

/*
 *  ======== rfEasyLinkTx.c ========
 */
/* XDCtools Header files */
#include <stdlib.h>
#include <xdc/std.h>
#include <xdc/runtime/System.h>
#include <xdc/runtime/Error.h>

/* BIOS Header files */
#include <ti/sysbios/BIOS.h>
#include <ti/sysbios/knl/Task.h>
#include <ti/sysbios/knl/Semaphore.h>
#include <ti/sysbios/knl/Clock.h>

/* TI-RTOS Header files */
#include <ti/drivers/PIN.h>

/* Board Header files */
#include "Board.h"

/* EasyLink API Header files */
#include "easylink/EasyLink.h"

/* Undefine to not use async mode */
#define RFEASYLINKTX_ASYNC

#define RFEASYLINKTX_TASK_STACK_SIZE    1024
#define RFEASYLINKTX_TASK_PRIORITY      2

#define RFEASYLINKTX_BURST_SIZE         10
#define RFEASYLINKTXPAYLOAD_LENGTH      30

Task_Struct txTask;    /* not static so you can see in ROV */
static Task_Params txTaskParams;
static uint8_t txTaskStack[RFEASYLINKTX_TASK_STACK_SIZE];

#define STATUS1   IOID_1
#define STATUS2   IOID_2

#define DIN8   IOID_8
#define DIN7   IOID_9
#define DIN6   IOID_10
#define DIN5   IOID_11
#define DIN4   IOID_12
#define DIN3   IOID_13
#define DIN2   IOID_14
#define DIN1   IOID_15

/* Pin driver handle */
static PIN_Handle pinHandle;
static PIN_State pinState;

/*
 * Application LED pin configuration table:
 *   - All LEDs board LEDs are off.
 */
PIN_Config pinTable[] = {
    STATUS1 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    STATUS2 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    DIN1 | PIN_INPUT_EN | PIN_PULLUP,
    DIN2 | PIN_INPUT_EN | PIN_PULLUP,
    DIN3 | PIN_INPUT_EN | PIN_PULLUP,
    DIN4 | PIN_INPUT_EN | PIN_PULLUP,
    DIN5 | PIN_INPUT_EN | PIN_PULLUP,
    DIN6 | PIN_INPUT_EN | PIN_PULLUP,
    DIN7 | PIN_INPUT_EN | PIN_PULLUP,
    DIN8 | PIN_INPUT_EN | PIN_PULLUP,
    PIN_TERMINATE
};

static uint16_t seqNumber;

#ifdef RFEASYLINKTX_ASYNC
static Semaphore_Handle txDoneSem;
#endif //RFEASYLINKTX_ASYNC

#ifdef RFEASYLINKTX_ASYNC
void txDoneCb(EasyLink_Status status)
{
    if (PIN_getOutputValue(STATUS2)==0) {
        PIN_setOutputValue(pinHandle, STATUS2, 1);
        //PIN_setOutputValue(ledPinHandle, STATUS2, 0);
    }else{
        PIN_setOutputValue(pinHandle, STATUS2, 0);
        //PIN_setOutputValue(ledPinHandle, STATUS2, 1);
    }

    Semaphore_post(txDoneSem);
}
#endif //RFEASYLINKTX_ASYNC

static void rfEasyLinkTxFnx(UArg arg0, UArg arg1)
{
    uint8_t txBurstSize = 0;

#ifdef RFEASYLINKTX_ASYNC
    /* Create a semaphore for Async */
    Semaphore_Params params;
    Error_Block eb;

    /* Init params */
    Semaphore_Params_init(&params);
    Error_init(&eb);

    /* Create semaphore instance */
    txDoneSem = Semaphore_create(0, &params, &eb);
#endif //TX_ASYNC

    EasyLink_init(EasyLink_Phy_Custom);

    EasyLink_setFrequency(424700000); //433mhz operation
    //EasyLink_setFrequency(868000000);
    /*
     * If you wish to use a frequency other than the default, use
     * the following API:
     * EasyLink_setFrequency(868000000);
     */

    /* Set output power to 12dBm */
    EasyLink_setRfPwr(14);

    while(1) {

        EasyLink_TxPacket txPacket =  { {0}, 0, 0, {0} };
        //txPacket.payload[0] = (uint8_t)(seqNumber >> 8);
        //txPacket.payload[1] = (uint8_t)(seqNumber++);


        txPacket.len = RFEASYLINKTXPAYLOAD_LENGTH;
        txPacket.dstAddr[0] = 0x04; //1

        uint8_t i, sendPacketTrigger = 0;


        if (PIN_getInputValue(DIN1)==0) {
            txPacket.payload[0] = 0x01;
        }
        else{
            txPacket.payload[0] = 0x00;
        }

        if (PIN_getInputValue(DIN2)==0) {
            txPacket.payload[1] = 0x01;
        }
        else{
            txPacket.payload[1] = 0x00;
        }

        if (PIN_getInputValue(DIN3)==0) {
            txPacket.payload[2] = 0x01;
        }
        else{
            txPacket.payload[2] = 0x00;
        }

        if (PIN_getInputValue(DIN4)==0) {
            txPacket.payload[3] = 0x01;
        }
        else{
            txPacket.payload[3] = 0x00;
        }

        if (PIN_getInputValue(DIN5)==0) {
            txPacket.payload[4] = 0x01;
        }
        else{
            txPacket.payload[4] = 0x00;
        }

        if (PIN_getInputValue(DIN6)==0) {
            txPacket.payload[5] = 0x01;
        }
        else{
            txPacket.payload[5] = 0x00;
        }

        if (PIN_getInputValue(DIN7)==0) {
            txPacket.payload[6] = 0x01;
        }
        else{
            txPacket.payload[6] = 0x00;
        }

        if (PIN_getInputValue(DIN8)==0) {
            txPacket.payload[7] = 0x01;
        }
        else{
            txPacket.payload[7] = 0x00;
        }

        if (PIN_getOutputValue(STATUS1)==0) {
            PIN_setOutputValue(pinHandle, STATUS1, 1);
            //PIN_setOutputValue(ledPinHandle, STATUS2, 0);
        }else{
            PIN_setOutputValue(pinHandle, STATUS1, 0);
            //PIN_setOutputValue(ledPinHandle, STATUS2, 1);
        }


        txPacket.absTime = EasyLink_getAbsTime() + EasyLink_ms_To_RadioTime(80);

        EasyLink_transmitAsync(&txPacket, txDoneCb);
        // Wait 300ms for Tx to complete
        if(Semaphore_pend(txDoneSem, (300000 / Clock_tickPeriod)) == FALSE)
        {
            // TX timed out, abort
            if(EasyLink_abort() == EasyLink_Status_Success)
            {

               Semaphore_pend(txDoneSem, BIOS_WAIT_FOREVER);
            }
        }
    }
}

void txTask_init(PIN_Handle inPinHandle) {
    pinHandle = inPinHandle;

    Task_Params_init(&txTaskParams);
    txTaskParams.stackSize = RFEASYLINKTX_TASK_STACK_SIZE;
    txTaskParams.priority = RFEASYLINKTX_TASK_PRIORITY;
    txTaskParams.stack = &txTaskStack;
    txTaskParams.arg0 = (UInt)1000000;

    Task_construct(&txTask, rfEasyLinkTxFnx, &txTaskParams, NULL);
}

/*
 *  ======== main ========
 */
int main(void)
{
    /* Call driver init functions. */
    Board_initGeneral();

    /* Open LED pins */
    pinHandle = PIN_open(&pinState, pinTable);
    if(!pinHandle) {
        System_abort("Error initializing board LED pins\n");
    }

    /* Clear LED pins */
    PIN_setOutputValue(pinHandle, STATUS1, 0);
    PIN_setOutputValue(pinHandle, STATUS2, 0);

    txTask_init(pinHandle);

    /* Start BIOS */
    BIOS_start();

    return (0);
}

RECEIVER PROGRAM:

/*
 *  ======== rfEasyLinkRx.c ========
 */
/* XDCtools Header files */
#include <xdc/std.h>
#include <xdc/runtime/System.h>
#include <xdc/runtime/Error.h>

/* BIOS Header files */
#include <ti/sysbios/BIOS.h>
#include <ti/sysbios/knl/Task.h>
#include <ti/sysbios/knl/Semaphore.h>
#include <ti/sysbios/knl/Clock.h>

/* TI-RTOS Header files */
#include <ti/drivers/PIN.h>

/* Board Header files */
#include "Board.h"

/* EasyLink API Header files */
#include "easylink/EasyLink.h"

/***** Defines *****/

/* Undefine to remove address filter and async mode */
#define RFEASYLINKRX_ASYNC
#define RFEASYLINKRX_ADDR_FILTER

#define RFEASYLINKEX_TASK_STACK_SIZE 1024
#define RFEASYLINKEX_TASK_PRIORITY   2

#define STATUS1   IOID_1
#define STATUS2   IOID_2

#define DOUT1   IOID_8
#define DOUT2   IOID_9
#define DOUT3   IOID_10
#define DOUT4   IOID_11
#define DOUT5   IOID_12
#define DOUT6   IOID_13
#define DOUT7   IOID_14
#define DOUT8   IOID_15

/* Pin driver handle */
static PIN_Handle ledPinHandle;
static PIN_State ledPinState;

/*
 * Application LED pin configuration table:
 *   - All LEDs board LEDs are off.
 */
PIN_Config pinTable[] = {
    //Board_PIN_LED1 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    //Board_PIN_LED2 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    STATUS1 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    STATUS2 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    DOUT1 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    DOUT2 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    DOUT3 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    DOUT4 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    DOUT5 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    DOUT6 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    DOUT7 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    DOUT8 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    PIN_TERMINATE
};

/***** Variable declarations *****/
static Task_Params rxTaskParams;
Task_Struct rxTask;    /* not static so you can see in ROV */
static uint8_t rxTaskStack[RFEASYLINKEX_TASK_STACK_SIZE];

/* The RX Output struct contains statistics about the RX operation of the radio */
PIN_Handle pinHandle;

#ifdef RFEASYLINKRX_ASYNC
static Semaphore_Handle rxDoneSem;
#endif

/***** Function definitions *****/
#ifdef RFEASYLINKRX_ASYNC
void rxDoneCb(EasyLink_RxPacket * rxPacket, EasyLink_Status status)
{
    if(status == EasyLink_Status_Success && rxPacket->payload[0]==0x01)
    {
        PIN_setOutputValue(ledPinHandle, DOUT1, 0);
    }
    else{
        PIN_setOutputValue(ledPinHandle, DOUT1, 1);
    }

    if(status == EasyLink_Status_Success && rxPacket->payload[1]==0x01)
    {
        PIN_setOutputValue(ledPinHandle, DOUT2, 0);
    }
    else{
        PIN_setOutputValue(ledPinHandle, DOUT2, 1);
    }

    if(status == EasyLink_Status_Success && rxPacket->payload[2]==0x01)
    {
        PIN_setOutputValue(ledPinHandle, DOUT3, 0);
    }
    else{
        PIN_setOutputValue(ledPinHandle, DOUT3, 1);
    }

    if(status == EasyLink_Status_Success && rxPacket->payload[3]==0x01)
    {
        PIN_setOutputValue(ledPinHandle, DOUT4, 0);
    }
    else{
        PIN_setOutputValue(ledPinHandle, DOUT4, 1);
    }

    if(status == EasyLink_Status_Success && rxPacket->payload[4]==0x01)
    {
        PIN_setOutputValue(ledPinHandle, DOUT5, 0);
    }
    else{
        PIN_setOutputValue(ledPinHandle, DOUT5, 1);
    }

    if(status == EasyLink_Status_Success && rxPacket->payload[5]==0x01)
    {
        PIN_setOutputValue(ledPinHandle, DOUT6, 0);
    }
    else{
        PIN_setOutputValue(ledPinHandle, DOUT6, 1);
    }

    if(status == EasyLink_Status_Success && rxPacket->payload[6]==0x01)
    {
        PIN_setOutputValue(ledPinHandle, DOUT7, 0);
    }
    else{
        PIN_setOutputValue(ledPinHandle, DOUT7, 1);
    }

    if(status == EasyLink_Status_Success && rxPacket->payload[7]==0x01)
    {
        PIN_setOutputValue(ledPinHandle, DOUT8, 0);
    }
    else{
        PIN_setOutputValue(ledPinHandle, DOUT8, 1);
    }

    if(status == EasyLink_Status_Success){
        PIN_setOutputValue(pinHandle, STATUS2,!PIN_getOutputValue(STATUS2));
    }else{
        PIN_setOutputValue(pinHandle, STATUS2, 0);
    }


    Semaphore_post(rxDoneSem);
}
#endif

static void rfEasyLinkRxFnx(UArg arg0, UArg arg1)
{
#ifndef RFEASYLINKRX_ASYNC
    EasyLink_RxPacket rxPacket = {0};
#endif

#ifdef RFEASYLINKRX_ASYNC
    /* Create a semaphore for Async*/
    Semaphore_Params params;
    Error_Block eb;

    /* Init params */
    Semaphore_Params_init(&params);
    Error_init(&eb);

    /* Create semaphore instance */
    rxDoneSem = Semaphore_create(0, &params, &eb);
#endif //RFEASYLINKRX_ASYNC

    EasyLink_init(EasyLink_Phy_Custom);
    //EasyLink_init(EasyLink_Phy_5kbpsSlLr);

    EasyLink_setFrequency(424700000); //433mhz operation
    //EasyLink_setFrequency(868000000);
    /*
     * If you wish to use a frequency other than the default, use
     * the following API:
     * EasyLink_setFrequency(868000000);
     */

//#ifdef RFEASYLINKRX_ADDR_FILTER
    uint8_t addrFilter = 0x05;
    EasyLink_enableRxAddrFilter(&addrFilter, 1, 1);
//#endif //RFEASYLINKRX_ADDR_FILTER

    while(1) {
#ifdef RFEASYLINKRX_ASYNC



        EasyLink_Status result = EasyLink_receiveAsync(rxDoneCb, 0);

        /* Wait 300ms for Rx */
        if(Semaphore_pend(rxDoneSem, (900000 / Clock_tickPeriod)) == FALSE)
        {
            /* RX timed out abort */
            if(EasyLink_abort() == EasyLink_Status_Success)
            {
               /* Wait for the abort */
               Semaphore_pend(rxDoneSem, BIOS_WAIT_FOREVER);
            }
        }
        //if (result == EasyLink_Status_Success){
            if (PIN_getOutputValue(STATUS1)==0) {
                PIN_setOutputValue(ledPinHandle, STATUS1, 1);
                //PIN_setOutputValue(ledPinHandle, STATUS2, 0);
            }else{
                PIN_setOutputValue(ledPinHandle, STATUS1, 0);
                //PIN_setOutputValue(ledPinHandle, STATUS2, 1);
            }
        //}

        //PIN_setOutputValue(pinHandle, STATUS2,!PIN_getOutputValue(STATUS2));
#else
        rxPacket.absTime = 0;
        EasyLink_Status result = EasyLink_receive(&rxPacket);

        if (result == EasyLink_Status_Success)
        {
            /* Toggle LED2 to indicate RX */
            PIN_setOutputValue(pinHandle, Board_PIN_LED2,!PIN_getOutputValue(Board_PIN_LED2));
        }
        else
        {
            /* Toggle LED1 and LED2 to indicate error */
            PIN_setOutputValue(pinHandle, Board_PIN_LED1,!PIN_getOutputValue(Board_PIN_LED1));
            PIN_setOutputValue(pinHandle, Board_PIN_LED2,!PIN_getOutputValue(Board_PIN_LED2));
        }
#endif //RX_ASYNC
    }
}

void rxTask_init(PIN_Handle ledPinHandle) {
    pinHandle = ledPinHandle;

    Task_Params_init(&rxTaskParams);
    rxTaskParams.stackSize = RFEASYLINKEX_TASK_STACK_SIZE;
    rxTaskParams.priority = RFEASYLINKEX_TASK_PRIORITY;
    rxTaskParams.stack = &rxTaskStack;
    rxTaskParams.arg0 = (UInt)1000000;

    Task_construct(&rxTask, rfEasyLinkRxFnx, &rxTaskParams, NULL);
}

/*
 *  ======== main ========
 */
int main(void)
{
    /* Call driver init functions */
    Board_initGeneral();

    /* Open LED pins */
    ledPinHandle = PIN_open(&ledPinState, pinTable);
    if(!ledPinHandle) {
        System_abort("Error initializing board LED pins\n");
    }

    /* Clear LED pins */
    PIN_setOutputValue(ledPinHandle, STATUS1, 0);
    PIN_setOutputValue(ledPinHandle, STATUS2, 0);

    rxTask_init(ledPinHandle);

    /* Start BIOS */
    BIOS_start();

    return (0);
}

Looking forward for your advices.

Best regards,

Onur

CCS/MSP432P401R: EnergyTrace Technology Issue

$
0
0

Part Number:MSP432P401R

Tool/software: Code Composer Studio

This is a new install of CCS v7.2.0.00013 on Windows 10. When I try and launch the debugger I get an error

java.lang.NoClassDefFoundError: com/ti/dvt/energytrace/views/Dashboard

in the log file.

When I go to WIndow-Preference-EnergyTrace Technology, I get an error that says:

"An error occurred while automatically activating bundle com.ti.dvt.energytrace(447).

Looks like I have some sort of installation problem?

BOOSTXL-DRV8301: Can it, with LAUNCH F28027F accomplish a satisfactory substitute for direct torque control?

$
0
0

Part Number:BOOSTXL-DRV8301

I want to control the torque of my BLDC motor. The speed is irrelevant to me. Based on what I have been told, it seems that using a BOOSTXL-DRV8301 and a LAUNCH F28027F together might do the trick, but I want to make sure that the FOC that these offer will actually allow me to do what I need them to do. Thanks in advance.

ADS131E06 Input Current Noise

$
0
0
What's input current noise for analog inputs on ADS131E06? Page 22 of datasheet says it's negligible, but I'm wondering what impact an RC filter will have on noise floor and accuracy.

CCS/AM3352: Printf output issue

$
0
0

Part Number:AM3352

Tool/software: Code Composer Studio

i am running on a custom board, running RTOS, GNU compiler 4.9.3, SYSBIOS 6.46.5.55

nothing is ever output in the console when i attempt printf. when i run the code:

ENET_PHY_log("SetPhyMode:%08X Auto:%d, FD10:%d, HD10:%d, FD100:%d, HD100:%d, FD1000:%d LPBK:%d\n", PhyMode,
(PhyMode & NWAY_AUTO), (PhyMode & MII_NWAY_FD10),(PhyMode & MII_NWAY_HD10),(PhyMode & MII_NWAY_FD100),
(PhyMode & MII_NWAY_HD100), (PhyMode & NWAY_FD1000),
(PhyMode & NWAY_LPBK) );

where ENET_PHY_log is defined as printf, nothing shows up on the console. i have a fairly large heap and stack and PhyMode is defined as Uint32 *PhyState = &((ENETPHY_DEVICE *) hPhyDev)->PhyState;

this is the default code for the BBB enet_phy.c

#include <stdio.h> is the first active line in the file

BQ24725A: Removing Input/Adapter Monitoring

$
0
0

Part Number:BQ24725A

I am trying to use the BQ24725A in a lower-cost and more simplified charger design.  I have used it previously in an application where it also powered the system and utilized the input power monitoring features.  My question is can I remove the input MOSFETs and sense resistor from the design and have it still function as a pure battery charger?

Thanks,

David

Speed Only Controller for InstaSPIN-FOC Possible?

$
0
0

I am evaluating the IS-FOC using the speed + torque and torque mode only. Is it possible to modify the software to be speed only mode? If so, what is necessary for this and what kind of impacts would be seen with the FAST encoder etc... My application only requires speed control as we want our motor to produce as much torque as possible with keeping the speed of the motor constant.

Thanks

-David


OMAP-L138: Reliability data at different temps

$
0
0

Part Number:OMAP-L138

Hi team,

Posting for a colleague:

We are validating a TI OMAP device designed into a new product, PN OMAPL138EZWT4.  The OMAP datasheet makes the following declarations:

 

From omap-l138.pdf, 4.1 Absolute Maximum Ratings Over Operating Junction Temperature, pg 77

http://www.ti.com/lit/ds/symlink/omap-l138.pdf

                Max Operating Junction Temperature, TJ             90°C (Commercial)

 

Package NFBGA ZWT 361 pins

From omap-l138.pdf, Table 7-2 Thermal Resistance Characteristics (PBGA Package [ZWT], pg 279)

http://www.ti.com/lit/ds/symlink/omap-l138.pdf

θja = 23.7°C/W

θjc = 7.3°C/W

ψJT = 0.2°C/W

 

From omap-l138.pdf, Table 4-1 Recommended Power-On Hours, pg 80

Silicon Revision E, Speed grade 456MHz  - 100,000 hours

 

I’d like to obtain reliability data (FIT, MTBF, Power on-hours) for each of the OMAP operating conditions below:

Tj = 90°C (max operation temperature guaranteed in datasheet)

Tj = 82.1°C (calculated from Tc=77.9°C, using Pd=0.58W)

Tj = 72°C (20% lower than datasheet maximum specified)

 

Thank you for the help,

Nate

CC1310: Maximum RF Input Power System Workarounds

$
0
0

Part Number:CC1310

Hi,

Background

The maximum input RF level of the CC1310 is specified as 10dBm in Table 5.1 of the datasheet. A system being developed with the CC1310 will have two devices near to one another and a CC1190 is being considered for use to extend the range of the overall network which may result in higher RF levels being seen on the non-transmitting device due to their physical proximity.

Question

  1. Does the maximum input RF level only apply while in RX mode, or at any time? Specifically, could the device be taken out of receive and safely handle higher RF power on the input path?
  2. Is the input RF level specification dependent upon which frequency the device is currently tuned or is any frequency able to damage the device assuming a 10dBm RF level is seen on the input?
  3. Are there any recommended system-level solutions for addressing this type of problem?

Best Regards,

Mark-

CC2640R2F: CC2640 BLE BT4.2 BT5 BT5.0 Non-Connectable Connectable Advertising Intervals Beacons iBeacons ..

$
0
0

Part Number:CC2640R2F

Hello Team BLE,

Using CC2640R2F w/ BT4.2 & BT5 Stack(s)/SDK(s).  Looks like according to BT Spec 4.2, for non-connectable beacons (like iBeacons) the advertising interval cannot be smaller than 100mSec.  Additionally it looks like Apple requires iBeacons to be non-connectable devices.  

I see that BT5 has now spec'd/added the capability for "High Duty Cycle Non-Connectable Advertising".

My questions..

For CC2640R2F BT4.2 Stack:

Looks like connectable advertisements can be successfully disabled/re-enabled in as little as ~4ms.  Non-connectable advertisements require ~104ms for the same disable/enable sequence.  Understanding that TI (in BT4.2 stack) likely prohibits anything shorter than 100mSec for Non-connectable advertisements..

How is the 100mSec spec implemented in the 4.2 stack WRT enable/disable?  

For example.. when non-connectable advertisements are enabled.. when will the first non-connectable adv be sent?

When disabled.. how does the stack ensure that the 100mSec gap is met?  

Does the stack prohibit a quick enable, disable, re-enable sequence from violating the 100mSec minimum interval requirement?  If so, how?

For CC2640R2F BT5.x Stack(s):

What is the  BT5 stack limit WRT minimum interval for connectable advertisement interval?

What is the BT5 stack limit WRT minimum interval for non-connectable advertisement interval?

What is the state of these intervals WRT the current BT5 stack offering for the CC2640R2F?

Same q's for upcoming BT5 stack releases?

Thanks, Merril

CC3200SDK: CC3200 can't connect in AP Mode

$
0
0

Part Number:CC3200SDK

I have a customer using the CC3200 sensor tag, he cannot connect in AP mode. We are seeing the sensor tag in the list, the WIFI icon says connected no internet to the AP.  When attempting to connect we failed . The sensortag does not have the most recent firmware, we attempted to upgrade but we kept getting a failure notice. We also tried (provisioning mode) continuing without the firmware upgrade, the device just spins then fails due to not connecting to the sensor tag.

CSD95379Q3M: What are limits to output voltage (Vsw) in Buck configuration?

$
0
0

Part Number:CSD95379Q3M

Hey E2E NexFET.

Can I use NexFETs for a 6-8V output Buck from 12V?

Sorry if that's a dumb question.  The data sheet shows Abs Max on Vin - Vsw & Vsw - Pgnd as being 20V so I don't see why not, but all the TI literature seems aimed at low voltage PoL supplies.  Also, the DrMOS bridges seem limited to low voltage outputs.  

I want a driven H-bridge to power a TEC (2.2 ohm Thermo-Electric Cooler needing 6.3V at 3.4A).  I plan on using either a micro for the PWM signals or a LT1923 (sorry TI), but either way I want to drive a H-bridge with <5V logic and a 12V high-side rail.  If I do bi-directional on the TEC (heating as well as cooling), that means this part would have to sink current.  Is that ok?  

I did find TI's DRV595 and I'm considering altering my design to use it, but it's fairly expensive.

I also found the DRV84x2 which might work.

Thanks for any specific or general advice.  Including tips on how I could have answered my own question!

Paul

Linux/BEAGLEBK: Beagle Bone Black

$
0
0

Part Number:BEAGLEBK

Tool/software: Linux

Hi,

How can I write the image am335x-evm-linux-04.00.00.04 (or previous versions) on the Beaglebone Black using a SD card. The usual process that works for other images (i.e. debian) and that can be found in any getting started guide does not work for the image I want to flash. It looks like the board is not able to write the SD Card image on the eMMC. How can I proceed?

Additionally, is it normal that when writing the image into the SD Card, two partitions are created ? : the BOOT partition (~70MB) and a "removable disk" (~3.8GB). This partition is not the same kept when writing (for example) a debian image into the SD card.

Any suggestion would be really helpful. Thanks.

Simon

UC2903: Response time to a UV/OV fault.

$
0
0

Part Number:UC2903

I would like to use the UC2903 in an ultra-fast protection circuit.  How fast can the UC2903 respond to a OV/UV fault with no external fault-delay capacitance at pins 10 and 13?  The data sheet doesn't specify the propagation delay.   


TPS54880: TPS54880

$
0
0

Part Number:TPS54880

 I am usingTPS54880 and if Trackin pin is not used Do I need to hook up to anything or live floating?

hu

CC2640: SNP: the advertiser's address is public instead of static - no API

$
0
0

Part Number:CC2640

The BLE SNP API guide states the following under section 5.3 - Limitations:

The advertiser’s address type is always static (no private or public address).

The data from a sniffer however shows TxAdd as zero, which indicates the address is public:

Bluetooth Low Energy Link Layer

Packet Header: 0x1e00 (PDU Type: ADV_IND, TxAdd=false, RxAdd=false)

  00.. .... = RFU: 0

  ..0. .... = Randomized Tx Address: False  <-- SHOULD BE TRUE

  ...0 .... = Reserved: False

  .... 0000 = PDU Type: ADV_IND (0x00)

  00.. .... = RFU: 0

  ..01 1110 = Length: 30

Apparently there is no API function to correct that either. 

Could you please confirm?

Thank you!

Bluetooth Low Energy Link Layer
Packet Header: 0x1e00 (PDU Type: ADV_IND, TxAdd=false, RxAdd=false)
  00.. .... = RFU: 0
  ..0. .... = Randomized Tx Address: False  <-- SHOULD BE TRUE
  ...0 .... = Reserved: False
  .... 0000 = PDU Type: ADV_IND (0x00)
  00.. .... = RFU: 0
  ..01 1110 = Length: 30

Store the Data in RAM by Specific Memory address

$
0
0

Hi

I am using TMS320F2812 processor in CCS6.2 C -language.  I want store  the data in RAM  of this processors by specific memory address, kindly give the support with  sample code.

RTOS/TI-RTOS: Adjusting Phase of Periodic Clock

$
0
0

Part Number:TI-RTOS

Tool/software:TI-RTOS

Dear TI Timer Support,

I have a periodic clock timer helping me synchronize a task to an outside periodic event and I'm looking for a good way to give the timer a nudge 1 tick up or down to change its phase and account for the drift between clocks - essentially I want to just modify the period of the timer occasionally for just one period to adjust it's phase with the outside event.    Seems like I should be able to just increment some counter in the ClockStruct but not sure which one or if this is the best approach?  Any help you can give me is greatly appreciated.

Thanks,

Brett

DS90UB925Q-Q1: 925 & 926 v 303 & 302 for IVI

$
0
0

Part Number:DS90UB925Q-Q1

Hi 

My current system is using the DS90UB925-Q1 / ‘926 pairing. Previously, I have been informed 10m is  the max cable length, would this be the same as the typical interconnect distance for robust operation?

Would a DS90UB303 / ‘302 pairing be any more or less robust, and have a different maximum interconnection distance? 

Many thanks,

Ross

Viewing all 262198 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>