standard features vs script (was Re: CHDK Configuration Setup Script)

  • 11 Replies
  • 974 Views
*

Offline hwntw

  • ***
  • 158
Advertisements
This script save and rewrite all configuration data from config.c. You can save 10 different configurations.
...
But that's the best part about CHDK scripting - if you don't like how it works or need an additional feature - change it!  I think reyalp deserves a lot of credit for holding the line on limiting "built-in" functionality.  We don't have a lot of application code that can't be changed by the end users (especially as we have a real programming language in Lua rather than just a script language in uBASIC).

This is the same reason that CHDK is not more popular and more widely used. There are few new features to attract budding users. Many will be put off by the coding requirements to compose LUA scripts. Not many photogs are also coders, I suspect. They may have heard of Magic Lantern, but will be disappointed by CHDK indifference to go-fast features. Thus active users on these boards are few and interests are mainly linked to coding and disassembly rather than hand held picture taking. To take the CHDK strategy to its logical conclusion why not disable all features in the firmware and re-enable them solely via scripting?
« Last Edit: 21 / October / 2017, 16:38:23 by reyalp »
Ixus 300HS S100


Windows 10

*

Offline reyalp

  • ******
  • 11541
Re: standard features vs script (was Re: CHDK Configuration Setup Script)
« Reply #1 on: 21 / October / 2017, 17:49:57 »
I split this since it off topic for the specific script that thread was about.

A few comments

I would like to see CHDK be more useful out of the box for general photography. Code contributions are welcome.

Feature suggestions are also welcome, but realistically major features require a programmer to commit a significant amount of time. Ideas are not in short supply.

The people who contribute to CHDK do it on their own time, so they get to pick what they work on.

The way CHDK is built makes it difficult to add features that are intuitive, convenient, and work reliably on many the cameras. I have no interest in adding a bunch of half baked features that don't really work or are impractical to use.

Scripting isn't for everyone, but that's OK. IMO, giving people the building blocks to build interesting things is one of the great values of CHDK. Being useful for timelapses and UAVs and multicam rigs and so on is no less valid than being useful for snapshots.

Scripts benefit people without programming skills too. For an end user, there doesn't need to be much difference between using a well written, portable script than a built in feature.

"Attracting more users" is not something that motivates me much.
Don't forget what the H stands for.

Re: standard features vs script (was Re: CHDK Configuration Setup Script)
« Reply #2 on: 21 / October / 2017, 19:06:12 »
This is the same reason that CHDK is not more popular and more widely used. There are few new features to attract budding users. Many will be put off by the coding requirements to compose LUA scripts. Not many photogs are also coders, I suspect. They may have heard of Magic Lantern, but will be disappointed by CHDK indifference to go-fast features. Thus active users on these boards are few and interests are mainly linked to coding and disassembly rather than hand held picture taking. To take the CHDK strategy to its logical conclusion why not disable all features in the firmware and re-enable them solely via scripting?
I'd venture to suggest that any falloff in interest in CHDK is more related to the decline and disappearance of point&shoot cameras like the Canon Powershots.  Blame it on mobile phone camera technology, which has become very capable. The only place mobile phones can't compete is against high end Powershots like the newest of the G series or the SX superzooms.  And most of those high end cameras now incorporate the features that were originally only available to the common user by using CHDK.


Having said that, see my next post here .....
Ported :   A1200    SD940   G10    Powershot N    G16

CHDK Simple Mode
« Reply #3 on: 21 / October / 2017, 19:18:09 »
Reading this thread, I think that maybe it's time to share something that I've been working on for the last year or so.  Kind of a part time project but I'd be interested in any feedback.

This project stems from my recurring concern that CHDK is about photography and yet it doesn't really assist much with the most common aspect of just taking pictures.  I think this is also part of what hwntw started this thread for.

As it happens, I have make a couple of critical observations over the years here.
  • My first observation has been that the CHDK <ALT> screen is a huge waste of screen space as it really does not let you do anything other than load the CHDK menu, go to the Script menu, or start the current script running. 
    EDIT : forgot to mention that the user menu can open or you can have a script run on entry to <ALT>
  • My second observation has been that using CHDK to control exposure is extremely primitive. There is no real M mode as while you can override Tv, Av, or Sv individually, CHDK leaves the other parameters under Canon control. And Tv or Av priority modes are also missing.

So I've created an updated CHDK UI of sorts.  Naturally it's not really pretty - CHDK screen drawing has it's limits.  But it does let you use the <ALT> mode screen to set a shooting mode (camera default, Tv priority, Av Proirity, M), pick exposure parameters,  load a script, or enable/disable RAW/DNG, Histogram, Zebra, Edge Overlay.  All from the <ALT> screen without navigating the huge and intimidating CHDK Menu structure.   :P

The GUI works with just the up/down/left/right arrow keys and the Func/Set key so should work on every Powershot. The yellow box in the attached images is the "cursor".  You move to what you want to change, click Func/Set, and then use the up/down keys to change that value.  Pressing Func/Set again sets the value and returns you to cursor mode.  And you can change the current script by navigating to that field and clicking Func/Set to bring up the script menu (by default the GUI starts the cursor there so pressing Func/Set on entry to <ALT> works like before).



Currently it's configurable so that it can be disabled or loaded via a specified key or simply when you enter <ALT>.   The override values work just like the current menu based ones - except all three are set in anything but Canon mode.  I have it setup to allow different "themes" (colors, font sizes, outline boxes, labels, etc) but have not created many standard ones yet.
 




Rather than try to describe a GUI any further with just words,  I can share a patch file with anyone interested (or "on request" build a version for a specific camera & firmware version for anyone not setup to build CHDK from source).  You could also try the CHDKplus script, which works the same way but with less features and integration with <ALT> mode.

I think this is an example of something that can be done by a script but might be better as a built-in option - enabled by default so that the newbie to CHDK sees it right away and can use CHDK without learning the ins & outs of the menu system.

This projects fulfills what I want originally wanted CHDK for personally (i.e. full manual exposure control on my simpler Powershots).  I'm sure it will hit snags on some models (hello Powershot N touchscreen) but if there is enough interest that can be worked out.


« Last Edit: 22 / October / 2017, 13:18:47 by waterwingz »
Ported :   A1200    SD940   G10    Powershot N    G16


*

Offline reyalp

  • ******
  • 11541
Re: standard features vs script (was Re: CHDK Configuration Setup Script)
« Reply #4 on: 21 / October / 2017, 19:35:04 »
This looks very nice, and I agree would be better as a standard feature rather than a script.

Trading the obscure shortcuts for on-screen control of raw, histogram and zebra would definitely help usability.
Don't forget what the H stands for.

Re: standard features vs script (was Re: CHDK Configuration Setup Script)
« Reply #5 on: 21 / October / 2017, 19:49:46 »
This looks very nice, and I agree would be better as a standard feature rather than a script. Trading the obscure shortcuts for on-screen control of raw, histogram and zebra would definitely help usability.
Thanks.

Every couple of weeks I start working on this again but the number of cool things that can be done usually overwhelms me.  Some are simple and some more complicated.  Things like :
  • exposure meter
  • eV adjust
  • user configurable choice for the shutter button to either launch the current script or shoot while in <ALT> mode
  • user configurable choice of available shortcuts (rather then just the four I picked - enable/disable USB remote or Custom Auto/ISO for example)
  • themes
  • outline boxes
  • an AutoISO mode based on the one in kap_uav.lua
  • non-ALT mode OSD
  • non-ALT mode exposure adjustment (on the very hard end of things)
  • use the Tv,Av,Sv values found in each camera's shooting.c file aperture_sizes_table[ ], shutter_speeds_table[ ],  iso_table[ ]
  • optionally enable & display only the short cut overrides (hide/disable exposure overrides)
  • handle ND filter either a part of Av override or seperately

The list grows quickly ... you get the idea.

So after a year or so (just checked and my first patch file was from Sept 2015) I figured it's better to just share a 0.1 version rather than try for perfect out of the box.
« Last Edit: 21 / October / 2017, 22:54:44 by waterwingz »
Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline philmoz

  • *****
  • 3070
    • Photos
Re: standard features vs script (was Re: CHDK Configuration Setup Script)
« Reply #6 on: 21 / October / 2017, 21:20:24 »
Very nice 8)


Time to start a 1.6 branch perhaps?


Please share the patch.


Phil.

CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)

Re: standard features vs script (was Re: CHDK Configuration Setup Script)
« Reply #7 on: 21 / October / 2017, 22:28:00 »
Time to start a 1.6 branch perhaps?
I think I'll at least start a new thread for this.  This current one starts out kind of negative (although I get why).

Quote
Please share the patch.
Will do - I should take a quick look at what's in there first though.  Two year accumulation of part time fiddles can be a bit confusing. Note that I do not plan to "clean up the code" as part of that.

I guess I should really setup a branch in the assembla svn repo as well? Something new to try and puzzle out in my "spare time" when I'm not finishing up the 1.01b version of the G16 port.  ::)
Ported :   A1200    SD940   G10    Powershot N    G16


*

Offline reyalp

  • ******
  • 11541
Re: standard features vs script (was Re: CHDK Configuration Setup Script)
« Reply #8 on: 21 / October / 2017, 23:47:00 »
A stroll down memory lane https://chdk.setepontos.com/index.php?topic=8151.0

 (From 5+ years ago... how did that happen  :o)
Don't forget what the H stands for.

Re: standard features vs script (was Re: CHDK Configuration Setup Script)
« Reply #9 on: 22 / October / 2017, 00:13:30 »
A stroll down memory lane https://chdk.setepontos.com/index.php?topic=8151.0

 (From 5+ years ago... how did that happen  :o)
Yup. There are 543 entries in that thread, and while we didn’t solve all the issues raised in the first post, we did make some substantial improvements.  And much of the stuff we didn’t get to is coming back now.

In fact, I actually originally started calling my most recent effort UI3.0 but then I switched to “CHDK Simple Mode”.  I might change that again to AltGui - haven’t decided yet.
Ported :   A1200    SD940   G10    Powershot N    G16

 

Related Topics