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.

Computer Interfacing with SmartRF05EB

Other Parts Discussed in Thread: CC2530, CC2530EM, CC2511, STRIKE

Hello,

I am trying to write software for the SmartRF05EB with the CC2530 SoC. I am going to be transmitting data between the 2 boards and the Rx board will be plugged into a computer through either USB or RS232. The data that is transmitted will need to be displayed on the screen and utilized in other programs.

My question is this:

How can I transfer this data (that has been wirelessly transmitted between boards) to the computer through USB or RS232?

  • Matthew,

    Take a look at this application note http://focus.ti.com/general/docs/litabsmultiplefilelist.tsp?literatureNumber=swra306

    It contains a sample project which interfaces to the host PC via RS232 and transmits data across a radio link.  It should provide you a decent starting point for development of your own application and can be used on the SmartRF05 board with a CC2530EM board.

    As far as writing a USB driver, it is possible as the SmartRF05 board uses a CC2511 to communciate with the debugger via USB.  In doing so, you would use the MCU debugger port and another SmartRF05 board or a CCDebugger pod to do your debugging with.  However, there are less expensive platforms to do USB stack development on such as the CC2511 USB dongle reference design, viewable here http://focus.ti.com/docs/toolsw/folders/print/cc2511usb_refdes.html.

    Regards,

    Jim

     

  •  

    Hi

    I used the sample Project given in DN117 with Smart RF05EB Rev.1.8. and it worked. Now am trying to use the same software with Smart RF05EB Rev. 1.7. but there is no transmission between the PC and the EB. I used the following settings for the HyperTerminal, connected using COM1:

    Bps: 115200; Data-bits:8; Parity: None; Stop-Bits: 1; Flow-Control: Hardware; 

    But there is no message in the Hyperterminal. Kindly, explain where I have gone wrong.

    Regards,

    Ram

     

  • Ram,

    The most likely issue is a different setup of the communciations path between the 1.7 and 1.8 EB's  Try looking at the schematics for both (you can see them in this document http://focus.ti.com/lit/ug/swru210a/swru210a.pdf) and follow the path from the RS232 transceiver back to the EM board connectors.  You will need to make sure the USB interface is either disabled or disconnected along this path.  Sometimes different configurations for the default zero ohm resistors and header jumpers are used.

    It is possible that you will need to change the UART_NUMBER and UART_LOCATION parameters but I don't think anything changed between these two versions of the cards which would make that a requirement.

    Another option for debugging this would be to repeatedly call tx_send_wait so that you will be sending data out the serial port all the time.  Then you can trace the signal from the radio to the RS232 transceiver and find where it is getting lost.

    Hope this helps,

    Jim

     

  • Jim,

    1. The problem was with the RS-232 cable, though it was a new one just out-of-the shelf.  I tried another old cable and it worked. Does it have to do with any of the Pin-Outs configurations in the Cable? 

    2. And, now I tried to send an integer through the UART and displayed it in the Hyper-Terminal. But, I guess I get only the ASCII values in it.  Is there a way of using "%d" or any data-specifier along with the tx_send command, so that I get the exact Integer value rather than those ASCII figures? 

    Please shed some light on to it.

    Regards,

    Ram

  • Ram,

    The cable can make a difference, especially if you get hold of a null modem cable.  Usually this will have to of the same ends on it though.  Some cables only populate a couple of the pins (which is usually just the TX and RX signals) thus if you have hardware handshaking on, the default state may not allow for data transfers.

    As far as sending formatted printing to the UART, you can use sprintf which will format the data into a string which you can then hand to tx_send or tx_send_wait.  You can also use scanf on data received from the UART.  I didn't feel it was necessary to re-invent the wheel.

    Regards,

    Jim

     

  • Jim,

    Yes, sprintf just dint strike me.Thanks a lot. It works perfect now. 

    Regards,

    Ram