Can't get basic UCI python script to work, DMW3001CDK: uci.core.ProtocolError

Hello all,

I am trying to get the uci_uart_fira_test.py to work, referencing the DMW3001CDK_SDK_Developer_Guide_0.1.1.pdf, but everytime I try running it I get this error:
uci.core.ProtocolError: No response from the device (2s timeout)

This is the full output:

python3.10 uci_uart_fira_test.py 
HSSPITransport not registered
No response from the device (2s timeout)
Traceback (most recent call last):
  File "/home/pi/DMW3001CDK_Python_Scripts/uci/core.py", line 214, in command
    (rgid, roid, payload) = self.wq.get(timeout=2)
  File "/usr/local/lib/python3.10/queue.py", line 179, in get
    raise Empty
_queue.Empty

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/DMW3001CDK_Python_Scripts/uci_uart_fira_test.py", line 34, in <module>
    client.session_init(args.session_id, 0))
  File "/home/pi/DMW3001CDK_Python_Scripts/uci/v1_0.py", line 693, in session_init
    payload = self.command(Gid.UwbSessionConfig, 0, payload)
  File "/home/pi/DMW3001CDK_Python_Scripts/uci/core.py", line 218, in command
    raise ProtocolError(msg) from exc
uci.core.ProtocolError: No response from the device (2s timeout)

As you can see I am even using the recommended version of python, 3.10, i tried also with the latest version of python and get the same problem… I have 3 of these DWM3001CDK’s, all 3 have this issue… I flashed the ...DW3_QM33_SDK_CLI-FreeRTOS_0_1_1.hex that was included in the ZIP file for the source code, and I also tried various USB cables of varying length, but still get this error. I also tried doing this on a Raspberry Pi 4 and my local windows PC, still get same problem. I verified the port is correct as well.

I tried increasing the timeout to 10 seconds as well,

The red LED is blinking quickly, the green LED underneath that is always on, and when I run the python script, a blue LED on the bottom lights up, but then when I get this error it turns off. So I know serial comm is working for sure and the script is doing something…

Is there a more up-to-date firmware I should be using? Or is there a newer python script I should be using? The python script says Copyright (c) 2021 Qorvo US, Inc, is there a more modern one that may not have this issue?

Thank you!

Hello,

You are trying to use the python script which are using the UCI interface with the CLI binary ; these are not meant to inter-operate. You shall flash the UCI hex image to control the device from python scripts.

You may have missed it but we actually released a more recent version of the QM33 SDK: 1.0.0. If you go through the quick start guide and developer guide, it will explain how to flash and run a device.

We recommend you to use the most recent SDK, we’re not further supporting the version 0.1.1.

1 Like

Yes, thank you, I realized this later on. I now have a different issue that I will make another post about.

Thanks for your support