Once implemented, will this work in a Lua script. I ask this as if the script is running in manual, how would it access bulb mode?
Sorry, I don't understand the question.
The long exposure operation starts if the user puts the camera in BULB mode (in Lua, that would be by checking the value of camera.mode).
In this case, the full-res capture functions, being just some factory testing routines, were made by Canon to work only in M mode, but they reuse the full image capture backend (which is able to work in all modes). To work in BULB mode, the things that were missing are:
the signal at the end of exposure (normally given by shutter release)
a 20-second timeout
on cameras with a dedicated B position on the mode dial: a way to set the shutter speed to BULB in Canon's internal job structure (their code copies shutter and ISO from M mode settings)
So, most of this PR is just monkey-patching Canon code to also work in BULB mode (not just in M, as it was originally designed).
Thanks for the clarification. That is I will be able to use FRSP bulb from within Lua.
Due to missing code reference from this PR, I made a new PR #941 to have the original code working on top of current repository