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.

RTOS/CC1310: CC1310 shutdown and wake up on pin

Part Number: CC1310

Tool/software: TI-RTOS

Hello,

I am encountering some problems with the waking up of my CC1310 on a specific I/O. I am running this code on a launchpad, with simple link SDK 2.30.0.20. The code is based on TI collector/sensor example.

First I am shutting down my processor like this :

// Set up wake up pins
    PINCC26XX_setWakeup(WakeUpPinCfg);

    // Re-allow shut down
    Power_releaseConstraint(PowerCC26XX_DISALLOW_SHUTDOWN);

    // Shut down device
    Power_shutdown(0, 0);


My WakeUpPinCfg table is defined like this :
static PIN_Config WakeUpPinCfg [] ={
        Board_PIN_BUTTON0 | PIN_INPUT_EN | PIN_PULLUP |
                  PIN_IRQ_BOTHEDGES | PIN_HYSTERESIS | PINCC26XX_WAKEUP_NEGEDGE,
        Board_PIN_BUTTON1 | PIN_INPUT_EN | PIN_PULLUP |
                  PIN_IRQ_BOTHEDGES | PIN_HYSTERESIS | PINCC26XX_WAKEUP_NEGEDGE,
        PIN_TERMINATE
    };

My pins are registered with exactly the same parameters (exept for the PINCC26XX_WAKEUP_NEGEDGE).

My problem is :

- When setting only one wake up pin in the table, everything works fine, my cc1310 is able to wake up.

- When setting the two pins in the wake up pin table, the cc1310 doesn't wake up at all

Using an oscilloscope, I am able to see that my pins are well pulled-up and pulled down by the button press.

Would you have any clues on what I am doing wrong on this matter ?

Also another question : Is there a proper way to get which pin woke the cc1310 up, or do I have to read the pin states at boot ?

Thank you very much by advance for your help

 

  • Hi Alexandre,

    I tried this out myself using the pinShutdown example and do not seem to be able to re-produce the error. Have you tried using two other pins and see if the behavior is the same (also, have you tried this out in the basic example I just mentioned)?

    Regarding knowing which pin who woke you up, you would need to read the pin state at boot. You can catch the reset source which will tell you it is a "wakeup form shutdown" but not much more.