Before i begin, i apologize my low Eng level. plz understand me
![:-) :)](./images/smilies/icon_e_smile.gif)
Well... i'm trying to use node as tag. And i already used the node as TWR tag. But i have to make 2 or moreover drones... So i can't use TWR because of packet collision. So i tried using node as Sniffer mode. and i got long value.
So i saw the TDOA protocol V2(i set Anchor node as TDOA2)
---------------------------------------------------------------------------------------------
typedef struct rangePacket_s {
uint8_t type;
uint8_t seqs[8]; // Packet sequence number of the timestamps
uint32_t timestamps[8]; // Relevant time for anchors
uint16_t distances[8];
} __attribute__((packed)) rangePacket_t;
---------------------------------------------------------------------------------------------
After saw this, i thought there was distance values in the very long value.
and i also saw the code in the lps node firmware - uwb_sniffer.c
---------------------------------------------------------------------------------------------
for (int i=0; i<(dataLength - MAC802154_HEADER_LENGTH); i++) {
printf("%02x", rxPacket.payload);
}
---------------------------------------------------------------------------------------------
In conclusion, i realized that i can get distance when rxPacket.payload[41]~[56] (41 <= i <= 56)
So after changing the code, i got value like this
---------------------------------------------------------------------------------------------
From 01 to ff @b0 !! 974e09ce: 02 81 #00 00 #00 00 #00 00 #00 00 #00 00 #00 00 #00 00 #
From 00 to ff @b0 !! cf4d86e3: 00 00 #0e 81 #00 00 #00 00 #00 00 #00 00 #00 00 #00 00 #
---------------------------------------------------------------------------------------------
i think 02 81 is Diff_distance 00 and 01 node and 0e 81 is also Diff_distance 00 and 01.
but i have no idea How to change this value into meter or mm.