This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

IWR1642BOOST: IWR1443BOOST and IWR1642BOOST

Part Number: IWR1642BOOST
Other Parts Discussed in Thread: UNIFLASH, IWR1443BOOST,

Hello TI Technical Team,

We want to integrate our SDK with people counting hardware xWR1443 EVM and xWR1642 EVM for sending calculated people data to the cloud.
We have understood from technical document mentioned on TI website: We need to download Code compress studio to install firmware on the device and we can see data on mmWave Studio software also we can visualize data using Matlab.
Are we right?

Questions:
1) How can we take calculated people data?
2) Can we integrate our SDK on your mmWave Studio software for a device to cloud communication?
3)Can we parse UART stream with annotation of Frame Header and TLVs? or It will only parse by your software mmWave Studio?
4) Can you guide how we can send data from xWR1443 EVM and xWR1642 EVM to Azure IoT hub?

Regards,
Paras

  • Hi Paras,

    You do not see CCS to flash the device, you will need Uniflash. To edit and recompile the software, you will need Code Composer Studio.

    1) The people Counting data is sent to the GUI (which comes with the software). By pressing the "EXIT" button, you can store the data in a file called FHIst.
    2) Software for our device will need to be compiled on our SDK. You can modify existing software by downloading Code Composer Studio, which will come with a compiler.
    3) See the task_mbox.c file in the People Counting Source code to see how the TLV is constructed. You can parse this with any device connected to UART.
    4) The IWR devices have plenty of communication interfaces: UART, I2C, SPI etc - you can use any of these to communicate with another device.

    Regards,
    Justin
  • Hello Justin,

    Thank you for reply.

    We understand Code Composer Studio is for editing, compiling and generating .bin file. Uniflash will flash .bin file on IWR1642BOOST and IWR1443BOOST device.

    We understand, we will receive UART steam with any other device after assinging serial communication parameter like COM-Port and baud rate.

    In Example of UART stream with annotation of Frame Header and TLVs:
    > dev.ti.com/.../
    We will receive UART stream as Frame Header, Point Cloud TLV, Target Object TLV, Target Index TLV.

    Questions:
    1) Can you explain UART stream format?
    2) Where we are receiving people count data in UART stream for above example? so that we can parse and directly get people count number.
    3) Can you share example { like: Device UART string in Hex } > Conversion formula using URART string for poeple count > Total People count number.

    Regards,
    Paras
  • Hi Paras,

    The user's guide for People Counting goes over the data format. See the Data Format section.  This should answer your questions.

    Regards,

    Justin

  • Hi Justin,

    We have seen data format disciption.

    In Example UART stream with annotation of Frame Header and TLVs:
    Can you comfirm Target Index TLV string which is highlited by Pink colur:
    08 00 00 00 0A 00 00 00 00 00
    and
    08 00 00 00 0B 00 00 00 00 00 00
    used for people count?

    If yes, then how we get people count integer number from below Target Index TLV UART stream? What is conversion formula ?
    08 00 00 00 0A 00 00 00 00 00 and
    08 00 00 00 0B 00 00 00 00 00 00

    If no, then where we will get people count in UART stream?
    In Fram header, Point Cloud TLV or Target list TLV ?

    How we get people count integer number from Fram header, Point Cloud TLV or Target list TLV ? How we convert HEX steam in real people count value ?

    Regards,
    Paras
  • Hi Paras,

    If the header starts with '08', it is a Target index TLV - these are used to associate points with Tracked targets in the visualizer. The Target Index TLV will not directly give you the number of People - for that, you will need the Target List TLV, which starts with '07'.  To get the number of people, find the length, which is the second 4 bytes of the TLV header, subtract 8 from the length (TLV header is 8 bytes, and this value is contained in length), then divide the remaining size by 68, which is the size of each target.

    Regards,

    Justin

  • Hi Justin,

    Thank you for UART stream explanation and sharing conversion formula. We will parse and convert using Raspberry Pi 3.

    As per our understanding in Example UART stream with annotation of Frame Header and TLVs:

    1) Second 4 bytes of the TLV header is:
    D4 00 00 00 (Hex) = 212 (Decimal Value)

    2) Subtract 8 from the length:
    212 (Decimal Value) - 8 = 204

    3) Divide the remaining size by 68:
    204/68 = 3

    Answer: People count = 3

    Is this correct answer? Are we right?

    If we understood you wrongly then please share an example with people count answer using Example UART stream.

    Regards,
    Paras
  • Hi Paras,

    This is correct. 

    Regards,

    Justin

  • Hi Justin,

    Thank you for confirming our calculation.

    If there are 5 people in the room then as per above calculation with reserve engineering, we'll get hex value 15C. Are we right?

    If we correct then what will be the receiving string for people count?
    1) Will the String be 15 C0 00 00?
    2) Will the string be 15 0C 00 00? or
    3) You tell us.

    If we are wrong then share a hex string example for people count of 5, 10, 15 and 19.

    Regards,
    Paras
  • Hi Paras,

    Here is the example for 5 people -
    5 targets * 68 bytes per target = 340 + 8 bytes for header = 348 = 0x15C = 00 00 01 5C
    There will be 4 bytes of data to specify the type = 0x07 = 00 00 00 07
    All data is little endian, so the byte order will be backwards

    8 bytes of header should look like: 5C 01 00 00 07 00 00 00.

    Regards,
    Justin
  • Hi Justin,

    Thank you for your help.

    We are resolving this issue for a couple of days.

    If we have more technical queries then we'll get back to you and re-open this ticket.

    Regards,
    Paras
  • Hi Paras,

    As the current issue is resolved, I will close this thread - single issue threads make it easier for other users to find an answer to their question. 

    Feel free to open another thread when you have another question.

    Regards,

    Justin