Best way to control the aperture? (ID 0.2, ID 0.3 or ID 0.4)

Ask software engineering and SDK questions for developers working on Mac OS X, Windows or Linux.
  • Author
  • Message
Offline

Chris Maier

  • Posts: 55
  • Joined: Fri Sep 22, 2017 3:04 pm
  • Location: Germany

Best way to control the aperture? (ID 0.2, ID 0.3 or ID 0.4)

PostSat Jun 20, 2020 9:13 am

Hi,

I am trying to figure out the best (most reliable) way to remote control the aperture of EF-lenses mounted on the BMPCC 6K.

The developer manual gives us three options:
BMD-Aperture.jpg
BMD-Aperture.jpg (38.58 KiB) Viewed 1363 times

Source: https://documents.blackmagicdesign.com/ ... ontrol.pdf

While using the great BlueMagic32 Library (https://github.com/schoolpost/BlueMagic32) you are going to control the aperture via ID 0.3

Code: Select all
void BlueMagicCameraController::aperture(float value)
{
  if (value < 0 && value > 1) //BTW: This line does not make sense to me.
    return;

  uint16_t val = mapFloat(value);

  uint8_t xlow = val & 0xff;
  uint8_t xhigh = (val >> 8);

  uint8_t data[10] = {255, 6, 0, 0, 0, 3, 128, 0, xlow, xhigh};

source: https://github.com/schoolpost/BlueMagic ... roller.cpp

This way controls the aperture by sending values from 0-1.
Unfortunately the aperture on EF-lenses is not stepless, so it is not easy to figure out which value to send to get to the next valid value.

Reading about ID 0.4 I thought this might be an easy way to cycle through the available apertures by sending values from 0 to n.

So I added some code to the library files (the .cpp and the .h files).
It seemed to work out of the box, but...

Unfortunately my Sigma 8-16mm (not the best, but the widest...) seems to pretend to have more valid aperture values, as it really does. The BMPCC 6K (and the BLE Controller) shows new "in between" values, but you can clearly heare that the aperture in the lens has not moved. There is also not change in the histogram.

A few questions...
Has anyone noticed the same issues?
Has anyone found a good solution?
Has anyone tried to control the aperture via ID 0.2? (I guess I will try this soon.)

And one small disclaimer...
I think this could be a completely different story at the BMPCC 4K, as M43 lenses can change their aperture almost stepless. (Even though most camera bodies do not support this. I could proof this on a GH5S via Wifi.)

Thank you,
Chris
| 2x BMPCC 6K | Davinci Resolve Studio | Davinci Resolve Speed Editor |
Offline

Ian Morrish

  • Posts: 580
  • Joined: Sun Jan 18, 2015 9:24 pm
  • Location: New Zealand

Re: Best way to control the aperture? (ID 0.2, ID 0.3 or ID

PostSat Jun 20, 2020 9:21 pm

The ATEM software control seems to use 0.2 and I use that in my PowerShell API but have not tried with any fancy lens and I only have Studio camera but will be able to try on a pocket 4k soon.
Regards,
Ian Morrish
Video Integrated Scripting Environment
(Windows PowerShell with ATEM driver + more)
https://ianmorrish.wordpress.com
Offline

Chris Maier

  • Posts: 55
  • Joined: Fri Sep 22, 2017 3:04 pm
  • Location: Germany

Re: Best way to control the aperture? (ID 0.2, ID 0.3 or ID

PostSun Jun 21, 2020 4:35 pm

Hi Ian,

thanks for your answer.
It seems that you have an amazing project going on.

Is there a chance that you could link or send me the specific code snippet for the iris control?
Unfortunately I also found a bug in my ID04 - so I am still stuck on ID0.3

Regards
Chris
| 2x BMPCC 6K | Davinci Resolve Studio | Davinci Resolve Speed Editor |
Offline

Ian Morrish

  • Posts: 580
  • Joined: Sun Jan 18, 2015 9:24 pm
  • Location: New Zealand

Re: Best way to control the aperture? (ID 0.2, ID 0.3 or ID

PostTue Jun 23, 2020 9:06 am

Hi,
I'm using the ATEM api to send camera commands and with C# so the code is not helpful.
I have just ordered and esp32 and someone has offered to led me a bmpcc4k so I can try your code with an SDI shield to translate the sdi ccu info into bluetooth command. Yet another project...

Sent from my SM-G960F using Tapatalk
Regards,
Ian Morrish
Video Integrated Scripting Environment
(Windows PowerShell with ATEM driver + more)
https://ianmorrish.wordpress.com

Return to Software Developers

Who is online

Users browsing this forum: No registered users and 17 guests