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.

Linux/DRA71XEVM: DRA714

Part Number: DRA71XEVM
Other Parts Discussed in Thread: EVMX777BG-01-00-00, DRA714, TMS320DM6437,

Tool/software: Linux

Hi, team
I'm new to DRA714 platform and will want to only buy cpu board "EVMX777BG-01-00-00".First,I need to make jumper wire camera module to camera I/F(J5) of the cpu board.The camera module is ov10635.I plan to verify preview function from camera raw-data input,buffer processing and display output.My questions are:
1.Could you give me suggestion which demo code can be my reference or development's codebase?
2.If I want to call DSP API for calculation,can I refer to whcich software layer,folder or document?
3.I think the OS selection for RTOS and linux,can I refer to whcich software layer,folder or document?

Thanks a lot for all.

Best Regards,
Jacob Lin

  • Hi, team
    I download the "PROCESSOR_SDK_VISION 03_04_00_00" SDK for codebase but
    1.Could you give me suggestion which demo code can be my reference or development's codebase?
    2.If I want to call DSP API for calculation,can I refer to whcich software layer,folder or document?
    3.I think the OS selection for RTOS and linux,can I refer to whcich software layer,folder or document?

    Thanks a lot.
    Best Regards,
    Jacob Lin
  • Hi Jacob:
    For what I understand for your questions:
    1. The demo usecase singlecam display can fit you requirement, however, TI usecase in OV10635 can only support YUV but not 10-bit RAW data in OV10635. And TI only support BT601 in OV10635 but not BT656 mode inside the code. The schemeatic you can refer to VISION board for how to wire you camera to the J6Entry board.
    2. The VSDK is a link based application code in all CPUs. If you want to use DSP, you need to write you own algLink to use it.
    3. The OS selection should based on what you want to do in you product. The documents of Linux resides on the directory vision_sdk\docs\Linux, the BIOS documents reside on vision_sdk\docs\UserGuides.

    Regards,
    /ckhsu
  • Hi CK Hsu


    Thanks a lot for your response.
    1.Is the "demo usecase singlecam display" means
    "PROCESSOR_SDK_VISION_03_04_00_00/vision_sdk/apps/src/hlos/adas/src/usecases/vip_single_cam_openclframe_copy"?Then, how do I configure to make the sample code and test the execution file? Or is there any guideline?For image preview,For the purpose of image preview, I "just only" have a J6Entry board(EVMX777BG-01-00-00 or cpu board) and can focus on the sample code to check the regarding camera module(ov10635,aptina...) to interface of J6Entry board.

    2.I plan to use a camera module(e.g. ov10635) and the interface includes camera_data,hsync,vsync,clock,i2c_data,i2c_clk....Then,I will make jumper wire the camera module to J6Entry board J5(camera_data,hsync,vsync,clock,i2c_data,i2c_clk...) and set YUV format output by I2C command.For demo usecase,is the J5 interface OK? Or do I still need to follow the camera interface from Vision board to J6Entry board?

    3.If I want to use DRA714-DSP over RTOS,how do I write the alglink to use it or use it? Any guideline?Because I have a image algorithm
    and run it on DSP-TMS320DM6437 over RTOS,how do I port my algorithm from TMS320DM6437 to DRA714?

    Thanks so much again.

    Best Regards,
    Jacob Lin

  • Hi Jacob:
    1. The demo usecase should be vision_sdk\apps\src\hlos\adas\src\usecases\vip_single_cam_sgx_display on Linux platform and vision_sdk\apps\src\rtos\usecases\vip_single_cam_view on Bios platform.
    2. Please refer to www.ti.com/.../sprr225.pdf, page 18 for OV10635. As I tested on the J6Entry with VISION board before, althrough TI connect 10 bit data lines but it only uses 8 bits D0-D7 in the PDK called by the usecase. So you have to connect D0-D7 and VSYNC/HSYNC/PIXELCLK and I2C CLK/DATA to let the SDK set the OV10635 in 8bit BT601 mode. I am not a TI emplyee so I don't know what is J5 interface.
    3. The alglink code can be found in the directory:vision_sdk\apps\src\rtos\alg_plugins. Since you are porting an old C64x+ code from DM6437 to J6, I personally suggest you to take a reference on framecopy alg-plugin because it is simplest example among the plug-ins.

    Finally, if your old board is DM6437, then I will suggest you to use the TDA3/DRA78x EVM to test because it is also a C66 DSP based EVM board, and the VISION SDK can also run on it, it should save you more time on testing.

    Regards,
    /ckhsu
  • Hi Jacob
    I guess CK Hsu has provided you a good amount of information.
    Just one addition- if you want to use DSP also in the data flow, better pick below usecases
    For RTOS only
    \vision_sdk\apps\src\rtos\usecases\vip_single_cam_frame_copy (with frame copy on DSP). Once you validated the demo, you can modify this frame copy Alg plugin to integrate your Algo

    For Linux + RTOS
    \vision_sdk\apps\src\hlos\adas\src\usecases\vip_single_cam_framecopy_sgx_display
    Once you validated this UC on your set-up, try to add DSP frame copy Alg in the data flow (refer above UC for the same)

    To run these demos you can pick either DRA7x(TDA2x) EVM or DRA72x(TDA2Ex) EVM . You also need a vision daughter card (addition card) to connect the camera. This set-up can be ordered from spectrum digital.
    OV10635 camera can be directly connected to the omnivision camera port of Vision Daughter card

    Refer below User guides to build and run vision SDK on TI EVM
    RTOS only case - \vision_sdk\docs\UserGuides
    Linux + RTOS - \vision_sdk\docs\Linux

    regards, Shiju
  • Hi Shiju

    Thanks a lot for your explanation and help.

    1.For our budget,we can only buy a CPU board(J6Entry board).And I find the camera interface(J5 and J15 connector) on CPU board and will want to buy a new camera module for it or make jumper wire to the interface from my camera module.For my question and my case,where do I modify the usecase "vip_single_cam_frame_copy" (For RTOS only)?Can I modify it or driver? Or I can directly buy the special camera module,e.g. LVDS interface? MIPI interface?...Because I don't understand the difference between "Vision-daughter-board" and "No Vision-daughter-board" with CPU board.

    2.What reason do the Linux need the RTOS? I mean the "Linux + RTOS".Is the pure Linux OK?

    Thanks so much for your kindly help!!

    Best Regards,
    Jacob

  • Dear CK Hsu

    Thanks a lot.

    1.I will run program over RTOS only.From Shiju Sivasankaran and your suggestion,I will use the usecase "vip_single_cam_frame_copy" to integrate our algorithm and the usecase "vip_single_cam_view" to verify image preview.

    2.I have no vision board for my development.Is it OK? Or do I need to select special camera module(e.g. LVDS,MIPS interface...) to connect CPU board?

    3.For my budget,I just select the DRA714 solution and so buy DRA71XEVM for development.Is the VISION SDK suitable for DRA71XEVM? It's very very important to me.If it's not suitable,could you suggest the suitable BSP or SDK for our development?

    Thanks so much.

    Best Regards,
    Jacob
  • Hi Jacob:
    If you don't have vision board, you only need to connect the OV10635 to the J6Entry board on the related pins. However, if you have vision board, then it is easy to do the modifications. Besides, if you are not going to use a vision board, then you might have to modify the PDK inside the VSDK to skip the functions that related to vision board.
    The LVDS and MIPI interface of OV10635 are using other usecases.
    To me, the VSDK is suitable for DRA71xEVM and testing the DM643x algorithm. Because if you use other SDKs like PSDKLA(Processor SDK Linux Automotive), then you have much more efforts to move to it and test on you own algorithm.

    Regards,
    /ckhsu
  • Hi CK Hsu

    Thanks a lot for your help.
    I don't have vision board and I'm new to TI platform and VSDK.I don't know PDK and where I need to modify the PDK inside
    the VSDK to skip the functions that related to vision board? Could you clearly point out the PDK inside the the VSDK for
    usecase "vip_single_cam_frame_copy" or "vip_single_cam_view"?
    In addition,are there any materials for how to build the TI RTOS,build environment and build tool?

    Best Regards,
    Jacob

  • Hi CK Hsu
    PDK is one of the dependent component integrated with VSDK, the same is available at \ti_components\drivers\pdk_xx_xx_xx_xx
    PDK do not have VSDK demo usecases, but it has component level test cases.
    FYI, you again need the vision card for test PDK examples
    Without vision card + TDA EVM, you would't be able to make any good progress with VSDK package

    please refer below docs
    \vision_sdk\docs\UserGuides
    \vision_sdk\docs\FeatureSpecificUserGuides\VisionSDK_UserGuide_BuildSystem.pdf

    regards, Shiju
  • Hi Shiju:
    It is right that PDK do not have usecases, but it is related to which board you are using (VISION/JAMR/RVC etc.). Please spend time on tracing it then you will know.

    Regards,
    /ckhsu
  • Dear Shiju and CK,

    Thanks for your responses.

    If we just have a CPU board for SOC-DRA714's development and integrate our algorithm to DRA714 platform, it's NOT regarding ADAS,deep learning and AI design for our system NOW. Our system is automotive application for image processing.

    For our purpose:
    1. Could you give us suggestion for RTOS BSP/SDKs(e.g."Automotive RTOS Processor SDK for DRA7x"? or still VSDK?)? We must not want to use the "VSDK" and just TI Agent gives us the suggestion to VSDK.

    2. We don't clearly understand the purpose of vision board and need to think our COST and BUDGET for us.CK tells us "only need to connect the OV10635 to the J6Entry board on the related pins and modify the PDK". It's Ok without vision board. Shiju tells us "Without vision card + TDA EVM, we would't be able to make any good progress with VSDK package".Which is correct? How should I do?

    Thanks so so much.

    Best Regards,
    Jacob

  • Hi Jacob:
    In my opnion, both of Shiju and I are correct, because we are answering from different aspect on this. I've been used TI platform for at least 14 years and sure I know how to modify it easily.
    My opnion, is sam as TI agent, you need to use VSDK, because this is the easiest way to integrate you algorithim. If you are using other J6/TDA platform code base, it could take you more time.

    To integrate you algorithm, Shiju provide you the easiest example framecopy to follow, you should use it.

    To use J6Entry board without vision board and only OV10635, I suggest you to compile the TI example, and just run it, If any assertions when running, modify the related place inside VSDK or PDK because the assertions will always notify you where the error is inside the code.

    Regards,
    /ckhsu
  • Hi :

    I'm Jacob's colleague.
    When I tried to integrate "vip_single_cam_frame_copy" to my project, I encounter the same problem like following:

    There's error in the "PROCESSOR_SDK_VISION_03_05_00_00/vision_sdk/links_fw/include/link_api/system_linkId.h:836:21" file and
    error message is: enumerator value for 'SYSTEM_LINK_ID_CAPTURE_0' is not an integer constant ... and so on.