bigheadG / mmWave

mmWave SDK examples based on Batman Kit mmWave Sensor module
http://www.joybien.com
122 stars 30 forks source link

Support for IWR6843ISK and AOP #13

Closed talha196 closed 2 years ago

talha196 commented 3 years ago

Hello I have found these applications to be a lot useful than what comes out of the box for TI Eval boards. Does these visualiser applications support the TI eval boards or are these only compatible with your customised eval board?

bigheadG commented 3 years ago

Some example compatible with TI Eval Board if you found the (raw data)data structure is the same as TI's user guide data structure It may compatible.

talha196 commented 3 years ago

Thank you for you response. I have noticed from your application code that you don't send the configuration every time at the start of the application. Is chirp configuration hard coded in your evaluation module or is there a separate script to hand the re configuration?

bigheadG commented 3 years ago

The EVM firmware had been written with hard coded method in the module It is configurated automatically when module power on and could not be reConfiguration in run time If you want to do chirp configuration by yourself please reProgramming by TI's prebuilt BINARY code ALERT: after rePromerammed with BINARY code the prevoius EVM firmware code will be erased!

talha196 commented 3 years ago

Thank You for your response. Could you tell what is the difference between the TRS and TMD lab. Can you share what are the gating, chirp, profile and the tracking configuration in this specific use case. Your specific configuration parameters will help me tune my sensor to my specific requirement

bigheadG commented 3 years ago

TRS (Traffic_Monitoring_Detection Roadway Sensing) Our TRS is new advanced version of TMD (a) Simple data output format by KeyData mode which running embeded TARGET algorithm within firmware (b) Set wanted specified Zone Area CLI Command by jb_zoneCfg from HOST via UART port(Baud 921600/8/N/1) (c) Added Recording and Playback data into file with CSV format
(d) Build up a TOOLKIT for engineer to access and analysis CSV record in forward and backward steps by rotary switch

Please see TRS's readme for more detail

talha196 commented 3 years ago

Hello 1) Regarding the TRS lab, as you mentioned what is the embedded TARGET algorithm? Where can I find you customised binaries to be flashed? Any documentation on TARGET algorithm? 2) I can see that you have customised CLI commands. Is there any documentation on your CLI commands? Thanks in advance

bigheadG commented 3 years ago

Reply on item 2:

V2015B CLI command for setting zone parameters V1.0 2021.04.20

(1) Command Syntax: jb_zoneCfg <0x0d> <0x0a>

(2) For Example: jb_zoneCfg 1.0 -0.5 8.0 10.0 70.0 -150.0 -0.01 using float F32 format on all parameters

(3) For Example: Zone Parameters flag := 1.0 // enable using new parameters see followings min_x := -0.5 // unit: m max_x := 8.0 // unit: m min_y := 10.0 // unit: m max_y := 70.0 // unit: m min_d := -150.0 // unit: Km / Hr max_d := -0.01 // unit: Km / Hr

(4) ALERT: should be pending 0x0d and 0x0a on the end of CLI command

talha196 commented 3 years ago

Hello. Any information about the TRS kit. The git readme.md file doesn't explain much about the header and the TARGET algorithm. Could you explain what is the TARGET algorithm

bigheadG commented 3 years ago
  1. Please refer URL for report target structure at the bottom of README.md See Reference 2. KeyDataProtocol: https://github.com/bigheadG/mmWaveDocs/blob/master/V20_TRS_Protocol_for_KEY_data_Project_V2015B01_pdf.pdf It may be fitted your request on HEADER issue

  2. The algorithm is based on DBSCAN(Density-based spatial clustering of applications with noise) for cluster category to group from POINT CLOUD to TRAGET The parameters of 'eps' and 'MinPts' will be tested for suitable values step by step on calling DBSCAN(PointCloud, eps, MinPts) see reference https://en.wikipedia.org/wiki/DBSCAN for detail

  3. Abstract algorithm (extracted from WiKi) The DBSCAN algorithm can be abstracted into the following steps: 3.1. Find the points in the ε (eps) neighborhood of every point, and identify the core points with more than minPts neighbors. 3.2. Find the connected components of core points on the neighbor graph, ignoring all non-core points. 3.3. Assign each non-core point to a nearby cluster if the cluster is an ε (eps) neighbor, otherwise assign it to noise.

talha196 commented 3 years ago

Hello Why is the order of the V7 packet different from the default one. For TI the posX, posY, posZ comes together while yours look as follows (tid,posX,posY,velX,velY,accX,accY,posZ,velZ,accZ) = struct.unpack('I9f', sbuf)

bigheadG commented 3 years ago

Some TI lab output data are like posX,posY,posZ and some are like posX,posY,velX..., when you use it you need to check the data structure first.