Skip to content

Conversation

niamiot
Copy link

@niamiot niamiot commented Dec 7, 2016

  1. lib.py
  • create "getDeviceCirData" method to obtain the CIR buffer of the device. According to POZYX_CIR_DATA datasheet, This take as parameters: CIR buffer offset and data length. The output fill a buffer of 98 bytes.

  • create "getDeviceCir" method to aggregate the CIR buffers. This create the aggregation of multiple CIR buffers into a larger buffer. Real CIR coeff can be retrieve by taken even number index of the buffer whereas imaginary CIR coeff can be retrieve by taken odd number index.

  1. generic.py
  • create a "Buffer" class to handle the CIR buffer. This is a simple extension of the SingleRegister class handling list as value
  1. /tutorials
  • create a get_cir.py example to demonstrate the CIR obtention procedure.

@tfrost4
Copy link

tfrost4 commented Jun 3, 2022

Hello,
I'm writing to you because I'm currently working with pozyx trying to get the CIR information from registers. The scenario is very straightforward: to read the CIR info after doing a ranging between two nodes.
I found your code and I have updated my pozyx library. Code works fine except when using a value for data_length greater than 33. Beyond this value (34, 35, ..., 49), when doing two or three successives ranging, a "Ranging failed" message appears. Have you experienced dealing with this issue?
Thanks you for your answer.

T.

@hegxiten
Copy link

Thanks for the helpful information and I can confirm the same issue on firmware v2.2. I guess you can just live with the smaller data_length right? Couldn't think of a better solution other than putting an Arduino shield on it.

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

Successfully merging this pull request may close these issues.

4 participants