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.

LAUNCHXL-CC1352P: Code getting stuck in Display_open() call

Part Number: LAUNCHXL-CC1352P
Other Parts Discussed in Thread: SYSCONFIG

I'm using the 1352P LaunchXL, and have set up sysconfig to have a UART and Display.

When I call Display_open(), it doesn't return. When I step into Display_open(), it appears to be getting lost here:

if (id == i || (handle->fxnTablePtr->getTypeFxn() & id))

I've tried passing different parameters to Display_open, but here is an example:

display = Display_open(Display_Type_UART, NULL);

I'm linking in the m4f version of display.a

Here is the syscfg file contents:

/**
* These arguments were used when this file was generated. They will be automatically applied on subsequent loads
* via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
* @cliArgs --board "/ti/boards/CC1352P1_LAUNCHXL" --product "simplelink_cc13x2_26x2_sdk@5.20.00.52"
* @versions {"tool":"1.11.0+2225"}
*/

/**
* Import the modules used in this configuration.
*/
const CCFG = scripting.addModule("/ti/devices/CCFG");
const custom = scripting.addModule("/ti/devices/radioconfig/custom");
const rfdesign = scripting.addModule("/ti/devices/radioconfig/rfdesign");
const Display = scripting.addModule("/ti/display/Display", {}, false);
const Display1 = Display.addInstance();
const GPIO = scripting.addModule("/ti/drivers/GPIO", {}, false);
const GPIO1 = GPIO.addInstance();
const GPIO2 = GPIO.addInstance();
const GPIO3 = GPIO.addInstance();
const GPIO4 = GPIO.addInstance();
const GPIO5 = GPIO.addInstance();
const GPIO6 = GPIO.addInstance();
const RF = scripting.addModule("/ti/drivers/RF");
const Timer = scripting.addModule("/ti/drivers/Timer", {}, false);
const Timer1 = Timer.addInstance();

/**
* Write custom configuration values to the imported modules.
*/
CCFG.forceVddr = true;
CCFG.ccfgTemplate.$name = "ti_devices_CCFGTemplate0";

custom.prop8 = ["2gfsk50kbps"];
custom.radioConfig2gfsk50kbps.$name = "ti_devices_radioconfig_settings_prop1";
custom.radioConfig2gfsk50kbps.codeExportConfig.$name = "ti_devices_radioconfig_code_export_param1";

Display1.$name = "CONFIG_Display_0";
Display1.$hardware = system.deviceData.board.components.XDS110UART;
Display1.uart.$name = "CONFIG_UART_0";
Display1.uart.txPinInstance.$name = "CONFIG_PIN_6";
Display1.uart.rxPinInstance.$name = "CONFIG_PIN_7";
Display1.uart.uart.$assign = "UART0";

GPIO1.$name = "CONFIG_GPIO_0";
GPIO1.mode = "Output";
GPIO1.pinInstance.$name = "CONFIG_PIN_0";

GPIO2.$name = "CONFIG_GPIO_1";
GPIO2.mode = "Output";
GPIO2.pinInstance.$name = "CONFIG_PIN_1";

GPIO3.$name = "CONFIG_GPIO_2";
GPIO3.mode = "Output";
GPIO3.$hardware = system.deviceData.board.components.LED_RED;
GPIO3.pinInstance.$name = "CONFIG_PIN_2";

GPIO4.$name = "CONFIG_GPIO_3";
GPIO4.mode = "Output";
GPIO4.pinInstance.$name = "CONFIG_PIN_3";

GPIO5.$name = "CONFIG_GPIO_4";
GPIO5.mode = "Output";
GPIO5.pinInstance.$name = "CONFIG_PIN_4";

GPIO6.$name = "CONFIG_GPIO_5";
GPIO6.mode = "Output";
GPIO6.pinInstance.$name = "CONFIG_PIN_5";

RF.$hardware = system.deviceData.board.components["SKY13317-373LF"];

Timer1.$name = "CONFIG_TIMER_0";
Timer1.timerInstance.$name = "CONFIG_GPTIMER_0";

/**
* Pinmux solution for unlocked pins/peripherals. This ensures that minor changes to the automatic solver in a future
* version of the tool will not impact the pinmux you originally saw. These lines can be completely deleted in order to
* re-solve from scratch.
*/
Display1.uart.uart.txPin.$suggestSolution = "boosterpack.4";
Display1.uart.uart.rxPin.$suggestSolution = "boosterpack.3";
GPIO1.gpioPin.$suggestSolution = "boosterpack.10";
GPIO2.gpioPin.$suggestSolution = "boosterpack.18";
GPIO3.gpioPin.$suggestSolution = "boosterpack.39";
GPIO4.gpioPin.$suggestSolution = "boosterpack.32";
GPIO5.gpioPin.$suggestSolution = "boosterpack.31";
GPIO6.gpioPin.$suggestSolution = "boosterpack.36";
RF.rfAntennaPin0.$suggestSolution = "ball.41";
RF.rfAntennaPin1.$suggestSolution = "ball.42";
RF.rfAntennaPin2.$suggestSolution = "ball.43";
Timer1.timerInstance.timer.$suggestSolution = "GPTM0";