• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Low Power RF & Wireless Connectivity » Low Power RF Proprietary Software & SimpliciTI Forum » IOCTL_OBJ_RAW_IO in SimpliciTI
Share
Low Power RF & Wireless Connectivity
  • Forums
  • Announcements
  • Files
  • E2E Wiki
Options
  • Subscribe via RSS

IOCTL_OBJ_RAW_IO in SimpliciTI

IOCTL_OBJ_RAW_IO in SimpliciTI

This question is not answered
SkyBlue
Posted by SkyBlue
on May 02 2012 09:59 AM
Prodigy225 points

0876.RAW_IO_PING.psdHi there,

I am trying to test the IOCTL_OBJ_RAW_IO (IOCTL_ACT_WRITE/ IOCTL_ACT_READ) capabilities to the AP_as_Data_Hub example (for CC2510 AP and ED) of the SimpliciTI stack. To do this, I added the following code piece to the “static void linkTo()” function of the CC2510-End Device project (main_manyEDs_autoack.c). This is simply to implement a Ping to the AP. The code on the AP side is not changed. The purpose of this code piece is to check the IOCTL_OBJ_RAW_IO (IOCTL_ACT_WRITE/ IOCTL_ACT_READ) capabilities in this AP_as_Data_Hub configuration. If the Ping is successful, the LED2 on the dev board (SmartRF04EB with CC2510EM) will toggle.

      // ++++++++++++++++++++++++++++

      // Test code for RAW IO (start)

      // ++++++++++++++++++++++++++++

      pAddr.addr[0] = 0x01;     // This is the address of the AP

      pAddr.addr[1] = 0x56;

      pAddr.addr[2] = 0x34;

      pAddr.addr[3] = 0x12;

     

      ioctl_info.send.addr = &pAddr;

      ioctl_info.send.msg  = msg;

      ioctl_info.send.len  = sizeof(msg);

      ioctl_info.send.port = SMPL_PORT_PING;

 

      /* fill in msg */

      msg[PB_REQ_OS] = PING_REQ_PING;

      msg[PB_TID_OS] = sTid;

 

      SMPL_Ioctl(IOCTL_OBJ_RAW_IO, IOCTL_ACT_WRITE, &ioctl_info.send);

 

      ioctl_info.recv.port = SMPL_PORT_PING;

      ioctl_info.recv.msg  = msg;

      ioctl_info.recv.addr = 0;

 

      NWK_CHECK_FOR_SETRX(radioState);

      NWK_REPLY_DELAY();

      NWK_CHECK_FOR_RESTORE_STATE(radioState);

 

      if (SMPL_SUCCESS == SMPL_Ioctl(IOCTL_OBJ_RAW_IO, IOCTL_ACT_READ, &ioctl_info.recv))

      {

        toggleLED(2);

        sTid++;   /* guard against duplicates */

      }

      // +++++++++++++++++++++++++

      // Test code for RAW IO (end)

      // +++++++++++++++++++++++++

To avoid any complication, I disabled the FREQUENCY_HOPPING, FREQUENCY_AGILITY and the radio sleep function of the End Device in the code. No other change has been made to the whole project. I run the project and found that the AP and ED work correctly on toggling the LEDs related to the autoack messages. However, the newly added Ping command using IOCTL_OBJ_RAW_IO (IOCTL_ACT_WRITE/ IOCTL_ACT_READ) doesn’t work. I cannot see the LED2 toggle on the End Device. I also used a packet sniffer to monitor the OTA packets and found that the Ping message is actually successfully sent by the ED and received/echoed by the AP (as shown below). 

P.nbr 1 – 4 show the Join/Link of the End Device (78 56 34 12) to the AP (01 56 34 12).

P.nbr 5 - 6 show the autoack messages from ED to AP by pressing Button 1.

P.nbr 7 – 8 show the Ping sent from ED to AP and echoed back from AP to ED.

 

It seems that the Ping is successful. So why can’t I see the LED2 toggle on the End Device?

 

I attached the original packet sniffer file here for your reference. The source code is also attached here for your reference. Please note that I am using IAR EW8051 v8.11. The two dev boards (AP and ED) are from the CC2510-CC2511 DK rev 2.2.1 (SmartRF04EB ver 1.9).

 

Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • SkyBlue
    Posted by SkyBlue
    on May 02 2012 10:01 AM
    Prodigy225 points

    Here are the files for packet sniffer and the source code.

    5127.RAW_IO_PING.psd

    7026.SimpliciTI-IAR-1.2.0_IAR EW8051_v8.11-Raw_IO_Ping.zip

     

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use