Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Greg

Pages: [1]
1
Reverse Engineering / Sensor Factory Calibration
« on: November 28, 2018, 02:19:44 PM »
Sensor Factory Calibration
(500D)

RAM (ISO100) 0x30A10C - 0x30EC8C
ROM (ISO100) 0xFFA0590C - 0xFFA0A48C

RAM
Code: [Select]
ISO 100 0x30A10C
ISO 200 0x30EC94
ISO 400 0x31381C
ISO 800 0x3183A4
ISO 1600 0x31CF2C
ISO 3200 0x321AB4
ISO 6400 0x32663C
ISO 12800 0x32B1C4

I found the adress in RAM using QEMU FRSP-log:

Code: [Select]
[EDMAC#9] Starting transfer from 0x30A10C to <15>, 4832x4, flags=0x10000
[EDMAC#9] 19328 bytes read from 30A10C-30EC8C.

How to find in RAM?
Code: [Select]
Find hex values :
4D 00 01 01 88 4B 00 00
4D -> ISO 100?
88 4B -> 0x4b88 = ‭4834‬ // 4834 - 2 = 4832 500D width

Now let's try to find in 5D3 rom
‭5936‬ + 2 = 5938
5938*4 = 0x‭5CC8‬

4D 00 01 01 C8 5C 00 00
The address is after these hex values

What is this data?

The data is packed in 16 bits of 2 values for each column.

Left optical black [512, 0] (these are approximate values, different for each column):


After left optical black [512, 512] (these are approximate values, different for each column):


Changing the first value affects the black level column by -1.
Black level 1024
value -1 -> 1025
value +1 -> 1023

Dark frames (+5EV)

(Canon Default | Whole buffer filled [0,0] | Whole buffer filled [512,512] | Buffer after left optical black filled [512,512]) :

2
Share Your Photos / Polish coin - panorama.
« on: November 14, 2013, 02:47:26 AM »
Hello,
I would like to show you my latest panorama of the Polish coin.
http://www.wadowice360.pl/moneta-2-zlote

3
Feature Requests / 500D folder number
« on: October 24, 2013, 10:13:23 PM »
The folder number on the 500D is PROP 0x2010001
If anyone needs selecting folder number. I think we can do a module in free time.


4
General Chat / I am looking for a job!
« on: October 09, 2013, 01:14:49 AM »
Hello,

I am looking for a job, I can do Panoramas in Europe (if you are outside of Europe I can help you, too!). I have special equipment and I am able to take high quality pictures, if locality allows. (Germany, Czech Republic, Slovakia and Poland).

If you run a 360° Panorama Company that does virtual tours for your clients I would love to help you to stitch panoramas and build the virtual tour system. All you need to do is send me the pictures and I will do the rest.

Simply contact me on the forum or send me an email to

Here you can see my latest example of the virtual tour:

5
General Development Discussion / Fast Advanced Bracket
« on: September 28, 2013, 01:35:15 AM »
Bracketing ML is slow. I decided to change it.  ;)



This work on 500D.

Example video :

Here is the code (requires cleaning, maybe tomorrow):
https://bitbucket.org/Gr3g01/ml-hdr/commits/d0d618ba2cb62533757311e4112378ed50bbfa0d

New repository :
https://bitbucket.org/Gr3g01/ml-hdr2/compare#diff

6
Modules Development / Sensor cleaning module
« on: September 11, 2013, 03:04:27 AM »

7
Module writing Q&A / Creating a new module problem
« on: September 10, 2013, 08:33:17 PM »
What's the problem?

Compile error:
Code: [Select]
[ README   ]   module_strings.h
Traceback (most recent call last):
  File "../readme2modulestrings.py", line 108, in <module>
    seconds = float(split[0]) + float(split[1])
ValueError: could not convert string to float:

8
Feature Requests / Silent pictures raw full camera resolution
« on: June 06, 2013, 11:16:04 PM »
Can we do silent pictures raw full camera resolution?
If this is not possible, then we can move the focus box to 5x crop mode and converter creates full resolution dng.

9
Reverse Engineering / AFMA 500D
« on: May 26, 2013, 04:23:48 PM »
I checked a few values AFMA on 500D

Code: [Select]
PROP_AFMA 0x80010006
len = 0xE
buf[0x0] = 8
buf[0x1] = 0
buf[0x2] = 0
buf[0x3] = 0
buf[0x4] = 0
buf[0x5] = 0
buf[0x6] = 0
buf[0x7] = 0 //AFMA_MODE ?
buf[0x8] = 6
buf[0x9] = 7
buf[0xA] = 0
buf[0xB] = 0
buf[0xC] = 0
buf[0xD] = 0

Does anyone have any idea what's next?

10
Feature Requests / Create a directory 500D
« on: March 20, 2013, 08:22:18 PM »
I would like to create separate folders for photos.
This code will create a directory :

Code: [Select]
FIO_CreateDirectory(CARD_DRIVE "DCIM/101CANON");
The camera uses this folder to store images after removing the battery.
How can I force the camera to record images in this folder?

11
Scripting Q&A / Focus infinity
« on: March 03, 2013, 06:50:37 PM »
The script is to be found infinity always in the same place. To assist it in focus stacking.

Code: [Select]
/*
@title Stacking - infinity
*/

if (!lv) { click(LV); sleep(2); }
printf("Focus Stacking - infinity\n");
focus_setup(3, 20, 1); // step size 3, delay 20ms, wait
sleep(0.1);

struct dof * C = get_dof();
int fs = C->focus_dist;
if (fs == 65535)
{
focus_setup(2, 20, 1); // step size 3, delay 20ms, wait
}

for (int j = 0; j < 3; j++)
{
if(j == 1)
{
focus_setup(1, 20, 1); // step size 1, delay 20ms, wait
}

struct dof * D = get_dof();
fs = D->focus_dist;

while (fs == 65535)
{
focus(1);
struct dof * E = get_dof();
fs = E->focus_dist;
}

while (fs != 65535)
{
focus(-1);
struct dof * F = get_dof();
fs = F->focus_dist;
sleep(0.2);
}
sleep(0.1);
}
focus(1); //need for 17-40L

printf("Focus distance : %d mm\n", fs);

12
Feature Requests / Image review settings
« on: January 26, 2013, 09:47:08 PM »
We can do the function SET + MainDial: Lighten?
This would act as a layer lighten in photoshop.

Sample video from exposure fusion :

13
General Development Discussion / 500D control such as 5D II.
« on: November 12, 2012, 09:19:54 PM »
I came up with the idea that the ISO can add GUI flash exposure compensation. As is the 5D II.

The main problem in the 500D - ISO button moves to the ISO menu but still returns GUI = 0 The entrance to the ISO menu by pressing the SET returns GUI = 31

Currently done only display data in GUI = 31



We are able to detect the occurrence of buttons up - down? To change the value of the FEC.

14
How can i find the code to the AF button ?
The following code does not work with the liveview

Code: [Select]
#define BGMT_PRESS_ZOOMOUT_MAYBE 0xD

-----------------------------------------------------------------------------------

if (lv && HALFSHUTTER_PRESSED)
            {
                fake_simple_button(BGMT_PRESS_ZOOMOUT_MAYBE);
            }

I wanted to move the AF button to halfshutter while Live View on 500D

15
Share Your Photos / Virtual Tours 360
« on: July 10, 2012, 11:01:11 PM »
I specialize in 360 panoramas, here you can see the latest projects of virtual tours in Poland. It was a lot of fun working on it, I am planning on adding more panoramas soon. I am using ML to do HDR.

http://www.wadowice360.pl/

16
Is it possible to control flash with the ML?
I mean HSS for manual flash and sound flash trigger.

The HSS can be done in the following way:
shutter button (start flash function) - > shutter lag (delay) -> start flash

Pages: [1]