Page 1 of 1

Color Temperature via SDI Shield

PostPosted: Tue Dec 11, 2018 8:12 pm
by seankahn
I am trying to send some commands to an SDI Shield.
Documentation : documents [dot] blackmagicdesign [dot] com/UserManuals/ShieldForArduino/20181011-7056cb/ShieldForArduinoManual [dot] pdf

page 20 says : manual white balance is 1.2

so my code is :

Code: Select all
 
      t =  getTemp();
      sdiCameraControl.writeCommandFixed16(
        id,
        1,
        2,
        0,
        t   /* set to be 5450*/
);
      Serial.println("temp set to ");
      Serial.println(t);
    }


this code works for , say iris.

Code: Select all

val =  getIris();
      sdiCameraControl.writeCommandFixed16(
        id,
        0,
        3,
        0,
        val
      );
      Serial.println("iris set to ");
      Serial.println(val);




The instructions work correctly for the iris control, normalized between 0 and 1.
But for whitebalance/temperature - i am stuck. I notice in the documentation , that there is some sort of index. How do i deal with the index? Thank you

Re: Color Temperature via SDI Shield

PostPosted: Fri Feb 22, 2019 7:07 am
by -Nick-
Hi,
I'm not an expert with the SDI shield, so I can't garantee that I will always tell correct things.
In my understanding, the index is the index of the array that you can pass to the writeCommand function. Furthermore you have to use the writeCommandInt16 in order to send int16.
So try:
Code: Select all
 
  int16_t data[]={<temp>, <tint>};
  sdiCameraControl.writeCommandInt16(
    id,
    1,
    2,
    0,
    data
    );


Regards
Nick