Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement TDoA anchor protocol 2.0 #17

Closed
ataffanel opened this issue Aug 28, 2017 · 1 comment
Closed

Implement TDoA anchor protocol 2.0 #17

ataffanel opened this issue Aug 28, 2017 · 1 comment

Comments

@ataffanel
Copy link
Member

The current TDoA protocol does not contain packet sequence number which makes it hard to verify TDoA integrity in case of lost packet on the tag side. A new TDoA protocol should then include packet sequence number.

Calculating the distance to other anchors and including it in the packet will also simplify a bit the tag implementation and could increase robustness to lost packet.

@ataffanel
Copy link
Member Author

Proposed packet format:

typedef struct rangePacket_s {
  uint8_t type;
  uint8_t seqs[NSLOTS];  // Packet id 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

  • type is 0x22
  • seqs[i]
    • If i == anchor_id Sequence number of the current packet
    • If i != anchor_id Sequence number of the latest receive packet from anchor i
  • timestamps[i]
    • If i == anchor_id Transmit time of the current packet expressed in current anchor clock
    • If i != anchor_id Receive time of the latest receive packet from anchor i expressed in current anchor clock
  • distances[i]
    • If i == anchor_id Reserved for future use
    • If i != anchor_id Time of flight between current anchor and anchor i in radio timer tick expressed in current anchor clock

ataffanel added a commit that referenced this issue Dec 5, 2017
It is now possible to set the anchor position while in TDoA2 mode
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants