m6c7l/pymmw

Can't get auto reset and force handler to work

TimHemmecke opened this issue · 2 comments

Hi,
I'm trying to use this toolbox to read from my IWR6843ISK and IWR6843AOPEVM and i do have an MMWAVEICBOOST board available.
Everything works splendid as long as i press the reset button myself, but for further use I'd like to get the remote reset to work with either combination of my boards. I also assume that forcing a handler will achieve the same goal.

I tried using an unchanged copy of this repo under Win10 and Ubuntu 20.04.2 LTS from the command line inside a conda env, which i double checked on both systems to meet the requirements specified in the readme, and under both systems everything works great if i press the reset button.

In any case in no combination of my radars with and without the BOOST board attempt to reset when starting pymmw.py .
Also I'm not sure which argument to pass to -f, i tried different variations of x8_mmw but none seemed to work (handler not supported).

I tried looking through the code to find solutions to my problems, but nothing i tried produced the wanted result.
I would highly appreciate if you could point me to the right direction regarding reset via XDS or FTDI.

Thank you

m6c7l commented

Hi,
which firmware are you using? Forcing a handler is only needed if using a custom firmware with a non-standard welcome message. Did you connect the FTDI port of the carrier board to the PC?

Thanks for the reply,
the firmware i am using is the out of the box demo located at TI's mmwave_industrial_toolbox_4_8_0/labs/out_of_box_demo/68xx_mmwave_sdk_dsp/prebuild_binaries/xwr68xx_mmw_demo.bin, creating the welcome message when pressing reset:

******************************************
xWR68xx MMW Demo 03.05.00.04
******************************************

[...]
while i was writing this i redid each step and ended up fixing my problem (when using Linux).
I noticed that under my Linux system it still said (i) ports usb_discover The device has no langid (permission issue, no string descriptors supported or device error) even though things worked when i pressed the reset button, so i looked into my rules and found i assigned them to a group and put my user into it, which was the solution i found when i looked up what the thing with the rules.d was under Linux.

So in the end all i would have needed to do was to rename the example you gave in the the readme to 99-pymmw.rules (from 99-mmwave.rules) and specifically not assign them to a group like "plugdev".

Result of that is, that with the Boostboard, port discovery and auto reset are working now.
Seeing that it is an OS specific problem i'm pretty sure i installed the FTDI driver incorrectly under Windows...
What we did in the meanwhile as a workaround was to use the boostboard solely for the reset capability and captured from the ISK directly via its USB port, using a hardware button to jump the reset pins on the BOOST board (having the ISK in standalone mode still enables reset via 60-pin, if you switch some of the pins of the boost board around).

Anyway, is there a trick to installing the FTDI drivers under Windows or do i need some specific version?