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/TIDA-010024: Sending data from "debug_root_push" to "debug_push".

Part Number: TIDA-010024
Other Parts Discussed in Thread: CC1352R, , CC1312R

Tool/software: Code Composer Studio

Hello,

I am using CC1352R board, Simplelink sdk 2.10.00.48 and TIDA-010024. I am trying to send data from “debug_root_push” to “debug_push”.

But I’m not able to understand/identify the functions that are responsible for sending the data (from “debug_root_push“) and receiving it (in “debug_push” code).

While trying, my general idea was to replicate the methods found for Data sending in the end node (“debug_push” code) to the root node (“debug_root_push). Found out that there were no functions named ”sample_udp_push” in the root side, so I copied it, I called the function in case “APP_TX_DATA:” in app_task() function but it didn’t work. I am not able to figure out the problem, is it with the replication of code or with UDP.

Since I noticed that “debug_push” is the UDP client and “debug_root_push” is the UDP server. Am I supposed to reverse that implementation (i.e server on the node side and client on the Root side)?

 

Thanks,

Kartik.

 

  • Hi Kartik, 

    Please, review the debug_root_poll example (working with debug_poll for end-node) if you want to initiate data from the root node. This example will initiate poll message from root to extract data from an end-node. The end-node (in the debug_poll) will echo back data when receiving the poll message. 

    BTW, the TIDA-010024 has been updated with a new software working with the latest SimpleLink SDK v2.40 and a new CC1312R rev E version. Please, visit the TI design page to check out. 

    Regards,
    Wonsoo

  • Hello Wonsoo,

    Thank you for your quick response.

    I went through the user guide and as you suggested i also looked at the Polling example but found that UDP Push to be more relatable to my application. I want to preserve the 10 second data sending part in the "debug_push" example while also trying to send an occasional message to the end node from the root. Basically a bidirectional event driven communication.
    Will you please suggest me on how to proceed with that?

    And about the new design, the problem is that the board I am using is Rev C, and as those boards supports the SDK only upto v2.30 i won't be able to use the new updated  TIDA-010024.

    Thanks and Regards,
    Kartik.

  • Kartik, 

    The software example uses a single API of "uip_udp_packet_send_post" to send data. The debug_push or debug_poll applications only change the sequence of message exchanges. To send message to a specific node, you need to know the destination port and IP address. You can find some code lines in the example to implement this. The UDP port is defined in udp_simple_socket_open at initial. The remote and local ports defined here. The root node is UDP server and the end-node is UDP client. 

    Since the REV E includes a few enhancements such as ROM code (so saving flash) and the new example improves software stability, I would strongly recommend you to move to the REV E based solution. You can check out the REV E EVM from TI store. Sorry for inconvenience. 

    Regards,

    Wonsoo 

  • Hello,
    First of all sorry for my late reply.

    I went through both Poll and Push code but i'm still not sure about the data sending.
    For eg- I used Push mode and traced the data being sent to read_meters() in simple_udp_meters.c.
    But then I tried sending a different value and found that the Node only took hex and Debug_ROOT_Push mode displayed only those hex values. I tried sending out the string in "msg->reserve" but it was not displayed on the root side.

    So coming to the question, can you please help me in knowing how can i modify the code to send a custom string data and receive the same on the Root side respectively.

    Thanks,
    Kartik.
  • Hi Kartik, 

    The PUSH and PULL examples provide code examples to send, receive and echo-back. The display format can be changed with the printf options.  

    You can review the "print_recv" function to see how an entire received packet can be printed-out (int the PUSH root example). If your issue continues, I would recommend you to run a CCS debug mode with breakpoints. Please, search for code composer studio on TI.com to find details on how to run the debug mode. 

    Regards,

    Wonsoo