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/LAUNCHXL-CC1350: how can i add some calculation method for find distance based on RSSI

Part Number: LAUNCHXL-CC1350
Other Parts Discussed in Thread: CC1350

Tool/software: Code Composer Studio

Dear Ti,

now i am working with CC1350 for find ibeacon distance based on node RSSI value, so i choose Rfwsnconcentrator and node example for my need,

here i have a some issue, i add this line to Concentrator task.c for calculate distance based on node RSSI

uint8_t distance= 10 ^ ((-32 – (latestRssi))/(10 * 2));

but this get some error, i am a newbie to Ti so i can't solve this error, can you help to solve this error,

subdir_rules.mk:30: recipe for target 'ConcentratorTask.obj' failed
"../ConcentratorTask.c", line 244: error #7: unrecognized token
"../ConcentratorTask.c", line 244: error #18: expected a ")"
"../ConcentratorTask.c", line 244: warning #179-D: variable "distance" was declared but never referenced
2 errors detected in the compilation of "../ConcentratorTask.c".

thank you

kannannatesh

  • It might just be some copy-n-paste error, but the dash between 32 and ( is not the usual ASCII character for dash, but something else.  Try changing that character to the same dash that is just before 32.  

    Thanks and regards,

    -George

  • Please let us know whether my suggestion resolved your problem.

    Thanks and regards,

    -George

  • Dear george,

    sorry for the delay, i am busy in another project so i can't check that and onething -32 is my RSSI value for 1 feet distance so can't change the value if i change the negative to positive value my output is comes wrong. 

    with regards

    kannannatesh

  • My point is simpler than that.  I'll say the same thing differently.  This source line ...

    Natesh kannan S61 said:
    uint8_t distance= 10 ^ ((-32 – (latestRssi))/(10 * 2));

    ... contains a non-ASCII character.  To be precise, it is the dash between the constant 32 and the next ( .  Change that to the normal ASCII character for dash.  

    Thanks and regards,

    -George

  • You missed another problem, George. ^ is not the exponentiation operator in C. I doubt that he wants to do a bit-wise exclusive OR. 8^)
    uint8_t distance= pow(10 , ((-32 – (latestRssi))/(10 * 2)));

    But I have little hope that this will work as a practical distance measurement method.