DWM1001 dev (Mdek) CIR data problem

Hello everyone.

I’m trying to get CIR data from DWM1001 dev, by Raspberry pi 3 B
and dwm1001_host_api software that provided by Decawave.

The data that I got in the log file looks like that:

[color=#ff3399]dwm_loc_get(&loc):
[/color]
[color=#ff3399] SPI: Tx 2 bytes: 0x0c00[/color]
[color=#ff3399]SPI0: Rx step 1: [/color]
[color=#ff3399]SPI0: Wait 10 ms…[/color]
[color=#ff3399]SPI: Rx 1 bytes: 0x3d[/color]
[color=#ff3399]SPI0: Rx step 2: [/color]
[color=#ff3399]SPI0: Wait 10 ms…[/color]
[color=#ff3399]SPI: Rx 61 bytes: 0x400100410d000000000000000000000000004929029fd28b08000064cfffffff00000000fc080000648a575e00000064dc050000d0200000fc08000064[/color]
[color=#ff3399]SPI0: Wait 10 ms…[/color]
[color=#ff3399]SPI0: Received 61 bytes, in 20 ms OK[/color]
[color=#ff3399][0,0,0,0][/color]
[color=#ff3399]0)0xd29f[-49,0,2300,100]=2187,100 [/color]
[color=#ff3399]1)0x578a[1500,8400,2300,100]=94,100[/color]
[color=#ff3399]Wait 1000 ms…[/color]
[color=#ff3399]dwm_loc_get(&loc):[/color]
[color=#ff3399]SPI: Tx 2 bytes: 0x0c00[/color]
[color=#ff3399]SPI0: Rx step 1: [/color]
[color=#ff3399]SPI0: Wait 10 ms…[/color]
[color=#ff3399]SPI: Rx 1 bytes: 0x29[/color]
[color=#ff3399]SPI0: Rx step 2: [/color]
[color=#ff3399]SPI0: Wait 10 ms…[/color]
[color=#ff3399]SPI: Rx 41 bytes: 0x400100410d000000000000000000000000004915019fd2d108000064cfffffff00000000fc08000064[/color]
[color=#ff3399]SPI0: Wait 10 ms…[/color]
[color=#ff3399]SPI0: Received 41 bytes, in 20 ms OK[/color]
[color=#ff3399][0,0,0,0][/color]
[color=#ff3399]0)0xd29f[-49,0,2300,100]=2257,100[/color]

The question is:
On datasheet the CIR register is 4064 bytes " 0x25 4064 RO ACC_MEM Read access to accumulator data "
and on the log file as you can see it giving me only 41/61 bytes (20 bytes per connected anchor) and there are no changes in the data even if I am moving the anchors.
am I missing something?
Is this data really the CIR?
Any advice, please!!

Hi MLEV,

It is not possible to extract the CIR when using PANS software.

If you need the CIR, you should develop a custom firmware.

The dwm_loc_get is an api to retrieve the location data when using the PANS firmware. It is not meant to provide the CIR.

Thank you,
Regards
Yves

Thank you, Yves!
Is there a firmware that I can start from doing my changes?
Some source C code?
I found C code in:
DWM1001_DWM1001-DEV_MDEK1001_Sources_and_Docs_v8\DWM1001\Source_Code\dwm1001_on-board_package_v1p0\dwm
Is it the right one?

You said there is no possibility to get register data with PANS software. What about PANS 2.0? It will also be impossible?

Hi [color=#333333][size=small]MLEV,[/size][/color]

[color=#333333][size=small]It is not possible for PANS and any derived version.[/size][/color]

[color=#333333][size=small]The [/size][/color][color=#333333][size=small]dwm project is a user application project within PANS and you will not be able to read the accumulator from [/size][/color][color=#333333][size=small]t[/size][/color][color=#333333][size=small]here.[/size][/color]

[color=#333333][size=small][color=#333333][size=small]You need to develop a fully custom firmware but you will lose all the location stack implemented with PANS (concept of “anchors”, "tags).[/size][/color][/size][/color]

[color=#333333][size=small][color=#333333][size=small]See the examples below for a C project implementing TWR on the dwm1001:[/size][/color][/size][/color]

[color=#333333][size=small][color=#333333][size=small]https://github.com/Decawave/dwm1001-examples[/size][/color][/size][/color]

[color=#333333][size=small][color=#333333][size=small]Thanks[/size][/color][/size][/color]
[color=#333333][size=small][color=#333333][size=small]Yves[/size][/color][/size][/color]

Hi Yves,
I understand that I need to develop new firmware, but my question is about existing firmware.
Can I get it somewhere (I mean source code) or it’s business secret of DW?

And where can I find the guide for changing the firmware?

Hi [color=#333333][size=small]MLEV,[/size][/color]

[color=#333333][size=small]We don’t provide the source code for PANS firmware.[/size][/color]

[color=#333333][size=small]The only existing firmware you can start from would be the simple example on the git repository I sent before :[/size][/color]
[color=#333333][size=small][color=#333333][size=small][size=small]https://github.com/Decawave/dwm1001-examples[/size][/size][/color][/size][/color]

[color=#333333][color=#333333][size=small]But it is not a full RTLS stack so depending on what your final [/size][size=x-small]application[/size][size=small] is it may no suit.[/size][/color][/color]

[color=#333333][size=small]Thanks[/size][/color]
[color=#333333][size=small]Yves[/size][/color]