Jump to content

And For My Next Trick....... (aka Why I was hacking the GX80 in the first place)


BTM_Pix
 Share

Recommended Posts

EOSHD Pro Color 5 for Sony cameras EOSHD Z LOG for Nikon CamerasEOSHD C-LOG and Film Profiles for All Canon DSLRs
  • Super Members
2 hours ago, m0fe said:

That is brilliant, great work. Would be great for a hand grip like FS7/5 but on steroids. Also the little Bluetooth joypad for gimbal work would be sweet. Can't wait 

I am currently checking out two controllers to use with it that I think will be the definitive ones for people to choose.

There'll be an update with them next week so stay tuned ! 

Link to comment
Share on other sites

  • Super Members
Just now, Devin Bunn said:

man, if you could get a slider for focus I'd be so happy!

 

Its highly likely that it will be purely dependent on what controller people want to use.

Its fundamentally in there but just mapped to a thumbstick at the moment. A controller with a fader in (or many faders) is easily supported.

Watch this space, I suppose.

Link to comment
Share on other sites

Hi BTM_Pix, love your work with the focus controller!

Would you be doing lens profiling/setup for lenses for this focus racking system? I've done some minor research into how many possible focus steps there are per lens and I found that it varies between lenses and even among different focal lengths on the same zoom lens.

I would believe this will affect the duration of a focus pull depending on how the focus racking code is done.

If you've already considered this, perhaps we could request fellow forumers to share their lens focus step data so that there is a more complete picture as to how focus step varies.

Here is the python file that I wrote for finding lens data: https://github.com/lippyt/lumixlib/blob/master/lensdata.py

Link to comment
Share on other sites

  • Super Members
6 hours ago, LippyLee said:

Hi BTM_Pix, love your work with the focus controller!

Would you be doing lens profiling/setup for lenses for this focus racking system? I've done some minor research into how many possible focus steps there are per lens and I found that it varies between lenses and even among different focal lengths on the same zoom lens.

I would believe this will affect the duration of a focus pull depending on how the focus racking code is done.

If you've already considered this, perhaps we could request fellow forumers to share their lens focus step data so that there is a more complete picture as to how focus step varies.

Here is the python file that I wrote for finding lens data: https://github.com/lippyt/lumixlib/blob/master/lensdata.py

Thanks

To be honest, the accuracy of the lens control and what you can do with it is always going to be varying degrees of fudge without the command to directly return it to one of the 0-1024 positions.

I presume by profiling for focus steps you're referring to how many actual focus positions there are hiding within the 0-1024 range?

With some of the lenses it feels like there are only about 6!

I don't have a big range of native MFT lenses (and all of them are the cheap ones!) but I was wondering if requesting a dump from them using http://192.168.54.1/cam.cgi?mode=getinfo&type=lens might offer up an automated answer to what you're after.

This is the output for what its worth

 

Olympus 45 1.8

ok,2304/256,434/256,3584/256,1195/256,0,off,45,45,on,128/1024,on

 

Panasonic 20 1.7

ok,2048/256,392/256,3584/256,1195/256,0,off,20,20,on,128/1024,on

 

Panasonic 12-32 3.5 5.6

12 

ok,2304/256,925/256,3584/256,1195/256,0,off,32,12,on,128/1024,on

18

ok,2304/256,1062/256,3584/256,1195/256,0,off,32,12,on,128/1024,on

32

ok,2304/256,1273/256,3584/256,1195/256,0,off,32,12,on,128/1024,on

 

Panasonic 14 2.5

ok,2304/256,677/256,3584/256,1195/256,0,off,14,14,on,128/1024,on

 

Panasonic 45-200 4.5 5.6

@45

ok,2304/256,1024/256,3584/256,1195/256,0,off,200,45,on,128/1024,on

@100

ok,2304/256,1138/256,3584/256,1195/256,0,off,200,45,on,128/1024,on

@200

ok,2304/256,1273/256,3584/256,1195/256,0,off,200,45,on,128/1024,on

I can make a guesstimate of what each of those parameters are (and you can see that the third one x/256 is current focal length as it varies within the zoom etc) and unfortunately the answer you're after isn't in there. 

Obviously, if you manually put the lens at infinity and try and nudge it one more place with http://192.168.54.1/cam.cgi?mode=camctrl&type=focus&value=tele-normal

It will return

ok,0,1024

So you know that its correctly hit 0 and similarly if you put it at minimum distance and tell it go one step wider it will return

ok,1024,1024

And that obviously doesn't change per lens so at least thats consistent!

In terms of creating something functional from what we have to play with, whilst it would be desirable to hit exact points, the four focus functions that we have at our disposal can be massaged into doing something useful using methods like your comparison routine to return to a specific point.

The key to making it a useful practical function though is being in control of the entire process.

If we are driving the focus ourselves using a stick or fader then we have constant feedback of which of the 0-1024 values it is currently at so this can make the profiling unnecessary as we always know this is a 'legal' value because the user has chosen it based on the image being in focus therefore it must be an actual focus point the lens is capable of. And if we now that then, of course, we should be able to make it return to it.

The transition between two such points is something that, again, if we are in charge of the whole process - i.e. the user has focused using our focus controller and will be doing a physical pull from A to B with our controller (particularly a fader with fixed end points) - then we can scale it to at least make it a consistent experience. By consistent I mean, the rate at which they move the fader from one end to the other is controlling the rate of transition irrespective of how many or few actual focus points the lens is capable of resolving. Don't get me wrong, it will always be a fudge of sorts but if we are up against the limitations of the lens in terms of how coarse the transition is then it would be like that anyway if they did it manually. 

The proof is in the testing I suppose to see how smooth or not it is with each lens (and I'm not ignoring some inherent glitchiness caused by the way we're communicating with the camera either) and then the challenge is to try and mitigate it and smooth it out with different scaling techniques.

Link to comment
Share on other sites

The skill set required to make things like this amaze me!  I wish I had the capacity to be creative in this way.  Y'all should be commended and rewarded for your efforts.

Still, even though I love me some electronics, being a bit Luddite-ish when it comes to lenses and cameras is just in my nature.   I'll take "simple-and-manual" over "code" for doing traditional photography things, like focusing.  Fly-by-wire?  No thanks.

It reminds me of the apocryphal story of the NASA-difficult-to-develop-weightless-ink-pen vs. Soviet Space Program's lead pencil.

Keep up the good work though!  You're not making this stuff for old farts like me!

https://youtu.be/-kHa3WNerjU

 

Link to comment
Share on other sites

  • Super Members
17 minutes ago, fuzzynormal said:

T You're not making this stuff for old farts like me!

 

Its being made by old farts like me ;)

Its largely philosophical though for these MFT lenses as even when they're in manual mode they're still fly by wire but I get your point entirely.

Link to comment
Share on other sites

1 hour ago, BTM_Pix said:

Thanks

To be honest, the accuracy of the lens control and what you can do with it is always going to be varying degrees of fudge without the command to directly return it to one of the 0-1024 positions.

I presume by profiling for focus steps you're referring to how many actual focus positions there are hiding within the 0-1024 range?

With some of the lenses it feels like there are only about 6!

I don't have a big range of native MFT lenses (and all of them are the cheap ones!) but I was wondering if requesting a dump from them using http://192.168.54.1/cam.cgi?mode=getinfo&type=lens might offer up an automated answer to what you're after.

...

If we are driving the focus ourselves using a stick or fader then we have constant feedback of which of the 0-1024 values it is currently at so this can make the profiling unnecessary as we always know this is a 'legal' value because the user has chosen it based on the image being in focus therefore it must be an actual focus point the lens is capable of. And if we now that then, of course, we should be able to make it return to it.

The transition between two such points is something that, again, if we are in charge of the whole process - i.e. the user has focused using our focus controller and will be doing a physical pull from A to B with our controller (particularly a fader with fixed end points) - then we can scale it to at least make it a consistent experience. By consistent I mean, the rate at which they move the fader from one end to the other is controlling the rate of transition irrespective of how many or few actual focus points the lens is capable of resolving. Don't get me wrong, it will always be a fudge of sorts but if we are up against the limitations of the lens in terms of how coarse the transition is then it would be like that anyway if they did it manually. 

The proof is in the testing I suppose to see how smooth or not it is with each lens (and I'm not ignoring some inherent glitchiness caused by the way we're communicating with the camera either) and then the challenge is to try and mitigate it and smooth it out with different scaling techniques.

Meticulous is too little to describe the detail in which you explored this. I feel silly that I did not look at the get-info page for lenses yet.

Yes, by focus steps I am trying to describe the amount of focus positions there are within the 0-1024 range after "squaring-off" the focal distance against closest focusing distance or farthest focusing distance.

For example in the 14-42mm kit lens the focus steps at 14mm (wide-normal) are separated by 11-15 focus bits and at 42mm the focus steps are separated by 6 focus bits. In the 25mm f1.7 the focus steps are separated by 3-4 bits. I realize that focus bits are just virtual figures and probably do have a direct correspondence with true focal distance.

Quote

14-42mm focus steps at 14mm (wide-normal):

[0, 24, 43, 62, 82, 101, 120, 137, 153, 168, 183, 199, 214, 230, 245, 260, 276, 291, 307, 322, 338, 353, 368, 384, 399, 415, 430, 445, 461, 476, 492, 507, 523, 538, 553, 569, 584, 600, 615, 630, 646, 661, 677, 692, 707, 723, 738, 754, 769, 785, 800, 815, 831, 846, 862, 877, 892, 908, 923, 939, 954, 970, 985, 1000, 1016, 1024]

14-42mm focus steps at 42mm (wide-normal):

0, 17, 32, 46, 60, 75, 89, 103, 118, 130, 136, 142, 149, 155, 162, 168, 175, 181, 187, 194, 200, 207, 213, 220, 226, 233, 239, 245, 252, 258, 265, 271, 278, 284, 291, 297, 303, 310, 316, 323, 329, 336, 342, 348, 355, 361....]

While trying to design a focus ramping time lapse script, I realized that I wanted the true number of focus steps between two points so that I could decide how often to shift focus a step back or forth (or whether to shift focus for more than a step per shot).

I agree that we cannot reach the precise focusing step/bit using the four functions due to the limitations of the wifi requests and that degree of correspondence between a move on a physical control and the rate of transition is important.  

(I am going back to try out more scripts, because I have lots more to learn about this wifi system and posting anything else here would be talking out of my ass!)

Link to comment
Share on other sites

  • Super Members
38 minutes ago, LippyLee said:

Meticulous is too little to describe the detail in which you explored this. I feel silly that I did not look at the get-info page for lenses yet.

Yes, by focus steps I am trying to describe the amount of focus positions there are within the 0-1024 range after "squaring-off" the focal distance against closest focusing distance or farthest focusing distance.

For example in the 14-42mm kit lens the focus steps at 14mm (wide-normal) are separated by 11-15 focus bits and at 42mm the focus steps are separated by 6 focus bits. In the 25mm f1.7 the focus steps are separated by 3-4 bits. I realize that focus bits are just virtual figures and probably do have a direct correspondence with true focal distance.

While trying to design a focus ramping time lapse script, I realized that I wanted the true number of focus steps between two points so that I could decide how often to shift focus a step back or forth (or whether to shift focus for more than a step per shot).

I agree that we cannot reach the precise focusing step/bit using the four functions due to the limitations of the wifi requests and that degree of correspondence between a move on a physical control and the rate of transition is important.  

(I am going back to try out more scripts, because I have lots more to learn about this wifi system and posting anything else here would be talking out of my ass!)

What I think might be interesting is if you deliberately drive it to the boundary of where there are cracks between the positions, so between 101 and 120 for example on the 14-42 there is a nice bit of space to work in.

If you drive it to 120 and then give it one more tele_slow command and see if it goes to 119 or does it go directly down to its next boundary point of 101.

Similarly if you drive it deliberately into the cracks with a tele_fast or tele_slow will it sit at that point or round itself up or down.

For stills I can see an issue with falling into the cracks depending on your interval but I think in terms of motion for a fader that a user wants to go from position A at the top of the throw to position B at the bottom under manual control then there might be more latitude to get away with it. 

I think that the lenses themselves optically might be a bigger hurdle to a really nice pull (especially with the breathing and the unknown sneaky correctional stuff that often foes on under the hood with these cameras) than the process.

Well, that'll be my excuse anyway ;)

Link to comment
Share on other sites

44 minutes ago, BTM_Pix said:

What I think might be interesting is if you deliberately drive it to the boundary of where there are cracks between the positions, so between 101 and 120 for example on the 14-42 there is a nice bit of space to work in.

If you drive it to 120 and then give it one more tele_slow command and see if it goes to 119 or does it go directly down to its next boundary point of 101.

Similarly if you drive it deliberately into the cracks with a tele_fast or tele_slow will it sit at that point or round itself up or down.

For stills I can see an issue with falling into the cracks depending on your interval but I think in terms of motion for a fader that a user wants to go from position A at the top of the throw to position B at the bottom under manual control then there might be more latitude to get away with it. 

I think that the lenses themselves optically might be a bigger hurdle to a really nice pull (especially with the breathing and the unknown sneaky correctional stuff that often foes on under the hood with these cameras) than the process.

Well, that'll be my excuse anyway ;)

I actually use the property of equality between tele-normal and wide-normal to determine the current focusing distance. I have not tried to deliberately switch between normal and fast modes, though I believe that their focus steps do not share a common denominator so we can definitely get between the cracks that way. Another way is for a user to turn the focusing ring so this generates a non squared-off value, for example he could reach 101,102,103....119,120 depending on luck. Requesting a tele or wide normal after that point will mean that all focus steps will not be similar to their squared-off values.

Certainly, I guess that panasonic gave lesser focus steps at the wide end because its much easier to focus/ the DOF would more than cover up for it. And even the coarse steps in some lenses would be more than sufficient for the focus pulling portion of your camera controller.

As for focus breathing on lenses, the 25mm panasonic lens has a ridiculous 20% scale from near to infinity (non scientific test, a guesstimation when playing with premiere footage).

 

Link to comment
Share on other sites

  • Super Members
47 minutes ago, LippyLee said:

I actually use the property of equality between tele-normal and wide-normal to determine the current focusing distance. I have not tried to deliberately switch between normal and fast modes, though I believe that their focus steps do not share a common denominator so we can definitely get between the cracks that way. Another way is for a user to turn the focusing ring so this generates a non squared-off value, for example he could reach 101,102,103....119,120 depending on luck. Requesting a tele or wide normal after that point will mean that all focus steps will not be similar to their squared-off values.

Certainly, I guess that panasonic gave lesser focus steps at the wide end because its much easier to focus/ the DOF would more than cover up for it. And even the coarse steps in some lenses would be more than sufficient for the focus pulling portion of your camera controller.

As for focus breathing on lenses, the 25mm panasonic lens has a ridiculous 20% scale from near to infinity (non scientific test, a guesstimation when playing with premiere footage).

 

And if you think the focus is a crap shoot, wait til you try and add the zoom control into the equation.

 

Link to comment
Share on other sites

You are awesome man! So will it work on the device like this?

 bluetooth-controller-vr-box-3.1000x.jpg

61NmS1g3HRL._SX425_.jpg

 

they are both Bluetooth though. There are tons of similar controllers for 2-5$ everywhere. That would make my gimbal workflow so much better, incredible!

upd: so you already confirmed that it will work on the previous page. Do we need to modify those devices somehow? How do you make them work with a camera via wifi?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • EOSHD Pro Color 5 for All Sony cameras
    EOSHD C-LOG and Film Profiles for All Canon DSLRs
    EOSHD Dynamic Range Enhancer for H.264/H.265
×
×
  • Create New...