Navigation

    VEYE IMAGING Forum

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Recent
    • Popular
    • Users
    • WIKI
    • veye.cc

    UNSOLVED Saving VeyeMIPI parameters

    VEYE MIPI camera
    2
    4
    173
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      nimadibaj last edited by

      Hello my friend.
      We are sending I2C commands via a FPGA.

      1_ Writing 0xff to 0x000b solved our problem and now the CSI-2 output of the module is in HS mode not LP mode. Thank you. Please give us a command to save this change.

      2_ We are trying to change video frame rate (now is 30fps and we need 25fps).
      by these commands we cannot do this :
      0x10 0xDE
      0x11 0xC2
      0x12 0x00
      0x13 0x00
      (sending Two byte, then sending next two byte and ... ).

      Please guide me. Thanks a lot.

      veye_xumm 1 Reply Last reply Reply Quote 0
      • veye_xumm
        veye_xumm @nimadibaj last edited by

        @nimadibaj

        @nimadibaj said in Saving VeyeMIPI parameters:

        1_ Writing 0xff to 0x000b solved our problem and now the CSI-2 output of the module is in HS mode not LP mode. Thank you. Please give us a command to save this change.

        Sorry, this command cannot save settings during a power outage.

        @nimadibaj said in Saving VeyeMIPI parameters:

        2_ We are trying to change video frame rate (now is 30fps and we need 25fps).
        by these commands we cannot do this :
        0x10 0xDE
        0x11 0xC2
        0x12 0x00
        0x13 0x00
        (sending Two byte, then sending next two byte and ... ).

        write_videoformat()
        {
        	local videoformat=0;
        	local res=0;
        	res=$(./i2c_write $I2C_DEV $I2C_ADDR  0x10 0xDE );
        	res=$(./i2c_write $I2C_DEV $I2C_ADDR  0x11 0xC2 );
        	if [ $PARAM1 = "PAL" ] ; then
        		res=$(./i2c_write $I2C_DEV $I2C_ADDR  0x12 0x0);
        	elif [ $PARAM1 = "NTSC" ] ; then
        		res=$(./i2c_write $I2C_DEV $I2C_ADDR  0x12 0x1);
        	fi
        	
        	res=$(./i2c_write $I2C_DEV $I2C_ADDR  0x13 0x00 );
        	printf "w videoformat is %s\n" $PARAM1;
        }
        

        The detailed code of the i2c_write function in the above example shows the actual bytecode it sends. Specifically, i2c_write sends multiple bytes in a single standard I2C transaction to modify register values.The specific steps are the same as writing 0xff to 0x000b.

        N 1 Reply Last reply Reply Quote 0
        • N
          nimadibaj @veye_xumm last edited by

          @veye_xumm

          Dear Xumm, I tried all commands and I can not change the frame rate from 30 to 25 fps.

          Please let's forget the veye_mipi_i2c.sh script and forget the Raspberry.

          And please give me the hexadecimal values which I can send via I2c bus to imx462 module to change it's frame rate.
          You said I should write 0xff to 0x000b for HS mode. And it works perfect. Now give me the such hex values for frame rate please.
          Thank you.

          veye_xumm 1 Reply Last reply Reply Quote 0
          • veye_xumm
            veye_xumm @nimadibaj last edited by veye_xumm

            @nimadibaj
            You have implemented the function of writing 0xff to 0x000b. Similarly, proceed to write the subsequent registers as well.
            The method for writing the subsequent registers is the same as that for writing the 0x0b register, but they must be written in sequence.
            Addr--->data
            0x10 0xDE
            0x11 0xC2
            0x12 0x00
            0x13 0x00

            1 Reply Last reply Reply Quote 0
            • First post
              Last post