Lepton 3.5 Disabling Enabling Shutter / FFC Manually

Hi! I currently working with Lepton 3.5. Whenever i initialise the sensor, the sensor calibrating itself automatically. I want to disable this situation and enable it in the end of the script. What should i do?

1 Like

I too am interested in how to disable the shutter. I have modified the remote streaming library to send thermal images, however the shutter causes the buffer to stop streaming and takes approximately 30 seconds to reconnect. By that time the shutter may have closed again causing a loop of non-connectivity.

Do you know or have any ideas to disable shutter then? I literally stuck

I just tried removing the shutter. This works for streaming however the image quality is then washed out after 15 seconds. Seems like the lepton thermal technology is reliant on the shutter reset to work.

You can’t disable the shutter. It’s required for the sensor to work. And yes, it will run randomly as it feel like when the sensor heats up.

@kwagyeman @iabdalkader I won’t disable permanently, I just want to enable shutter only at the end of the code. Is that impossible?

Thanks in advance…

Not really, you can’t disable the shutter on the flir lepton or control it anyway. It’s just how the sensor works.

It should be possible to change the FCC/shutter mode, disable it or control it manually, see the engineering datasheet it explains all the different modes. It’s also possible to change the thresholds that trigger it in automatic mode, and shutter status can be polled. We don’t implement specific ioctls for any of that, take a look at the Lepton SDK in our repository, specifically the function LEP_SetSysFfcShutterModeObj, maybe you can add an ioctl, or try using IOCTL_LEPTON_SET_ATTRIBUTE you will have to encode the command and args as a byte array. If you get something working feel free to send a PR.

2 Likes

(You can do the above but it will cause weird issues with the camera’s accuracy as it needs to do the FFC process).

1 Like

@iabdalkader @kwagyeman Yes, I know there will be weird issues in Lepton, but I just want to enable it after the 10 sec video recording. I reseached several days, some forums says that we can do the configuration with Lepton official app and I couldnt find any Lepton official application. It doesnt exists anymore. Im stuck again basically. Do you have any advices about that?

How exactly did you succeed removing the shutter? I’d be appreciated if you would explain me in detail. @Lucas13

Hi @sencery,

you can remove the shutter completely by carefully prying the black part (shutter) off of the metal lens. The issue I ran into is without the shutter to close on startup, the image will be washed out. You can work around this by placing a cover over the lens when your code is initialized, however the image will become washed out relatively fast. What is the reason why you would like to disable the shutter?

i think that its possible to have a flag when the ffc starts and ends.
This way you can monitor when the ffc take place and dissable the inspection.
I didn’t try it though but i have read that its possible…

@oramafanis @Lucas13 @sencery So, no one knows how to disable and enable FFC manually in the script?

You can disable it if you absolutely must by using our custom sensor — camera sensor — MicroPython 1.15 documentation

And passing lepton set attribute which allows you to execute a command from the FLIR API:

You can turn FFC off using the “SYS FFC Mode Control” command.

…

…

For our API you have to send to the above ID value followed by a byte array of the struct of that command.

We implemented support for the all the various FLIR lepton commands this way as there are hundreds to support and it would take up too much flash to have bindings for all of them.

1 Like

Thanks! I hope that I will find a way to do it.

There are examples of this command being used on the forums if you search for it. Good luck!

1 Like

You can write manual shutter mode to the one-time programmable registers, which will prevent the start-up shutter from happening. This way you can control exactly when you first shutter your camera. To do this, follow these steps:

  1. Apply 5.9V 10mA<A<100mA current to pin 17 of the camera before startup. 100mA limit works for me, 10mA seems to current limit on my PSU.
  2. Do the startup sequence to enable the camera
  3. Initialise all your registers to CCI. For the manual shutter mode, see LEP_SetFfcShutterModeObj() and assign .shutterMode = 0.
  4. Read the OTP bit to see if it has been written through LEP_GetOemUserDefaultsState()
  5. If OTP is not written, do LEP_RunOemUserDefaultsCopyToOtp().
  6. You may remove the 5.9V supply from pin 17 of the Lepton

Note: as the name suggest, the OTP fields are one-time programmable, therefore before executing the commands, ensure in your debugger that you are definitely sending the right configs to your camera.

If done correctly, at the next power cycle your shutter will not execute automatically and therefore the readings will be significantly off. Once you shutter manually, it should go back to normal operation.