CHDK Forum

CHDK Development => General Discussion and Assistance => DryOS Development => Topic started by: philmoz on 15 / July / 2011, 20:57:28

Title: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: philmoz on 15 / July / 2011, 20:57:28
Note:
CHDK for the IXUS 310 can be downloaded from the autobuild server (http://mighty-hoernsche.de/ (http://mighty-hoernsche.de/) or http://hacki.someserver.de/ (http://hacki.someserver.de/)). These builds are created regularly from the latest version of the CHDK code.

==============================================================

Edit: 18th Aug 2011

Note: for DNG images Alpha 4 adds a simple compression method for the badpixel.bin file. It is compatible with existing badpixel.bin files so you don't need to re-create this. However on the camera I am using there are over 3x as many bad pixels in ISO 3200 as there are in ISO 100 - 1600. If you want to ensure bad pixels are always mapped out re-create the badpixel.bin file using ISO 3200. On my test camera the compression reduces the file size by ~45%.

Alpha 6 test version is now available at:
http://code.google.com/p/chdk-ixus310hs/downloads/list (http://code.google.com/p/chdk-ixus310hs/downloads/list)

Changes in Alpha 6:
- Fix ISO overrides not always working.
- Fix for RAW/DNG file names not always correct.
- Increase movie time limit to 2 hours (except for 1080p). The 4GB file size limit still applies so you aren't going to get 2 hours recording unless you decrease the video quality factor. The limit for 1080p was not changed because the camera gets quite hot recording this so I did not want to risk damaging cameras. Also for 120fps and 240fps the progress bar at the top of the screen still only counts to 30 seconds; but the movie will continue to record beyond this.

Changes in Alpha 5:
- Added firmware version 1.01a
- Fixed problem with touch screen code causing excessive power consumption.
- Added ND filter control override.
- Changed on-screen buttons to be transparent rather than filled. Less intrusive during video or 16:9 still modes.
- Added AE lock, ND filter and exposure controls to video recording. Note this is experimental and may cause the camera to crash.

Changes in Alpha 4:
- Fixed crash in continuous shooting if RAW/DNG enabled
- Added Manual Focus button controls in Alt mode
- Disable RAW/DNG in low light and high speed burst modes
- Buttons and button text are mode / context sensitive. E.G. up/down/left/right not visible unless in menu modes, 'Disp' button labelled 'Back' in menu mode (goes back one menu level in sub-menus), MF buttons only appear in Record mode.
- Compression of badpixel.bin file for DNG images (see note above).

Changes in Alpha 3:
- Fixed AV override crash if shutter button half pressed repeatedly too quickly
- Added setting toggle buttons in Alt mode to easily change common settings
- Improved touchscreen / menu stability (vanishes less often)

Changes in Alpha 2:
- Improved DNG color matrix.
- Removed support for partitioned SD cards > 4GB. The camera can boot CHDK directly on any size SD card so it is not necessary to mess around with partitioning for large cards. To make a card bootable, format the card in either the camera or computer, copy CHDK to the card, do a manual boot using the firmware update method, select 'Make card bootable' from the 'Miscellaneous stuff' menu. After it is done, turn off the camera, lock the card and CHDK will now boot automatically.

The U/I is a bit different to normal CHDK. To enter CHDK 'Alt' mode touch the 'CHDK' button on the screen. This will enter CHDK Alt mode and will then enable 'Menu', 'Set', 'Up', 'Down', 'Left' and 'Right' buttons on the touch screen. Use these to navigate CHDK as you would with a camera that has physical buttons. There is no touch interface on the actual CHDK menus or other parts so touching anything but the buttons won't do anything (yet).

If you want to put a Canon function in the spot occupied by the 'CHDK' button you can still activate it by holding the CHDK button for ~1/2 second - this will activate whatever action you have stored in the slot hidden under the CHDK button.

The following seem to work ok:
- RAW/DNG
- Movie quality override
- Exposure overrides (AV, TV & ISO)
- Scripts (uBasic and Lua), note however that the lack of physical buttons means that scripts that try to click buttons (like Menu & Set) will fail.
- Edge overlay, zebra & histogram
- PTP
- Autoboot and manual boot (via firmware update menu option)

Not implemented / working:
- Games, text reader & calendar
- JPEG quality override (the camera will allow SuperFine to be selected; but the file size is identical to Fine so no point)
- Support for partitioned cards > 4GB (you can still use a large card; but only with manual boot)

Known problems:
- CHDK on-screen buttons & menu may disappear sometimes. The CHDK on screen buttons should still work even if not visible.

==============================================================

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: waterwingz on 15 / July / 2011, 21:21:19
I managed to work out how to detect that the touch screen had been touched and the X,Y position it had been touched at.
Using this I was able to create a 'virtual' button U/I that puts CHDK buttons on the touch screen - see attached image.

Amazing.   Simply amazing.

Doesn't the IXUS200-SD980 have a touch screen too ?


Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 16 / July / 2011, 01:36:58
I managed to work out how to detect that the touch screen had been touched and the X,Y position it had been touched at.
Using this I was able to create a 'virtual' button U/I that puts CHDK buttons on the touch screen - see attached image.

Amazing.   Simply amazing.

Doesn't the IXUS200-SD980 have a touch screen too ?




Thanks :)

The IXUS 200 still has a rear dial, and buttons.
The IXUS 210 is the only other one I know of devoid of usable buttons.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Microfunguy on 16 / July / 2011, 06:03:46
I managed to work out how to detect that the touch screen had been touched and the X,Y position it had been touched at.
Using this I was able to create a 'virtual' button U/I that puts CHDK buttons on the touch screen


A simple question but maybe a complicated answer, how did you do that ?  :)
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 16 / July / 2011, 06:15:54
I managed to work out how to detect that the touch screen had been touched and the X,Y position it had been touched at.
Using this I was able to create a 'virtual' button U/I that puts CHDK buttons on the touch screen


A simple question but maybe a complicated answer, how did you do that ?  :)

Which bit - reverse engineering the touch screen or adding the virtual buttons?

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Microfunguy on 16 / July / 2011, 11:12:10

Which bit - reverse engineering the touch screen or adding the virtual buttons?


Both are of interest, let us start with the reverse engineering.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 16 / July / 2011, 18:26:00

Which bit - reverse engineering the touch screen or adding the virtual buttons?


Both are of interest, let us start with the reverse engineering.

Started by displaying the physw_status values to see if any bits changed when the panel was touched. Only found one bit so I could detect the touch activation; but not the location.

I then searched for the string 'touch' in the firmware - one of the parameters to the DebugAssert function is the original source file name so this would at least give me a starting place to look for the code.

I found "TouchPanelDriver_TSC2008.c" being passed to DebugAssert which not only gave me the location of the driver code; but indicated that the touch panel might device might be named TSC2008. A google search on this found a Texas Instruments touch panel with this name and a downloadable spec sheet. From this I was able to get a basic understanding of the device (serial interface, returns seperate X & Y co-ordinates in either 8 or 12 bit resolution).

I also found a function that was calling the taskCreate function in the driver code - so this was most likely the touch panel firmware task. From this I got the memory address of the control structure being used to manage the touch panel (the memory block where most of the values are stored and retrieved from in the driver).

I then started displaying the various values from this memory block until I found things that looked useful - e.g. locations that consistently changed state when the panel was touched. Did not find anything here that looked like the co-ordinate on the panel that was touched so went back to the code.

Found another location in the code that was storing two 16 bit values that were being loaded from the IO area - this looked like a good candidate for the touched co-ordinates. They changed when the panel was touched; but not in any sensible way.

Back to the firmware and I eventually found a function that was doing conversion on the above two values. It was applying the function 'value = ((value & 0x7FFF) >> 5) ^ 0x3FF)'. Doing the same thing to these values when I displayed them and I got sensible X & Y co-ordinate values for the panel. From this I can see the resolution being used is 10 bits and a bit of experimenting showed me that the valid range is ~ 70 - 980 horizontally and 90 - 980 vertically (hopefully this is consistent on all cameras and not something that needs to be adjusted).

So now I could detect the panel being touched and where it was being touched.

I then tried various methods to block the touch events from the firmware - setting the bit in physw_status, clearing values in the main driver memory block, etc. These either did nothing or crashed the camera.

So finally I hooked the panel driver task into CHDK (like the other tasks being hooked) and copied the task code from the firmware. A bit of trial and error and I found where the touch events were being passed on to the rest of the firmware so I was able to block the events from reaching the firmware.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Microfunguy on 16 / July / 2011, 19:13:59

So finally I hooked the panel driver task into CHDK


That is all very interesting and very impressive.

OK, let us deal with the second part of the question ...
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 16 / July / 2011, 19:18:22

Which bit - reverse engineering the touch screen or adding the virtual buttons?


Both are of interest, let us start with the reverse engineering.

Adding the on-screen buttons was fairly easy - although it's not a great U/I it does work.
This is work-in-progress, it has hard wired values that need to be moved to stubs_min.S; so will probably change quite a bit.

It basically extends the button handling in kbd.c to pretend that physical buttons are pressed.

First I added another value to the button state arrays and a variable to hold the CHDK state of the virtual buttons:
Code: [Select]
static long kbd_new_state[4];
static long kbd_prev_state[4];
static long kbd_mod_state[4];
static long touch_panel_state;

Then I added the virtual buttons to the keymap array. Since I also need to store additional info (co-ordinates and button name) I extended this structure:
Code: [Select]
typedef struct {
    short grp;
    short hackkey;
    long canonkey;
    short   x1, y1, x2, y2;
    char    *nm;
} KeyMap;

static KeyMap keymap[] = {

//  { 1, TOUCH_SCREEN   , 0x00000008 },                 // Touch screen panel
    { 1, KEY_ZOOM_IN    , 0x00001000, 0, 0, 0, 0, 0 },  // Found @0xff3d144c, levent 0x02
    { 1, KEY_ZOOM_OUT   , 0x00008000, 0, 0, 0, 0, 0 },  // Found @0xff3d1454, levent 0x03
    { 2, KEY_SHOOT_HALF , 0x00000200, 0, 0, 0, 0, 0 },  // Found @0xff3d1464, levent 0x00
    { 2, KEY_SHOOT_FULL , 0x00000a00, 0, 0, 0, 0, 0 },  // Found @0xff3d146c, levent 0x01
    { 3, KEY_PRINT      , 0x00000001,  70, 272, 180, 454, "CHDK" }, // virtual touch screen key
    { 3, KEY_MENU , 0x00000002,  70, 454, 180, 636, "Menu" },
    { 3, KEY_SET , 0x00000004,  70, 636, 180, 818, "Set" },
    { 3, KEY_UP , 0x00000010, 870,  90, 980, 272, "Up" },
    { 3, KEY_LEFT , 0x00000020, 870, 272, 980, 454, "Left" },
    { 3, KEY_RIGHT , 0x00000040, 870, 454, 980, 636, "Right" },
    { 3, KEY_DOWN , 0x00000080, 870, 636, 980, 818, "Down" },

    { 0, 0, 0, 0, 0, 0, 0, 0 }
};

The entries where 'grp' is 3 are the on screen buttons. The co-ordinates are the touch panel co-ordinates used to determine if the button is pressed; but are also used to position the OSD button display, the name is displayed inside the OSD button.

The code below is called from the touch panel task to process the touch events and work out which virtual buttons are pressed.
Code: [Select]
// Called from hooked touch panel task (boot.c)
// Return 0 to allow touch event to pass onto firmware, 1 to block event from firmware.
int chdk_process_touch()
{
    // If in canon menu, let the firmware have all the touch events.
    if ((canon_menu_active != (int)&canon_menu_active-4) || (canon_shoot_menu_active != 0)) return 0;

    // Touch co-ordinate
    unsigned short *t = (unsigned short *)(0x28f0);
    unsigned short tx, ty;
    tx = ((t[0] & 0x7FFF) >> 5) ^ 0x3FF;
    ty = ((t[1] & 0x7FFF) >> 5) ^ 0x3FF;

    // Search for CHDK on screen buttons matching co-ordinate
    int i;
    for (i=0; keymap[i].hackkey; i++)
    {
        if ((tx >= keymap[i].x1) && (tx < keymap[i].x2) && (ty >= keymap[i].y1) && (ty < keymap[i].y2))
        {
            touch_panel_state &= ~keymap[i].canonkey;
        }
    }

    // If in alt mode (or about to enter alt mode) block event from firmware
    return (gui_get_mode() != 0) || ((touch_panel_state & 1) == 0);
}

Finally the code below was added to my_kbd_read_keys, this copies the touch panel button state to the CHDK button state variable so that the various routines that check for key presses will detect these as CHDK button presses:
Code: [Select]
    if ((*((int*)(0x28bc+0x8))) == 2)               // Touch screen activated?
    {
        kbd_new_state[3] = touch_panel_state;               // Yes, use virtual button state
    }
    else
    {
        kbd_new_state[3] = touch_panel_state = 0xFFFFFFFF;  // No, clear out virtual button state
    }

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 21 / July / 2011, 08:05:22
Sample image of the current touchscreen U/I (3 screenshots stacked vertically).
Top image is normal shooting mode - CHDK 'Alt' mode button on the left.
Middle image - Alt mode activated, Menu and Set buttons appear along with setting toggle buttons on the right
Bottom image - Alt menu mode

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Kpax on 27 / July / 2011, 09:35:08
Hi Phil, great initiative of you doing this port!

I tried the alpha 3 and 4 but the camera freezes when doing manual upgrade.
I'm not sure if I have firmware 1.00a since I don't know how to display the firmware with the touchscreen-controls, do you know how I do that? Do you know if there exist other firmware versions?

Regards
Kpax
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 27 / July / 2011, 09:46:31
Hi Phil, great initiative of you doing this port!

I tried the alpha 3 and 4 but the camera freezes when doing manual upgrade.
I'm not sure if I have firmware 1.00a since I don't know how to display the firmware with the touchscreen-controls, do you know how I do that? Do you know if there exist other firmware versions?

Regards
Kpax

Format an SD card so it has nothing on it.
Create an empty file on the SD card called vers.req (make sure this is the file name, if you are using Windows you may need to enable file extensions to be shown so you don't create vers.req.txt instead).
Put the card in the camera, hold the zoom lever to the left (zoom out) and start the camera with the rear playback button.
After the camera has started, release the zoom lever and then press it left again - this should now display the camera info.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Kpax on 27 / July / 2011, 10:11:10
Ok, looks like I have a newer version: 1.01a

Are you interested in having a dump of that firmware? (I don't have any experience in extracting it from the camera so in that case I need some guidelines)

/Kpax
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 27 / July / 2011, 19:32:28
Ok, looks like I have a newer version: 1.01a

Are you interested in having a dump of that firmware? (I don't have any experience in extracting it from the camera so in that case I need some guidelines)

/Kpax

Edited the instructions

This worked for me:
- download sdminst from http://stereo.jpn.org/eng/sdm/file/common_files.zip (http://stereo.jpn.org/eng/sdm/file/common_files.zip)
- format the card again and then run the sdminst.exe program
- click on the 'Set Script Flag' and then close sdminst.exe
- copy the attached 'extend.m' and 'script.req' files to the card.
- start in record mode and take a picture (this will help make the script text readable),
- turn off the camera
- start the camera in playback mode (with the button on the back).
- after the camera has started press the zoom lever to the left (zoom out), the script will display a few messages in the top left corner, wait until it has displayed the word 'done'

The card should now have the PRIMARY.BIN file on it.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Kpax on 28 / July / 2011, 07:05:48
Yeah, now I succeeded, felt a bit dumb earlier when I failed...

Where did you said I should upload the dump?

/Kpax
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 28 / July / 2011, 07:11:14
Yeah, now I succeeded, felt a bit dumb earlier when I failed...

Where did you said I should upload the dump?

/Kpax

If you have signed up to any file hosting site then upload there and post the link.
If you're not already using one then box.net (http://box.net/ (http://box.net/)) is free and easy to use.
(Zip the file to reduce the size as well).

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Kpax on 28 / July / 2011, 08:01:24
Ok, here it is: http://www.features.se/downloads/ixus310_elph500-original_fw_101a.zip (http://www.features.se/downloads/ixus310_elph500-original_fw_101a.zip)

Regards
Kpax
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 28 / July / 2011, 08:05:54
Ok, here it is: http://www.features.se/downloads/ixus310_elph500-original_fw_101a.zip (http://www.features.se/downloads/ixus310_elph500-original_fw_101a.zip)

Regards
Kpax

Got it, thx.
Will post a test version when I have a chance.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Kpax on 28 / July / 2011, 08:14:30
Great!
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 28 / July / 2011, 09:01:29
Great!

Difference between the 1.01a and 1.00a firmware does not look too great.

Attached is an initial test version to see if it at least boots CHDK.
All being well you should see the CHDK logo and the camera will start up and work normally (it will start up in playback mode, unless you hold the power button for about 2 seconds).

Most functionality is disabled, including the CHDK touch screen interface so you won't be able to do anything much in CHDK.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Kpax on 29 / July / 2011, 02:11:19
The manual update went well! I see the CHDK-button and the battery-meter.

Great!
/Kpax
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 29 / July / 2011, 05:20:57
The manual update went well! I see the CHDK-button and the battery-meter.

Great!
/Kpax

Attached version enables the CHDK touch screen interface.
If this works you should be able to get into the CHDK menus.
Note - raw saving, and overrides for stills and movies are still disabled.

You should be able to make your SD card bootable from the Miscellaneous stuff --> Make card bootable menu option (this will work for any size card with new cameras).

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Kpax on 29 / July / 2011, 06:55:28
I succeeded to make it bootable. Menus seems to work, haven't test so many functions yet..

Great thanks!  If you releases new versions in the future I will be glad to download and test them.

Regards
Kpax
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 29 / July / 2011, 07:23:56
I succeeded to make it bootable. Menus seems to work, haven't test so many functions yet..

Great thanks!  If you releases new versions in the future I will be glad to download and test them.

Regards
Kpax


Thanks for that - usually don't have this much luck getting things working so quickly.

Fingers crossed the attached version works as well.

This has everything enabled (that is currently implemented) so you should be able to save raw/dng images and use the overrides, scripts etc.

Note that when recording video there are some buttons to lock and adjust exposure. The exposure lock seems to work OK; but I have had crashes when using the exposure adjust buttons.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: kevdog32 on 14 / August / 2011, 21:28:11
On the For Developers page, it links the ELPH100 HS (the IXUS 115 HS) to this thread.
This camera is not touchscreen, but the ELPH500 (IXUS 310) is.

Do these cameras have the same architecture?
Does this alpha version work with my non-touchscreen IXUS 115 or would it mess up since there is the whole touchscreen aspect to worry about.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 14 / August / 2011, 21:45:15
On the For Developers page, it links the ELPH100 HS (the IXUS 115 HS) to this thread.
This camera is not touchscreen, but the ELPH500 (IXUS 310) is.

Do these cameras have the same architecture?
Does this alpha version work with my non-touchscreen IXUS 115 or would it mess up since there is the whole touchscreen aspect to worry about.

Sorry, each camera & firmware version needs it's own unique port of CHDK.
CHDK for the Elph 500 will not work on the Elph 100.

I have fixed the link on the wiki page.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: kevdog32 on 15 / August / 2011, 01:11:56
Sorry, each camera & firmware version needs it's own unique port of CHDK.
CHDK for the Elph 500 will not work on the Elph 100.

I have fixed the link on the wiki page.

Phil.

Ah okay, thanks for clearing that up.

The 115 is one of three cameras on the page that haven't been looked at yet, and the other two are only DIGIC 2s.

Hopefully someone does pick it up.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: fkoch2001 on 18 / August / 2011, 02:53:05
Hello Phil,

thany you for your wonderful work,

but i have a problem :

I installed the chdk Alpha 5 on my ixus 310 hs, Ver. 1.01, and i can start the chdk programm.
I tried to save RAW Files an change the Video Quality Parameter.
I set The Parameter Save RAW and change the Video Quality value.
But nothing happens, no RAW Files are written and the Video Output is always the same size.
In the Startscreen the RAW Button is Red and On and the OvrDis Buttton is Red and Disabl.

Is that corrcect ?

Are there any informations about the Switches and Menu settings available?

thankou in advance

Frank



Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: bart100IS on 21 / August / 2011, 06:47:26
Has anyone been able yet to produce a chdk raw from this camera, and if so, can you please please share a raw file? I'm very very much intersted in how the files look from this HS camera.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Just.J on 23 / August / 2011, 10:45:11
Hello Phil,

I'm really exited of your incredible work on this model (latest alpha-version works pretty well on my friend's camera). I want to start developing elph100 model, and, looking at labels, I mentioned that their firmware are pretty similar (am I wright?), so could you share your sources, or send it to my e-mail ([email protected])?

Thanks in advance,

John
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 24 / August / 2011, 02:28:47
Hello Phil,

I'm really exited of your incredible work on this model (latest alpha-version works pretty well on my friend's camera). I want to start developing elph100 model, and, looking at labels, I mentioned that their firmware are pretty similar (am I wright?), so could you share your sources, or send it to my e-mail ([email protected])?

Thanks in advance,

John

Hi John,

The IXUS 115 (Elph 100) doesn't have a touchscreen, which is where most of the effort for the IXUS 310 has been focussed.
The SX220 is possibly the closest ported camera to use as a starting point for the IXUS 115 - funnel has done a great job on this one.
There are still a lot of differences so it won't be a straightforward conversion, for example:
- 8MB firmware as opposed to 16MB on SX220 and IXUS310
- no rear control dial
- 4:3 LCD display, SX220 and IXUS310 are 16:9

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: Just.J on 24 / August / 2011, 06:28:09
Thanks a lot!
I'll start porting asap. Hope that'll be not so hard..

John
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: whiteout12345 on 30 / August / 2011, 17:53:30
Hi. I'm new at this. I am currently using the 310HS 1.00A Alpha 6 CHDK. In order to be able to use the 1.01A Alpha 7 CHDK, is there any way I could upgrade my firmware from 1.00A to 1.01A? If so, how would I do that? 

Thanks in advance. Great Job.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: philmoz on 30 / August / 2011, 18:25:08
Hi. I'm new at this. I am currently using the 310HS 1.00A Alpha 6 CHDK. In order to be able to use the 1.01A Alpha 7 CHDK, is there any way I could upgrade my firmware from 1.00A to 1.01A? If so, how would I do that? 

Thanks in advance. Great Job.

Alpha 7 is only for 1.01a to fix a problem with movie recording.
Other than that it is identical to Alpha 6 for 1.00a - you can continue to use this version until the next update.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - Touchscreen camera
Post by: nekut on 28 / October / 2011, 21:15:54
Hi,

Recently someone gave me one of those cameras. I tried alpha7 and it works fine. My problem is a bit extra.

Camera has been in water. Playback button does not work. It was a real show stopper before CHDK but I managed to install bootable so it starts at playback (a solution) and camera did not go off, does not retract the lens. With CHDK it is also possible to open battery cover and do ON again in playback to retract the lens. Though this is all pretty much extra for battery cover.

Now I want to ask. How difficult would that be to add a PLAY button and an OFF button to the touchscreen interface? It can turn off and retract itself with auto power off so same instruction must work, I guess. Also adding those to touchscreen may create an alternative interface that maybe useful for some people.

I couldn't find any solid reference to the cross compiling development environment. Is there a guide you can recommend for this? Are your sources available anywhere public? I wish to try this myself but it is welcome if you want to add to your own code  :D

Thanks again for your great work! Camera is already much more usable with CHDK!
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: philmoz on 28 / October / 2011, 22:26:12
Hi,

Recently someone gave me one of those cameras. I tried alpha7 and it works fine. My problem is a bit extra.

Camera has been in water. Playback button does not work. It was a real show stopper before CHDK but I managed to install bootable so it starts at playback (a solution) and camera did not go off, does not retract the lens. With CHDK it is also possible to open battery cover and do ON again in playback to retract the lens. Though this is all pretty much extra for battery cover.

Now I want to ask. How difficult would that be to add a PLAY button and an OFF button to the touchscreen interface? It can turn off and retract itself with auto power off so same instruction must work, I guess. Also adding those to touchscreen may create an alternative interface that maybe useful for some people.

I couldn't find any solid reference to the cross compiling development environment. Is there a guide you can recommend for this? Are your sources available anywhere public? I wish to try this myself but it is welcome if you want to add to your own code  :D

Thanks again for your great work! Camera is already much more usable with CHDK!

The IXUS 310 is now part of the core CHDK source - http://tools.assembla.com/chdk/browser/trunk. (http://tools.assembla.com/chdk/browser/trunk.)
If you are using Windows the quickest way to get a development environment is with CHDK-Shell - http://chdk.wikia.com/wiki/CHDK-Shell. (http://chdk.wikia.com/wiki/CHDK-Shell.)
The CHDK wiki has a number of useful articles for developers - http://chdk.wikia.com/wiki/For_Developers. (http://chdk.wikia.com/wiki/For_Developers.)

It should be possible to add touchscreen buttons that simulate pressing the playback and power buttons on the camera; but it's not a simple change. The button handling code is quite messy.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: philmoz on 29 / October / 2011, 01:49:05
I have added an optional hack to include 'PLAY' and 'OFF' buttons in the CHDK touchscreen OSD.
To enable these you will need to set up a development environment and build your own version.
Edit the platform/ixus310_elph500hs/kbd.c file and uncomment the '#define TS_POWER_PLAY_HACK' line near the top of the file.

Rebuild CHDK and you should have two new buttons in CHDK ALT mode (see attached screenshot).

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: nekut on 29 / October / 2011, 09:35:58
Thanks a lot! You are so quick.

I use linux but also your links are empty, should I somehow login to trunk and developer wiki?

I wish to have a full blown linux development environment. I want to test this as soon as possible.

Cheers,

nekut
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: fe50 on 29 / October / 2011, 09:41:57
...your links are empty, should I somehow login to trunk and developer wiki?
Remove the dot (.) at the end of the links ;)

-->http://chdk.wikia.com/wiki/For_Developers (http://chdk.wikia.com/wiki/For_Developers)
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: nekut on 29 / October / 2011, 10:55:26
Yep I got them. reading.

Best regards,

nekut
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: nekut on 29 / October / 2011, 18:27:52
I quickly took the windows way. I commented out #define for play and power buttons. Compile went successful in both gcc version. But I am way too dumb to find out where are the things I should copy to my SD card. I have no DISKBOOT.BIN or so.

Is this the wrong expectation? What should I copy to my SD card?

Thanks!

nekut
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: philmoz on 29 / October / 2011, 18:53:47
I quickly took the windows way. I commented out #define for play and power buttons. Compile went successful in both gcc version. But I am way too dumb to find out where are the things I should copy to my SD card. I have no DISKBOOT.BIN or so.

Is this the wrong expectation? What should I copy to my SD card?

Thanks!

nekut

The build should end up in the trunk/bin directory.
If you use CHDK-Shell it will be trunk/trunkNNNN/bin directory (where NNNN is the SVN version number).
Depending on what target you build you will either have the DISKBOOT.BIN and PS.FI2 files or a .zip files similiar to those downloaded from the autobuild server.

If you get stuck let me know your firmware version and I'll post a pre-compiled version.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: nekut on 29 / October / 2011, 19:16:25
Well they are generated when I clicked debug! I guess otherwise they were done and "cleaned".

On testing!

nekut
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: nekut on 29 / October / 2011, 19:41:02
It is working as expected! Camera is revived. I am looking forward to show to the person who gave it to me. He already got a new camera, I will offer installing CHDK for him as well.

It is simply brilliant to solve a hardware damage with additional software. Premium engineering. Congrats!

nekut
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: tommi2water on 30 / November / 2011, 10:19:43
When I compared shooting.c from ELPH500 to ELPH300 I probably found a wrong entry in ELPH500 shooting.c file:
Code: [Select]
    { MODE_SCN_POSTER_EFFECT,   33319 },
    { MODE_SCN_POSTER_EFFECT,   33309 },

I assume that it should be:
Code: [Select]
    { MODE_SCN_POSTER_EFFECT,   33319 },
    { MODE_COLOR_ACCENT,   33309 },

Update:
attached: shooting.c.patch for ELPH500 subversion integration
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: Serfer on 01 / December / 2011, 17:26:11
I just dumped my new Elph 500 HS, it has 1.01C, dumped with cBasic Universal Dumper
http://ul.to/xyz6ah4h (http://ul.to/xyz6ah4h)
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: philmoz on 01 / December / 2011, 19:57:14
I just dumped my new Elph 500 HS, it has 1.01C, dumped with cBasic Universal Dumper
http://ul.to/xyz6ah4h (http://ul.to/xyz6ah4h)

Attached is an initial test version for firmware 1.01c.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: fe50 on 02 / December / 2011, 03:59:50
@Serfer
1. Hello & welcome !
2. Thanks for the dump !

@Phil.
...wow, fast as a lightning strike !  8) 

Added the
  • IXUS310 / ELPH500 1.01C
full 16MB dump (dumped with cBasic udumper) provided by Serfer from this forum post (http://chdk.setepontos.com/index.php?topic=6634.msg77075#msg77075) to the box.net/chdk (http://www.box.net/chdk) repository.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: Serfer on 02 / December / 2011, 12:01:05
I just dumped my new Elph 500 HS, it has 1.01C, dumped with cBasic Universal Dumper
http://ul.to/xyz6ah4h (http://ul.to/xyz6ah4h)

Attached is an initial test version for firmware 1.01c.

Phil.

It works so far, many thanks!
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: anshley on 08 / December / 2011, 15:58:17
I just dumped my new Elph 500 HS, it has 1.01C, dumped with cBasic Universal Dumper
http://ul.to/xyz6ah4h (http://ul.to/xyz6ah4h)

Attached is an initial test version for firmware 1.01c.

Phil.

Hi Phil,

 I just tried to install it on my IXUS 310. As soon as I selected update firmware, the screen went black and now my camera is not starting.

Please help.

Thanks,
Anshley
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: philmoz on 08 / December / 2011, 16:12:23
I just dumped my new Elph 500 HS, it has 1.01C, dumped with cBasic Universal Dumper
http://ul.to/xyz6ah4h (http://ul.to/xyz6ah4h)

Attached is an initial test version for firmware 1.01c.

Phil.

Hi Phil,

 I just tried to install it on my IXUS 310. As soon as I selected update firmware, the screen went black and now my camera is not starting.

Please help.

Thanks,
Anshley

You probably tried the wrong version of CHDK for you camera.
The CHDK version has to match the firmware in your camera.

Remove and replace the battery should bring it back to life.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: pandy87 on 10 / December / 2011, 05:15:27
Hi philmoz!

I can´t open the .CR2 files in camera raw or photoshop. Do you know how to solve the problem? Thanks in advance!

Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: waterwingz on 10 / December / 2011, 09:38:15
I can´t open the .CR2 files in camera raw or photoshop. Do you know how to solve the problem? Thanks in advance!
You need to read through these, probably in the order they are listed :

link> CHDK Wiki Page about RAW (http://chdk.wikia.com/wiki/Raw)
link> CHDK Forum thread on RAW (http://chdk.setepontos.com/index.php?topic=1532.msg13819#msg13819)

link> CHDK Wiki Page about Raw Software (http://chdk.wikia.com/wiki/Software#RAW_Conversion)
link> How do you fix lens distortion with CHDK RAW files? (http://chdk.setepontos.com/index.php?topic=6996)
link> Decoding CHDK RAW images from a new cameras (http://chdk.setepontos.com/index.php?topic=5855.msg59260#msg59260)link> CHDK Forum Board for RAW (http://chdk.setepontos.com/index.php?board=15.0)

Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: pandy87 on 11 / December / 2011, 06:24:38
I can´t open the .CR2 files in camera raw or photoshop. Do you know how to solve the problem? Thanks in advance!
You need to read through these, probably in the order they are listed :

link> CHDK Wiki Page about RAW (http://chdk.wikia.com/wiki/Raw)
link> CHDK Forum thread on RAW (http://chdk.setepontos.com/index.php?topic=1532.msg13819#msg13819)

link> CHDK Wiki Page about Raw Software (http://chdk.wikia.com/wiki/Software#RAW_Conversion)
link> How do you fix lens distortion with CHDK RAW files? (http://chdk.setepontos.com/index.php?topic=6996)
link> Decoding CHDK RAW images from a new cameras (http://chdk.setepontos.com/index.php?topic=5855.msg59260#msg59260)link> CHDK Forum Board for RAW (http://chdk.setepontos.com/index.php?board=15.0)


Thx for the links waterwingz, but i still can´t find a CHDK Raw to DNG convert that support IXUS 310 HS RAW.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: waterwingz on 11 / December / 2011, 09:45:18
Thx for the links waterwingz, but i still can´t find a CHDK Raw to DNG convert that support IXUS 310 HS RAW.
With each new CHDK supported camera,  there is typically a new CHDK RAW file "type".  As noted in the links I posted,  the CHDK RAW file is not really a file format though - its a simple dump of the sensor memory.  To interpret it,  you need to know the sensor geometry used to make the RAW file ( number of rows of pixels and number of columns of pixels). 

Most of the photography software that handles RAW formats is based on a program called dcraw.  Dcraw makes a guess about what camera the RAW file comes from based (AFAIK) on the exact file size. If it has a match on the file size its because somebody added that file information to dcraw so it knows how to convert to other formats (i.e. it knows the number of rows and columns for that file size so can convert it).

There is a process to submit this information to Dave Coffin - the author of dcraw.  Here's quote from his web site http://www.cybercom.net/~dcoffin/dcraw/ (http://www.cybercom.net/~dcoffin/dcraw/)

Quote from: dcoffin link=http://www.cybercom.net/~dcoffin/dcraw/
Does dcraw work with my camera?
Most likely, yes. If your camera is not on the Supported list, try dcraw anyway. If it doesn't work perfectly, don't just sit quietly waiting for my next version. Ask me if I need any raw photos, or go ahead and post a photo to your website and e-mail me the URL.
You can submit you RAW file to him,  but to get the color balance right you usually need to submit a picture of a calibrated color card.  Those are about $100 iirc.

Its been a while since I've played with the other packages - maybe somebody else can jump in here ?  Is there a program that lets you specify the X & Y of a CHDK RAW file and convert it to other formats ( like DNG ) ?

Update :  this might help too : http://chdk.wikia.com/wiki/CHDK_Tools#rawconvert.c (http://chdk.wikia.com/wiki/CHDK_Tools#rawconvert.c)
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: Netherflame on 09 / March / 2012, 00:13:29
Hey,

I've been testing CHDK on the IXUS 310 HS (ELPH 500 HS) for a couple of days now, but I can't seem to figure out how to do manual focus using bracket values while recording.
This far I've tried enabling MF (subj. distance(?)) and bugging the camera by clicking the <Alt> menu and the Record button simultaneously, it appears to work, but the menu freezes and does not seem to change focus values at all.
If I after enabling MF just start recording I get three buttons at the bottom by the names of [-Sv+] [-Av+] [-Tv+], which values exactly these are and what they do I am not sure of, but they don't appear to have any relation to the focus.

Please, care to enlighten me on this matter?

nf
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: fe50 on 09 / March / 2012, 01:22:20
Its been a while since I've played with the other packages - maybe somebody else can jump in here ?  Is there a program that lets you specify the X & Y of a CHDK RAW file and convert it to other formats ( like DNG ) ?
Why not using the good, old DNG4PS-2 CHDK RAW-to-DNG converter ?
* http://chdk.wikia.com/wiki/DNG4PS-2 (http://chdk.wikia.com/wiki/DNG4PS-2)

Works also very good with newer cameras, the settings needed can be found easily in the source code...
Once found, the settings should be added to the list here:
* http://chdk.wikia.com/wiki/DNG4PS-2#Camera%20settings (http://chdk.wikia.com/wiki/DNG4PS-2#Camera%20settings)
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: Gil He on 18 / April / 2012, 18:49:53
Hi, I'm Gil and I'm new here. I have a Elph 500 HS 1.01b, and wanted to use CHDK with it but there is no build for it at the moment. I would like to add a dump of the firmware but I don't know any programming stuff and the regular CHDK's Obtaining a Firmware Dump page just talks way over my head.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: Gil He on 18 / April / 2012, 18:53:24
Never mind, dump obtained~
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: jgw321 on 13 / May / 2012, 16:55:26
Hi Phil,
 I just tried to install it on my IXUS 310. As soon as I selected update firmware, the screen went black and now my camera is not starting.

I have the same problem as Anshley, but I am pretty sure I have the right version,  I used acid.jar to verify my firmware and get me the download.  I have also used this alpha.  In each case; ixus310_elph500hs-101c-1.0.0-1825-full_BETA.zip and ixus310_elph500hs-100a-0.9.9-Alpha6-full.zip, I have tried both methods of loading, that is making the card bootable, and loading via the firmware upgrade method.  Either way, the camera immediately blanks and locks up and can not be switched off or on until the batteries are removed and replaced.

I took a dump of my firmware and compared it to the dump that Kpax took in post #16 http://chdk.setepontos.com/index.php?topic=6634.msg70955#msg70955. (http://chdk.setepontos.com/index.php?topic=6634.msg70955#msg70955.)  Beyond-Compare2 reports the two files as identical.  Everyone else seems to be OK with this, I wish I knew the secret incantation that they use.

JG
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: philmoz on 13 / May / 2012, 17:04:05
I took a dump of my firmware and compared it to the dump that Kpax took in post #16 http://chdk.setepontos.com/index.php?topic=6634.msg70955#msg70955. (http://chdk.setepontos.com/index.php?topic=6634.msg70955#msg70955.)  Beyond-Compare2 reports the two files as identical.  Everyone else seems to be OK with this, I wish I knew the secret incantation that they use.

If your firmware dump is the same as the one posted in that link then you have firmware version 1.01a.

Neither the 1.01c or 1.00a versions you tried will work.

The correct version for 1.01a would be http://mighty-hoernsche.de/bins/ixus310_elph500hs-101a-1.0.0-1846-full_BETA.zip (http://mighty-hoernsche.de/bins/ixus310_elph500hs-101a-1.0.0-1846-full_BETA.zip)

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: waterwingz on 13 / May / 2012, 17:35:44
I have tried both methods of loading, that is making the card bootable, and loading via the firmware upgrade method.  Either way, the camera immediately blanks and locks up and can not be switched off or on until the batteries are removed and replaced.
This usually means you have completed all the setup steps correctly but have the wrong firmware version.

Quote
I took a dump of my firmware and compared it to the dump that Kpax took in post #16 http://chdk.setepontos.com/index.php?topic=6634.msg70955#msg70955. (http://chdk.setepontos.com/index.php?topic=6634.msg70955#msg70955.)  Beyond-Compare2 reports the two files as identical.  Everyone else seems to be OK with this, I wish I knew the secret incantation that they use.
The dump on that post is for firmware version 1.01A  .   The two version that you report trying above are 1.00A and 1.01C .   Did you actually download and try the 1.01A version when you used acid.jar ?

Update : dup to philmoz's post above - passed in crossing ....
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: jgw321 on 14 / May / 2012, 05:53:53
I have the same problem as Anshley, but I am pretty sure I have the right version

Oops!  Tail between the legs time.

As soon as I looked at your post with my quotes I could see where I had gone wrong. When I went to the Beta downloads ixus310_elph500hs-101c-1.0.0-1825-full_BETA.zip  I looked at the  1.0.0 part of the name which I mistook to be the Canon firmware version number.  As they were all the same (1.0.0) I took the latest one.  I now realise that this is the version number for the build and I should be looking at the 101a bit of the name which I assume equates to the 1.0.1.0 that I have in my firmware version number as reported by the camera.

I hadn't tried the version downloaded by acid as I mistakenly thought it was the same as I already had.  I have now successfully loaded CHDK, and so it is now on to try it out, badpixels and all that stuff.  Many thanks to both of you philmoz and waterwingz for your prompt responses and sorry to have wasted your time.  Chalk it up as Education on the expenses sheet.

JG
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: soheilr on 22 / July / 2012, 13:19:22
Thx for the links waterwingz, but i still can´t find a CHDK Raw to DNG convert that support IXUS 310 HS RAW.
With each new CHDK supported camera,  there is typically a new CHDK RAW file "type".  As noted in the links I posted,  the CHDK RAW file is not really a file format though - its a simple dump of the sensor memory.  To interpret it,  you need to know the sensor geometry used to make the RAW file ( number of rows of pixels and number of columns of pixels). 

Most of the photography software that handles RAW formats is based on a program called dcraw.  Dcraw makes a guess about what camera the RAW file comes from based (AFAIK) on the exact file size. If it has a match on the file size its because somebody added that file information to dcraw so it knows how to convert to other formats (i.e. it knows the number of rows and columns for that file size so can convert it).

There is a process to submit this information to Dave Coffin - the author of dcraw.  Here's quote from his web site http://www.cybercom.net/~dcoffin/dcraw/ (http://www.cybercom.net/~dcoffin/dcraw/)

Quote from: dcoffin link=http://www.cybercom.net/~dcoffin/dcraw/
Does dcraw work with my camera?
Most likely, yes. If your camera is not on the Supported list, try dcraw anyway. If it doesn't work perfectly, don't just sit quietly waiting for my next version. Ask me if I need any raw photos, or go ahead and post a photo to your website and e-mail me the URL.
You can submit you RAW file to him,  but to get the color balance right you usually need to submit a picture of a calibrated color card.  Those are about $100 iirc.

Its been a while since I've played with the other packages - maybe somebody else can jump in here ?  Is there a program that lets you specify the X & Y of a CHDK RAW file and convert it to other formats ( like DNG ) ?

Update :  this might help too : http://chdk.wikia.com/wiki/CHDK_Tools#rawconvert.c (http://chdk.wikia.com/wiki/CHDK_Tools#rawconvert.c)

For your information: RawTherapee 4.0.9.50 (64 bit) can manage IXUS 310 HS (Elph 500 HS / IXY 31S) .cr2 raw dumps.

Update: RawTherapee loads the CR2 files; but does not fix the bad pixels.

I was hoping to simply use the badpixel.bin file (generated by the CHDK script) to map out the bad pixels in RawTherapee but it seems as if this is not possible now as the CHDK generates the information in binary format and RawTherapee requires the information in text format.

See http://code.google.com/p/rawtherapee/issues/detail?id=1009&q=badpixel.bin&colspec=ID%20Opened%20Modified%20Type%20Status%20Priority%20Milestone%20Summary%20Owner%20Stars (http://code.google.com/p/rawtherapee/issues/detail?id=1009&q=badpixel.bin&colspec=ID%20Opened%20Modified%20Type%20Status%20Priority%20Milestone%20Summary%20Owner%20Stars)

If I figure out a workaround I will post it. In the meantime, if anyone else has an idea please share. :D



 
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: blackhole on 23 / July / 2012, 11:39:17
Quote
Update: RawTherapee loads the CR2 files; but does not fix the bad pixels.

Have you enabled the hot / dead pixel filter



Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: soheilr on 23 / July / 2012, 16:01:14
Quote
Update: RawTherapee loads the CR2 files; but does not fix the bad pixels.

Have you enabled the hot / dead pixel filter

Yes. I have tried that. I have tried pretty much every setting, short for manually mapping the sensor, unfortunately without good results.

When I compare the JPG to the CR2 files it's obvious that the hot / dead pixels are not noise caused by ISO (shot at ISO 100 anyhow).

If I am lucky, the hot / dead pixels are not caused faulty software conversation (due to the fact that IXUS HS 310 is not officially supported by the software, at least not to my knowledge) and consequently a badpixel filter should amend the faults.

Anyhow I have switched the settings to DNG from now on, but sadly I discovered the wrong settings when I had shot 400 landscape pictures in the French Alps (a place I will not be able to visit soon again) and I have an interest to solve this problem.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: philmoz on 23 / July / 2012, 18:49:54
Quote
Update: RawTherapee loads the CR2 files; but does not fix the bad pixels.

Have you enabled the hot / dead pixel filter

Yes. I have tried that. I have tried pretty much every setting, short for manually mapping the sensor, unfortunately without good results.

When I compare the JPG to the CR2 files it's obvious that the hot / dead pixels are not noise caused by ISO (shot at ISO 100 anyhow).

If I am lucky, the hot / dead pixels are not caused faulty software conversation (due to the fact that IXUS HS 310 is not officially supported by the software, at least not to my knowledge) and consequently a badpixel filter should amend the faults.

Anyhow I have switched the settings to DNG from now on, but sadly I discovered the wrong settings when I had shot 400 landscape pictures in the French Alps (a place I will not be able to visit soon again) and I have an interest to solve this problem.

Download DNG4PS2 from http://code.google.com/p/dng4ps2/ (http://code.google.com/p/dng4ps2/)
Run the program, select the settings button and go to the Camera Options tab.
Select a camera from the list and click the 'Copy...' button.
Enter the following details for the new camera settings:
Camera name = Canon IXUS 310 HS
Short name = IXUS 310 HS
Sensor size = 4168 x 3060
Jpeg size = 4016 x 3004
Active zone x1, y1 = 120, 36
Active zone x2, y2 = 4136, 3040
Black-white levels = 127, 4095
Mosaic type = Red,Green,Green,Blue
Bits per unit = 12 bit
Color matrix # 1:
Illuminant = Daylight
Matrix = 5.448080 -1.740470 -0.803990 -0.750550 4.404440 0.113670 -0.058010 0.715890 1.189140
Multiplicator = 1.0 1.0 1.0

Click Ok, on the Setting dialog.
Click the Settings button again then select the Camera Types tab.
Select 'IXUS 310 HS' in the 4168x3060 entry, click OK.

Browse to where your RAW files are stored and then click convert - if you have the JPEG images as well make sure they are in the same directory and the program will copy the EXIF data from the JPEG.

DNG4PS2 will do bad pixel removal when it does the conversion.

Phil.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: soheilr on 24 / July / 2012, 15:25:16
Quote
Update: RawTherapee loads the CR2 files; but does not fix the bad pixels.

Have you enabled the hot / dead pixel filter

Yes. I have tried that. I have tried pretty much every setting, short for manually mapping the sensor, unfortunately without good results.

When I compare the JPG to the CR2 files it's obvious that the hot / dead pixels are not noise caused by ISO (shot at ISO 100 anyhow).

If I am lucky, the hot / dead pixels are not caused faulty software conversation (due to the fact that IXUS HS 310 is not officially supported by the software, at least not to my knowledge) and consequently a badpixel filter should amend the faults.

Anyhow I have switched the settings to DNG from now on, but sadly I discovered the wrong settings when I had shot 400 landscape pictures in the French Alps (a place I will not be able to visit soon again) and I have an interest to solve this problem.

Download DNG4PS2 from http://code.google.com/p/dng4ps2/ (http://code.google.com/p/dng4ps2/)
Run the program, select the settings button and go to the Camera Options tab.
Select a camera from the list and click the 'Copy...' button.
Enter the following details for the new camera settings:
Camera name = Canon IXUS 310 HS
Short name = IXUS 310 HS
Sensor size = 4168 x 3060
Jpeg size = 4016 x 3004
Active zone x1, y1 = 120, 36
Active zone x2, y2 = 4136, 3040
Black-white levels = 127, 4095
Mosaic type = Red,Green,Green,Blue
Bits per unit = 12 bit
Color matrix # 1:
Illuminant = Daylight
Matrix = 5.448080 -1.740470 -0.803990 -0.750550 4.404440 0.113670 -0.058010 0.715890 1.189140
Multiplicator = 1.0 1.0 1.0

Click Ok, on the Setting dialog.
Click the Settings button again then select the Camera Types tab.
Select 'IXUS 310 HS' in the 4168x3060 entry, click OK.

Browse to where your RAW files are stored and then click convert - if you have the JPEG images as well make sure they are in the same directory and the program will copy the EXIF data from the JPEG.

DNG4PS2 will do bad pixel removal when it does the conversion.

Phil.


Phil,

You have no idea how glad you made me with your post.

I tried it. It worked like a charm! You really deserve your title “Hero member”!

I only wish you lived in Sweden so I could buy you a good meal and shake your hand!

Thank you very very much!  :D :D :D :D

/Soheil
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: dutchie on 20 / August / 2012, 21:25:07
Thanks alot for the info.trying it as I type.
This forum is awesome!!!!
you guys rock!
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: Caefix on 23 / June / 2020, 14:50:27
 :D :haha

Some kind of black & white cam.
The splash screen is very white booting to 'play' & white on gray to 'rec'.
Menues same.

... ?
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: Caefix on 26 / June / 2020, 14:18:53
Found  :-* howtodo,
https://chdk.setepontos.com/index.php?topic=13929.msg141784#msg141784
 but not all colors are displayed, so red & green is limited, no magenta.
As close as possible manually picked solution attached.
Code: [Select]
/*
Before that I tried a ToNotDo with the .h...
...Cam became lunatic.

    #define CHDK_COLOR_BASE                     0x00    // Start color index for CHDK colors loaded into camera palette.

That traps cam in a  |: boot -~15sec<...> - "ffffffff" - playsound(0) :| loop.
No "0x" here, because it´s a short accustic white noise.
*/
Edit: New p*.c because of a missing comma.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: Caefix on 27 / June / 2020, 12:08:35
 :) 3rd attachement.
Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: philmoz on 27 / June / 2020, 18:19:20
:D :haha

Some kind of black & white cam.
The splash screen is very white booting to 'play' & white on gray to 'rec'.
Menues same.

... ?


The IXUS 310 loads it's own custom colours into the Canon palette in the load_chck_palette function.
It has all of the standard CHDK colours correctly defined.


Are you using the version from the auto build server or compiling it yourself?
If you are compiling it yourself, have you tried the auto build version?
What firmware version is the camera?

Title: Re: IXUS 310 HS (Elph 500 HS / IXY 31S) - available from the autobuild server
Post by: Caefix on 28 / June / 2020, 11:43:16
 :blink: Retried today´s 1.4 & 1.5. @ 101a. All B&W (with some grays & light blue in rec). // recompiled r5163 same.

Edit: New p*.c because of a missing comma.