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.
I have a ZigBee module of some other manufacturer with a TI CC2530 chip inside it. I need to know how I can get the RSSI values from it. For now I can only give commands and send data in hex format from a serial monitor. The manufacturer have not specified any command to get the RSSI.
I went through some of the threads here and found that I can change the AF.h file in Z-stack to get the RSSI. I already downloaded the TI Z-stack. I want to know what I should change in the AF.h or any other file and how I can write those files into my chip? What software should I use? Do I need to use the CC debugger also?
Any documentation or a step by step guide for this would be really valuable.
Thank You
Hi Yikai,
Thank you for the reply. What should I change in the afBuildMSGIncoming to get the RSSI? Any documentation regarding this?
And how do I write this code onto the module?
Thanks
Yes. But I have this module which uses the TI CC2530 where I can only send the data using a Serial Monitor in Hex format as specified by the manufacturer.
I need to know how I can access the CC2530 chip from my computer to get the RSSI. Do I need to use any TI software like IAR Workbench or SmartRF to write this onto the chip?
Thanks
Hi Sehan,
Looking at the Monitor and Test API Guide you can see that the RSSI is returned by MAC_DATA_IND and LinkQuality is returned by AF_INCOMING_MSG. MT_AF_CB_FUNC is defined in the Z-Stack 3.0.2 ZNP project by default but I don't know which version you are using. MT_MAC_CB_FUNC is not defined so as YK mentioned you would need to modify the firmware and program the CC2530 accordingly.
Regards,
Ryan
Hi Ryan,
Is there a way that I can have a look at the firmware that is already in my module? Because for now, I can only send and receive data as hex strings from a Serial Monitor.
Thanks
Sehan
It's not feasible to guess what firmware is running on your module. However, if you know and can post what hex strings are sent and received, maybe we can guess accordingly.
This looks like proprietary command. You might need to contact who passes you the document.
Ok. Another question is can I get the RSSI value and PER from my module using SmartRF Studio 7 if I connect it through a CC debugger to my PC?
Thanks
Hi Yikai,
As you said the rssi is already defined in afBuildMSGIncoming. I need to know how I can call this function? I don't need to flash the firmware if it is already defined right? Can I use an arduino to call this function?
I'm pretty new to this and i'm not that well equipped with programming too. So your guidance is valuable.
Thank You
afBuildMSGIncoming is a C function in Z-Stack so you have to run Z-Stack example on your CC2530 to get the rssi in afBuildMSGIncoming.
There are Z-Stack 3.0 Sample Application User's Guide.pdf and Z-Stack 3.0 Developer's Guide.pdf in Z-Stack document folder. You can refer to them to run examples.
Hi Sehan,
You may be looking for the ZNP solution with a MT interface communicating through a host processor or Z-Tool, here is a recent similar thread.
Regards,
Ryan
Hi Ryan,
Well what I want to do is get the RSSI or LQI values from my CC2530. Currently, I just use a serial interface for sending hex strings in order to send/receive data and obtain other information(Setting PAN ID/Setting Channel etc). But the manufacturer has not specified any hex string/command to obtain the RSSI values.
I looked at the Z-stack 3.0 and as both of you suggested a C function is there which has defined the RSSI/LQI in AF. Now, I need to know how can I call this function or access the values. I'm aware of using the SmartRF Studio and obtaining the value but I do not have a CC debugger or a SmartRF development board with me right now. The modules I got come with Coordinator and Router firmware pre programmed and I expect it to have some version of Z-Stack running. Is there any way that I can use to access these RSSI values without going for a cc debugger? Can I use an arduino or Raspberry Pi? Or is it possible to do this with Z-tool?
Thank you
Sehan
Hi Sehan,
If you are using a serial interface with hex string commands then it is possible that you are already using the Monitor and Test Interface in which case you should be investigating use of the ZDO_MGMT_LQI_REQ command like I was leading Tessa through on the previously linked thread. Otherwise you only have the commands available from the third party module and pre-programmed software, of which we cannot provide any further assistance.
Regards,
Ryan