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.

Location engine data formats



Hi,

I´m trying to adapt the example location-source for my project.

After looking through th source code and the datasheets I´m a bit confused. The data sheet says to write the RSSI-values

as absolute values from 40(best) to 95(worst). So if this is true I simply have to:

 

- subtract 45 from the RSSI-value read from a RF-packet

- multiply with (-1) to get rid of the negative-sign

-multiply by 2 to shift the value by one bit to fit the fixed point format (XXXXXXX.X) required by the datasheet

- make sure to cut off values beyond 95 respectively below 40

Of course those steps could be combined for simplicity.

 

In the example source however there is a completely different algorithmus with different offsets.

 

Second point is the data format of the positions.

Am I right that all positions (also the result calculated by the engine) are in meters, where the two LSbs represent the ammount of .25m steps?

And do I have to add this offset (X = (XLOCX - xmin +1) % ( xdelta+ 1) + xmin) ?  In my case the limits are 0,255 so this would result in a offset of:

(XLOC - 0 + 1) %(255 + 1) + 0 --> -1

 

To my set-up: The CHVER-register says "4" so I guess it´s the new revision with up to 16 reference-nodes. All nodes are whitin a range of about 4m which is too close I know, but the sample application provides reasonable positions in this set-up whereas my app tells me that I am at 30,20, right outside the office ;-)

 

Thanks in advance

Alex

 

  • first of all "Am I right that all positions (also the result calculated by the engine) are in meters, where the two LSbs represent the ammount of .25m steps?" yes :)

    But actually I stumbled across your post because I have a comparable project pending here.

    I want to use ZigBee to locate objects on the move and wanted to ask you if you perhaps have an idea how one could, in the location software, disable areas where the trackable object can't be, so that the measured position can be corrected to valid paths only?

  • Uh! Sounds tricky. I don´t believe that this is possible with the Location Engine itself.

    The parameters for narrowing the area of the blind nodes position are as far as I understood only to speed up the locating process.

     

    I would possibly create structs (boundarys for x and y) of "forbidden zones" and then check if the calucalted position violates

    one of these zones. Problem is that it would consume a lot of computing time. So maybe there´s a more elegant way ;-)

     

    Alex