Products
-
-
- Accessories
- Breakout boards
This is an old revision of the document!
This page describes the TDoA anchor protocol V2.
The protocol is designed to be used with 8 anchors. In a TDoA system the tag will achieve much better positioning inside the anchor convex hull, so using 8 anchor allows to get a parallelepiped convex hull.
The anchors are addresses from 0 to 7.
The protocol is using TDMA to transmit the packets. The anchor 0 is the TDMA master, other anchors are synchronized on it, this means that if Anchor0 fails or cannot be received by an anchor, the anchor will stop transmitting and listen for Anchor0.
The time slots length are 2ms and there is 8 time slots per frame. The frame length is 16ms. Each anchor is allowed to transmit in the the timeslot corresponding to its address. Anchors transmits early in the timeslot.
There is only one packet format. This packet is sent at the begining of each time-slot by the anchor allowed to transmit in the timeslot.
typedef struct rangePacket_s { uint8_t type; uint8_t seqs[NSLOTS]; // Packet sequence number of the timestamps uint8_t timestamps[NSLOTS][TS_TX_SIZE]; // Relevant time for anchors uint16_t distances[NSLOTS]; } __attribute__((packed)) rangePacket_t;
Assuming the current anchors is of ID anchor_id