HOWTO: Create An ISP Project From Existing VSDK Graph in S32DS for Vision

Document created by Mike Doidge Employee on Jul 19, 2017Last modified by Mike Doidge Employee on Dec 3, 2018
Version 6Show Document
  • View in full screen mode

There are a number of existing ISP Graph diagrams provided within the VSDK. It is possible to import them into S32DS for Vision and use them in a new C/C++ project. The steps to do this are detailed in this document.


1) Launch S32DS for Vision

2) Select File -> New -> S32DS Application Project or select "S32DS Application Project" from the toolbar.

3) Enter a project name, such as: ISP_ISP_Generic_demo

4) Select 'A53 APEX/ISP Linux'

5) Click Next


6) Unselect the APEX2 options and 'ISP Visual Modeling' option.

7) Click Finish



8) Select File -> New -> S32DS Project from Example or select "S32DS Project from Example" from the toolbar.



9) Select isp_generic.

10) Select Finish



11) Open isp_generic in the project explorer

12) Double-click ISP data flow ; isp_generic. The ISP data flow graph will appear in the editor



13) Define a new configuration for emitting code from the graph

      a) Create a folder in the application project to receive the emitted code. Right-click on the application project and select New -> Folder.



      b) Enter a name for the folder and click Finish



      c) Right-click in the ISP data flow window and select Emit As -> Emit Configurations...



      d) Select ISP Emitter

      e) Select New Launch Configuration




      f) Enter a name

      g) Select the graph, Browse Workspace




      h) Expand each item until you can select the .isp file. Click OK



      i) Select the location of the emitted output to the application project, select Browse Workspace



      j) Select the name of your application project, then OK



      k) Write A53_gen to the Dynamic sequences sources folder box. This is the folder within the target project that generated code will be stored. Check the box for Emit host code.



      l)Now select the location to store the configuration file. Go to the Common tab, select Shared file and click Browse



      m) Select the folder name you created earlier inside ISP_ISP_Generic_demo and click OK



      n) Click Apply and Emit. Dialog box will appear when code generation is successful




      o) Expand the folders within ISP_ISP_Generic_demo, A53_gen, src and inc, to see the newly generated output files



14) Change to C/C++ perspective, click on ‘C/C++ Development’



15) Build the project 'ISP_ISP_Generic_demo' for ISP



16) Open file 'ISP_ISP_Generic_demo/A53_inc/isp_user_define.h' and change '#define __DCU_BPP' to "#undef __DCU_BPP"



17) Using the method detailed in steps 8 - 10, create the example project 'isp_sonyimx224_csi_dcu'. Take from this project the file 'isp_sonyimx224_csi_dcu/A53_src/main.cpp' and use it to replace the file 'ISP_ISP_Generic_demo/A53_src/main.cpp' in the current project. Then make the following modifications: 


On line 40, change <#include "mipi_simple_c.h"> to <#include "isp_generic_c.h">.


On line 303, change <gpGraph_mipi_simple> to <gpGraph> AND <gGraphMetadata_mipi_simple> to <gGraphMetadata>



On line 330, change <FDMA_IX_FastDMA_Out_MIPI_SIMPLE> to <FDMA_IX_ISP_OUTPUT>.


Please see C:\NXP\S32DS_Vision_v2.0\S32DS\s32v234_sdk\docs\drivers\SDI_Software_User_Guide.pdf for details on what this code is for.


18) In Project Explorer, right-click on "...\A53_gen\src\isp_process.cpp" and select Build path -> Remove from -> A53



19) Select 'ISP_ISP_Generic_demo:A53' in the Project Explorer panel, then Build for A53



20) Run it remotely on the target using the method fromHOWTO: Create A53 Linux Project in S32DS for Vision. Should get results similar to this:


1 person found this helpful