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.

CCS/CC2650MODA: printf does not create output in console

Part Number: CC2650MODA
Other Parts Discussed in Thread: CC2650

Tool/software: Code Composer Studio

Hello,

I am working with CC2650moda and code composer v7. I am trying to display values obtained from sensors connected to the cc2650 moda into the console but cannot get printf to work. I removed most of my code to see if I could simply display “Hello World” on the screen and it still does not work. These are some of the things I have tried so far

 

*Make sure CIO function is enabled

*Increase heap and stack size (I have use multiple values and still nothing works)

*use System_printf and puts functions as alternatives to printf

*make sure stdio.h is included

*Use compilers 5.2.6 and 16.9.3

 

I do not see a CIO console appear at any point. Can anybody please help me to get printf working? Or let me know if you know of any other methods to print to the console.

Thanks so much in advance!

Best Regards,

Janelle

 

 Below is my code:

/* XDCtools Header files */
#include <xdc/std.h>
#include <xdc/runtime/System.h>

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

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

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

#include <ti/drivers/PIN.h>
#include <ti/drivers/pin/PINCC26XX.h>

#include <ti/drivers/ADC.h>

#include <stdio.h>


PIN_Config ledPinTable[] = {

    IOID_0 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //OE
    IOID_1 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //MOSI(DIN)
    IOID_3 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //CLK
    IOID_4 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //LE


    IOID_7 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //IN1
    IOID_8 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //EN1
    IOID_9 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //IN2
    IOID_10 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,       //EN2
    IOID_11 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //IN3
    IOID_12 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //EN3
    IOID_14 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //nsleep


    PIN_TERMINATE

};


static PIN_Handle ledPinHandle;
static PIN_State ledPinState;

/*int age[5]={0, 0, 1, 0,0};

int age[5]={0, 1, 2, 3, 4};

fresh2refresh.com/.../
age[0]; 0 is accessed
age[1]; 1 is accessed*/

/* *  ======== main ========*/

int main(void)
{
    printf("Hello world\n");
    volatile uint32_t i,j;

     /*Call board init functions.*/
     Board_initGeneral();
 //   Board_initGPIO();
//    Board_initPWM();



     /* *  ======== ADC========*/
 /*    ADC_Handle adc;
     ADC_Params params;
     ADC_Params_init(&params);
     adc = ADC_open(IOID_14, &params);
     if (adc != NULL) {
         ADC_close(adc);
     }

     int_fast16_t res;
     uint_fast16_t adcValue;
     res = ADC_convert(adc, &adcValue);
     if (res == ADC_STATUS_SUCCESS) {
         //use adcValue
     }

     printf("Hello world %d!\r\n", adc);*/
     //////////////////////////////
     printf("Hello world\n");
     puts("Hello, world!\n");
    // Display_print0("hey.\n");

    // System_printf("hello World!\n");



    ledPinHandle = PIN_open(&ledPinState, ledPinTable);

        if(!ledPinHandle) {

            System_abort("Error initializing board LED pins\n");

        }

    //return(0);
}

  • Hello,

    Janelle Duenas said:

    *Make sure CIO function is enabled

    *Increase heap and stack size (I have use multiple values and still nothing works)

    *use System_printf and puts functions as alternatives to printf

    *make sure stdio.h is included

    *Use compilers 5.2.6 and 16.9.3

    Looks like you already covered your bases on some of the more common root causes. Have you seen the below article? There are more suggestions there:

    http://processors.wiki.ti.com/index.php/Tips_for_using_printf

    Note that system_printf works differently. You may want to check out the below thread:

    https://e2e.ti.com/support/embedded/tirtos/f/355/t/436740

    Thanks

    ki

  • Hello Ki,

    Thanks for your response, I have read the Tips for using printf,

    I followed this link to output the printf values into a txt file...
    www.youtube.com/watch

    ... but it only displays "Cortex_M3_0: GEL Output: Memory Map Initialization Complete.
    Cortex_M3_0: GEL Output: Board Reset Complete." which is what the console does output, but not printf outputs.

    I tried using System_printf with System_flush from a task as recommended in the thread mentioned

    I made sure the following was in the .cfg file

    "var SysMin = xdc.useModule('xdc.runtime.SysMin');
    SysMin.bufSize = 128;
    System.SupportProxy = SysMin;"

    but still nothing.

    Every other function works in Code composer like adc, pwm, and tasks.

    Would you recommend another direction to make printf work?

    Thanks so much for the help!

    Best Regards,
    Janelle Duenas
  • I imported the PWM LED example into my workspace, added a printf statement, included stdio.h and increased the stack and healp to 0x300 each. That allowed printf to work for my example. It looks like you have modified the example quite a bit. Can you share your project with me. I would like to try it in my environment.
  • Hello Ki,

    I just re-imported the PWM led example, added printf statement and included stdio.h, and increased the stack and heap to 0x300, but when I build and debug I still dont see anything printed to the console. The CIO console never appears.

    I am using code composer 7.01 and tested compilers 5.2.6 and 16.9.3

    Below is the pwm.c file everything else remains the same but still no CIO console

    /*
     * Copyright (c) 2015-2016, Texas Instruments Incorporated
     * All rights reserved.
     *
     * Redistribution and use in source and binary forms, with or without
     * modification, are permitted provided that the following conditions
     * are met:
     *
     * *  Redistributions of source code must retain the above copyright
     *    notice, this list of conditions and the following disclaimer.
     *
     * *  Redistributions in binary form must reproduce the above copyright
     *    notice, this list of conditions and the following disclaimer in the
     *    documentation and/or other materials provided with the distribution.
     *
     * *  Neither the name of Texas Instruments Incorporated nor the names of
     *    its contributors may be used to endorse or promote products derived
     *    from this software without specific prior written permission.
     *
     * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
     * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
     * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
     * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
     * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
     * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
     * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
     * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
     * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
     * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     */
    
    /*
     *  ======== pwmled.c ========
     */
    /* XDCtools Header files */
    #include <xdc/std.h>
    #include <xdc/runtime/System.h>
    #include <stdio.h>
    
    
    /* BIOS Header files */
    #include <ti/sysbios/BIOS.h>
    #include <ti/sysbios/knl/Task.h>
    
    /* TI-RTOS Header files */
    #include <ti/drivers/GPIO.h>
    #include <ti/drivers/PWM.h>
    
    /* Example/Board Header files */
    #include "Board.h"
    
    #define TASKSTACKSIZE   512
    
    Task_Struct tsk0Struct;
    UInt8 tsk0Stack[TASKSTACKSIZE];
    Task_Handle task;
    
    /*
     *  ======== pwmLEDFxn ========
     *  Task periodically increments the PWM duty for the on board LED.
     */
    Void pwmLEDFxn(UArg arg0, UArg arg1)
    {
        PWM_Handle pwm1;
        PWM_Params params;
        uint16_t   pwmPeriod = 3000;      // Period and duty in microseconds
        uint16_t   duty = 0;
        uint16_t   dutyInc = 100;
    
        PWM_Params_init(&params);
        params.dutyUnits = PWM_DUTY_US;
        params.dutyValue = 0;
        params.periodUnits = PWM_PERIOD_US;
        params.periodValue = pwmPeriod;
        pwm1 = PWM_open(Board_PWM0, &params);
    
        if (pwm1 == NULL) {
            System_abort("Board_PWM0 did not open");
        }
        PWM_start(pwm1);
        /* Loop forever incrementing the PWM duty */
        while (1) {
            PWM_setDuty(pwm1, duty);
    
            duty = (duty + dutyInc);
            if (duty == pwmPeriod || (!duty)) {
                dutyInc = - dutyInc;
            }
    
            Task_sleep((UInt) arg0);
        }
    }
    
    /*
     *  ======== main ========
     */
    int main(void)
    {
        Task_Params tskParams;
    
        /* Call board init functions. */
        Board_initGeneral();
        Board_initGPIO();
        Board_initPWM();
    
        /* Construct LED Task thread */
        Task_Params_init(&tskParams);
        tskParams.stackSize = TASKSTACKSIZE;
        tskParams.stack = &tsk0Stack;
        tskParams.arg0 = 50;
        Task_construct(&tsk0Struct, (Task_FuncPtr)pwmLEDFxn, &tskParams, NULL);
    
        /* Obtain instance handle */
        task = Task_handle(&tsk0Struct);
    
        /* Turn on user LED */
        GPIO_write(Board_LED0, Board_LED_ON);
    
        printf("hello, world\n");
    
        System_printf("Starting the example\nSystem provider is set to SysMin. "
                      "Halt the target to view any SysMin contents in ROV.\n");
    
        /* SysMin will only print to the console when you call flush or exit */
        System_flush();
    
        /* Start BIOS */
        BIOS_start();
    
        return (0);
    }
    

    Below is my modified project, but behaves the same as the simple pwm led project with print fThanks so much for looking into this, it is strange the pwm led file works for you but not me. Please let me know if I should check any other settings, I am not sure in what direction to go to solve this

    /*
     * Copyright (c) 2015-2016, Texas Instruments Incorporated
     * All rights reserved.
     *
     * Redistribution and use in source and binary forms, with or without
     * modification, are permitted provided that the following conditions
     * are met:
     *
     * *  Redistributions of source code must retain the above copyright
     *    notice, this list of conditions and the following disclaimer.
     *
     * *  Redistributions in binary form must reproduce the above copyright
     *    notice, this list of conditions and the following disclaimer in the
     *    documentation and/or other materials provided with the distribution.
     *
     * *  Neither the name of Texas Instruments Incorporated nor the names of
     *    its contributors may be used to endorse or promote products derived
     *    from this software without specific prior written permission.
     *
     * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
     * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
     * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
     * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
     * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
     * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
     * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
     * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
     * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
     * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     */
    
    /*
     *  ======== pwmled.c ========
     */
    /* XDCtools Header files */
    #include <xdc/std.h>
    #include <xdc/runtime/System.h>
    
    /* BIOS Header files */
    #include <ti/sysbios/BIOS.h>
    #include <ti/sysbios/knl/Task.h>
    
    /* TI-RTOS Header files */
    #include <ti/drivers/GPIO.h>
    #include <ti/drivers/PWM.h>
    
    /* Example/Board Header files */
    #include "Board.h"
    
    #include <ti/drivers/PIN.h>
    #include <ti/drivers/pin/PINCC26XX.h>
    
    #include <stdio.h>
    
    
    ///nely added this
    #include <stdint.h>
    #include <stdbool.h>
    #include <stddef.h>
    #include <ti/drivers/ADC.h>
    
    
    #define TASKSTACKSIZE   512
    ///////////////////////////////////////////////////////////////////
    /* ADC sample count */
    #define ADC_SAMPLE_COUNT  (10)
    
    /*Task Specific defines */
    //#define TASKSTACKSIZE     (768)
    
    //Task_Struct task0Struct;
    //Char task0Stack[TASKSTACKSIZE];
    
    Task_Struct task1Struct;
    Char task1Stack[TASKSTACKSIZE];
    
    /* ADC conversion result variables */
    uint16_t adcValue0;
    //uint16_t adcValue1[ADC_SAMPLE_COUNT];
    
    
    /////////////////////////////////////////////////////////////////
    
    
    Task_Struct tsk0Struct;
    UInt8 tsk0Stack[TASKSTACKSIZE];
    Task_Handle task;
    volatile uint32_t i,j;
    
    /*
     *  ======== Pin set-up ========
     */
    
    PIN_Config ledPinTable[] = {
    
        IOID_0 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //OE
        IOID_1 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //MOSI(DIN)
        IOID_3 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //CLK
        IOID_4 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //LE
    
    
        IOID_7 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //IN1
        IOID_8 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //EN1
        IOID_9 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //IN2
        IOID_10 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,       //EN2
        IOID_11 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //IN3
        IOID_12 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //EN3
        IOID_14 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,        //nsleep
    
    
        PIN_TERMINATE
    
    };
    
    
    static PIN_Handle ledPinHandle;
    static PIN_State ledPinState;
    
    
    /*
     *  ======== pwmLEDFxn ========
     *  Task periodically increments the PWM duty for the on board LED.
     */
    Void pwmLEDFxn(UArg arg0, UArg arg1)
    {
        PWM_Handle pwm1;
        PWM_Params params;
        uint16_t   pwmPeriod = 30000; //3000     // Period and duty in microseconds
        uint16_t   duty = 0;
        uint16_t   dutyInc = 10;//100
    
        PWM_Params_init(&params);
        params.dutyUnits = PWM_DUTY_US;
        params.dutyValue = 0;
        params.periodUnits = PWM_PERIOD_US;
        params.periodValue = pwmPeriod;
        pwm1 = PWM_open(Board_PWM0, &params);
    
        if (pwm1 == NULL) {
            System_abort("Board_PWM0 did not open");
        }
    
    /*
    
        for ( j= 1; j<=17; j++){
                PIN_setOutputValue(ledPinHandle, IOID_1, Board_LED_ON);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_OFF );    // CLK = 0
                //for(i=1000; i>0; i--);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_ON );
                //for(i=1000; i>0; i--); // CLK = 1
    
                PIN_setOutputValue(ledPinHandle, IOID_1, Board_LED_OFF);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_OFF );    // CLK = 0
                //for(i=1000; i>0; i--);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_ON );
                //for(i=1000; i>0; i--); // CLK = 1
    
                PIN_setOutputValue(ledPinHandle, IOID_1, Board_LED_OFF);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_OFF );    // CLK = 0
                //for(i=1000; i>0; i--);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_ON );
                //for(i=1000; i>0; i--); // CLK = 1
                PIN_setOutputValue(ledPinHandle, IOID_4, Board_LED_ON );    //LE
                PIN_setOutputValue(ledPinHandle, IOID_4, Board_LED_OFF );    //LE
            }
    */
    
    
        System_printf("here we are");
        System_flush();
    
        PWM_start(pwm1);
        /* Loop forever incrementing the PWM duty */
        while (1) {
            PWM_setDuty(pwm1, duty);
    
            duty = (duty + dutyInc);
            if (duty == pwmPeriod || (!duty)) {
                dutyInc = - dutyInc;
            }
    
            Task_sleep((UInt) arg0);
        }
    }
    ///////////////////////////////////////////////////////////
    //////////////////ADC CODE////////////////////////////////
    /////////////////////////////////////////////////////////
    
    /* ADC conversion result variables */
    uint16_t adcValue0;
    
    Void taskFxn1(UArg arg0, UArg arg1)
    {
        ADC_Handle   adc;
        ADC_Params   params;
        int_fast16_t res;
    
        ADC_Params_init(&params);
        adc = ADC_open(Board_ADC0, &params);
    
        if (adc == NULL) {
            System_abort("Error initializing ADC channel 0\n");
        }
        else {
            System_printf("ADC channel 0 initialized\n");
        }
    
       //  Blocking mode conversion
        res = ADC_convert(adc, &adcValue0);
    
        if (res == ADC_STATUS_SUCCESS) {
            System_printf("ADC channel 0 convert result: 0x%x\n", adcValue0);
        }
        else {
            System_printf("ADC channel 0 convert failed\n");
        }
    
        ADC_close(adc);
    
        System_flush();
    }
    
    /////////////////////////////////////////////////////////////////
    
    
    /*
     *  ======== main ========
     */
    int main(void)
    {
        Task_Params tskParams;
    
        /* Call board init functions. */
        Board_initGeneral();
        Board_initGPIO();
        Board_initPWM();
    
        //testing print f
        printf("starting printf");
    
        //allocating pins to handle
       ledPinHandle = PIN_open(&ledPinState, ledPinTable);
    
    
           if(!ledPinHandle) {
    
               System_abort("Error initializing board LED pins\n");
    
           }
    
    
           //PIN_setOutputValue(ledPinHandle, IOID_1, Board_LED_ON );    //MOSI,DIN
           PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_OFF );    //CLK
           PIN_setOutputValue(ledPinHandle, IOID_4, Board_LED_OFF );    //LE
    
           PIN_setOutputValue(ledPinHandle, IOID_0, Board_LED_ON );    //OE TO TURN OF LES
    
        for ( j= 1; j<=17; j++){
                PIN_setOutputValue(ledPinHandle, IOID_1, Board_LED_ON);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_OFF );    // CLK = 0
                //for(i=1000; i>0; i--);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_ON );
                //for(i=1000; i>0; i--); // CLK = 1
    
                PIN_setOutputValue(ledPinHandle, IOID_1, Board_LED_OFF);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_OFF );    // CLK = 0
                //for(i=1000; i>0; i--);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_ON );
                //for(i=1000; i>0; i--); // CLK = 1
    
                PIN_setOutputValue(ledPinHandle, IOID_1, Board_LED_OFF);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_OFF );    // CLK = 0
                //for(i=1000; i>0; i--);
                PIN_setOutputValue(ledPinHandle, IOID_3, Board_LED_ON );
                //for(i=1000; i>0; i--); // CLK = 1
                PIN_setOutputValue(ledPinHandle, IOID_4, Board_LED_ON );    //LE
                PIN_setOutputValue(ledPinHandle, IOID_4, Board_LED_OFF );    //LE
            }
    
        PIN_close(&ledPinState);
    //////////////////////////////////////////////////////////
        Task_Params taskParams;
    
    /////////////////////////////////////////
            // printf("Starting buzzer.../n");
              //System_flush();
              //puts("hello Nely/n");
    
           // PIN_setOutputValue(ledPinHandle, IOID_14, Board_LED_OFF );    //nsleep
           // PIN_setOutputValue(ledPinHandle, IOID_0, Board_LED_OFF );    //OE
        ///////////////////////////////////////////////////////////////////////////
              //  Create tasks
                Task_Params_init(&taskParams);
                taskParams.stackSize = TASKSTACKSIZE;
                taskParams.stack = &task1Stack;
                Task_construct(&task1Struct, (Task_FuncPtr)taskFxn1, &taskParams, NULL);
    
        //////////////////////////////////////////////////////////////////////////////
    
    
    
    
        int r=1;
                if(adcValue0==0){
                    ledPinHandle = PIN_open(&ledPinState, ledPinTable);
                    PIN_setOutputValue(ledPinHandle, IOID_0, Board_LED_OFF );    //OE TO TURN ON LES
                    // Construct LED Task thread
                    /*Task_Params_init(&tskParams);
                    tskParams.stackSize = TASKSTACKSIZE;
                    tskParams.stack = &tsk0Stack;
                    tskParams.arg0 = 50;
                    Task_construct(&tsk0Struct, (Task_FuncPtr)pwmLEDFxn, &tskParams, NULL);*/
                }
    
    
    
            /* Obtain instance handle */
            task = Task_handle(&tsk0Struct);
    
        System_printf("Starting the example\nSystem provider is set to SysMin. "
                      "Halt the target to view any SysMin contents in ROV.\n");
    
        /* SysMin will only print to the console when you call flush or exit */
        System_flush();
    
    
    
        System_printf("Hello World :)");
       System_flush();
        /* Start BIOS */ //nothing runs after this
        BIOS_start();
    
        return (0);
    }
    

    Best Regards,

    Janelle

  • hello,

    Janelle Duenas said:

    Below is the pwm.c file everything else remains the same but still no CIO console

    (Please visit the site to view this file)

    Are you saying that you do not get CIO for pwmled2.c also? I added your file to my project but it worked for me:

    Can you try loading my *.out file and see if you get CIO output?

    /cfs-file/__key/communityserver-discussions-components-files/81/pwmled_5F00_CC2650_5F00_LAUNCHXL_5F00_TI.out

    Thanks

    ki

  • Ki,

    Thank you so much for your help. Your test showed me it was an issue with my Code Composer Set-Up and not the code itselft. I accidentally disable CIO console and was running under the impression that is was enabled. Additionally, I was running the code incorrectly. When I debugged it, I would stop it, which loads the code to the CC2650 and I expected the printf statements to appear. However I should have used the resume button to run the program instead. I apologize for my mistakes, but thank you so much for your help and time. Both printf and System_printf work now.

  • Glad to hear you resolved the problem and thank you for updating us!

    Thanks
    ki