Building on the
CHDK UI 2.0 thread from a few years ago, I'm going to suggest we move on to a new GUI interface. 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 have make a couple of observations over the years :
- Most of the CHDK <ALT> screen is empty. It really does not let you do much other than load the CHDK menu, go to the Script menu, or start the current script running.
- 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.
- The interface for Powershots that have M modes is actually confusing and a bit hard to use.
So I'd like to suggest an updated CHDK UI. Naturally it will not be pretty - CHDK screen drawing has its 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.

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'm sharing a patch file here with anyone interested. I'll also do an "on request" build of a version for a specific camera & firmware version for anyone not setup to build CHDK from source. PM me with your camera details.
To keep this short, I'll post a seperate list of changes & upgrades I've been thinking about.
This is far from finished - as Sir Winston Churchill said "Now this is not the end. It is not even the beginning of the end. But it is, perhaps, the end of the beginning."
EDIT : note that the patch file will only build the GUI into camera models with the appropriate entries in their platform_camera.h files :
#define CAM_ALT_GUI_AVAILABLE 1 // enables building the ALT GUI for this camera
#define CAM_ALTGUI_BUTTON_NAMES { "Off","on ALT", "Video", "Erase", "Face"}; //optional
#define CAM_ALTGUI_BUTTON_OPTIONS { -1, 0, KEY_VIDEO, KEY_ERASE, KEY_FACE }; //optional