Current Server Time: 19:09 (Central Europe)

#apertus IRC Channel Logs

2013/11/07

Timezone: UTC


23:01
Sasha_C
left the channel
23:22
rexbron
joined the channel
23:22
rexbron
left the channel
23:22
rexbron
joined the channel
23:24
troy_s
joined the channel
23:28
Bertl
back now ...
23:37
FergusL
wb Bertl
23:37
FergusL
my VNG python script now works perfect !
23:37
FergusL
but it's painfully slow and utterly stupid in its inner workings
23:38
Bertl
how do you know it works perfectly?
23:38
FergusL
I tried with a test image
23:39
Bertl
and how did you evaluate the result?
23:42
FergusL
comparison
23:42
FergusL
brb, let me show you after dinner
23:46
Jehan_ZeMarmot
joined the channel
23:46
Jehan_ZeMarmot
Hi.
23:46
Bertl
hey
23:46
Jehan_ZeMarmot
Sebastian told me to come down here for some bash script. :-)
23:46
Jehan_ZeMarmot
I have not read the pdf yet though.
23:46
Bertl
excellent! what script in particular?
23:47
Jehan_ZeMarmot
Bertl: no idea.
23:47
Jehan_ZeMarmot
He just told me some scripts were needed.
23:47
Jehan_ZeMarmot
I can write what you need.
23:47
Bertl
that sounds good!
23:47
Bertl
actually that sound great! :)
23:48
Jehan_ZeMarmot
Bertl: I guess I have to read this pdf manual though?
23:48
Jehan_ZeMarmot
He forwarded an email about PLL and I have no idea what it is. Apparently he could not tell me either.
23:48
Bertl
hehe, yeah, you probably have to read that to write a script
23:48
Jehan_ZeMarmot
I know about software, unfortunately not much about hardware.
23:49
Jehan_ZeMarmot
Ok. I'll read it now.
23:49
Bertl
do you have an idea what a PLL is?
23:49
Jehan_ZeMarmot
Bertl: none.
23:49
Jehan_ZeMarmot
I mean, I have from the name.
23:49
Jehan_ZeMarmot
Phase-Locked Loop.
23:49
Bertl
okay, let me give you a wikipedia supported crash course then
23:49
Jehan_ZeMarmot
But that does not help much. :-D
23:49
Bertl
http://en.wikipedia.org/wiki/Phase-locked_loop
23:50
Bertl
http://en.wikipedia.org/wiki/File:PLL_generic_inline.svg
23:50
Bertl
this is the basic building block for a PLL
23:50
Bertl
looks complicated, but the principle is rather simple
23:51
Bertl
you have a frequency at the input, a variable oscillator running inside producing the output and a feedback loop which adjusts the oscillator to 'match' the input somehow
23:52
Jehan_ZeMarmot
I see.
23:52
Jehan_ZeMarmot
And what is this output for?
23:52
Bertl
http://www.xilinx.com/support/documentation/user_guides/ug472_7Series_Clocking.pdf
23:53
Jehan_ZeMarmot
The pdf Seb sent me was: http://www.xilinx.com/support/documentation/application_notes/xapp888_7Series_DynamicRecon.pdf
23:53
Bertl
on page 71 you have an example for such a setup
23:53
Bertl
the output is used to control various building blocks in an FPGA
23:53
Bertl
in this specific case the HDMI output
23:54
Jehan_ZeMarmot
Ok. Looks complicated. :-)
23:54
Jehan_ZeMarmot
Am I supposed to read this second pdf too fully?
23:54
Jehan_ZeMarmot
114 pages.
23:54
Bertl
not really
23:54
Jehan_ZeMarmot
Cool.
23:54
Jehan_ZeMarmot
It is rainy outside, but still. :p
23:54
Bertl
but it will help to read the MMCM/PLL sections
23:55
Bertl
so basically chapter 3
23:55
Jehan_ZeMarmot
Basically though if I understand:
23:55
Jehan_ZeMarmot
This PLL has an input (that you can provide through a bash API you wrote) which controls an output.
23:56
Jehan_ZeMarmot
You want to have an easy script to set the input from a terminal, using this API.
23:56
Jehan_ZeMarmot
Is that it?
23:56
Bertl
not exactly
23:56
Jehan_ZeMarmot
Ok.
23:56
Bertl
it is a little more complicated, but we'll get there soon
23:57
Jehan_ZeMarmot
Ok. I guess I'll have to read these then.
23:57
Jehan_ZeMarmot
I was hoping for a shortcut. :p
23:57
Bertl
for us, the basic function of the PLL is to take a fixed input (100MHz clock)
23:57
Bertl
and generate a 'desired' output (50-250MHz) in a stable manner
23:58
Bertl
to do that, we use something called the DRP (dynamic reconfiguration port) for this PLL
23:58
Bertl
which allows us to 'reprogramm' the PLL from a bash script
23:59
Bertl
(by setting the DRP registers)
23:59
Jehan_ZeMarmot
I see.
23:59
Jehan_ZeMarmot
And you already have the base block for this?
23:59
Bertl
think of it like reprogramming a device by setting specific registers
23:59
Jehan_ZeMarmot
Like some low level API call.
00:00
Jehan_ZeMarmot
And you would like an higher level script, then?
00:00
Bertl
yes, the registers are mapped into memory, the platform is arm linux, so if you stick to shell scripting for example, there is a simple wrapper which uses the command devmem
00:01
Jehan_ZeMarmot
I see.
00:01
Bertl
let me upload the code, sec
00:02
Jehan_ZeMarmot
I see that devmem seems to be a busybox command.
00:04
Bertl
http://vserver.13thfloor.at/Stuff/AXIOM/SCRIPTS/cmv.func
00:04
Bertl
the last function 'pll_reg' will allow to read and write the DRP registers
00:04
Jehan_ZeMarmot
I can't find the same command in a normal GNU environment. But I could find a devmem2. Is it working the same?
00:05
Bertl
basically, but if you want to 'test' just replace devmem by a printf or echo
00:05
Bertl
(otherwise you'll overwrite your memory with garbage)
00:05
Bertl
alternatively you can use the busybox here:
00:05
Jehan_ZeMarmot
lol ok.
00:06
Bertl
http://vserver.13thfloor.at/Stuff/AXIOM/FAKE/
00:06
Bertl
which uses a 'fake' devmem
00:06
Bertl
i.e. it accesses /tmp/mem instead of /dev/mem
00:06
Bertl
https://wiki.apertus.org/index.php?title=Axiom_Alpha_Prototype#Reading_and_Writing_Sensor_Register
00:06
FergusL
hi Jehan_ZeMarmot
00:07
Jehan_ZeMarmot
Bertl: what are these binaries?
00:07
Bertl
that is busybox with a modified devmem
00:07
Bertl
you can build it yourself and just change "/dev/mem" to "/tmp/mem" in the source
00:08
Jehan_ZeMarmot
But like what, virtual machines?
00:08
Bertl
nah, those are 'native' binaries for the given architecture
00:08
Bertl
so 32/64 bit intel and arm
00:08
Jehan_ZeMarmot
You mean, I just execute them?
00:08
Bertl
usually yes, they are elf binaries :)
00:08
Jehan_ZeMarmot
I saw this.
00:09
Jehan_ZeMarmot
Ok. I'll try to run the x86-64 then.
00:10
Jehan_ZeMarmot
Ok my laptop did not explode.
00:10
Bertl
you need to make a symlink called devmem which points to this binary or you change the devmem to something like 'busybox.static.x86_64 devmem'
00:10
Bertl
(in the pll_reg wrapper)
00:10
Jehan_ZeMarmot
I see. Or simply an alias. :-)
00:11
FergusL
(are you french Jehan_ZeMarmot ?)
00:11
Jehan_ZeMarmot
FergusL: hi. Yes that appears to be what is on my passport. :-)
00:11
FergusL
fort bien
00:11
FergusL
simple question from what I recalled :)
00:13
Jehan_ZeMarmot
:-)
00:13
Jehan_ZeMarmot
Bertl: what does "cmv" mean?
00:13
FergusL
Cmosis Machine Vision I guess ?
00:13
Bertl
that is the first part of CMV12000 or CMV12K which is the sensor we use
00:15
Bertl
and interpreting those registers would be another task for a script or C program
00:15
Bertl
(that's why I asked what script you would like to work on :)
00:16
Jehan_ZeMarmot
Bertl: yes actually I'll need to know what you want.
00:16
Jehan_ZeMarmot
I mean like the spec of the end high level script.
00:17
Jehan_ZeMarmot
I would not "like to work" on anything, because I don't really much know the needs there. And I unfortunately don't have time to help fulltime right now.
00:17
Jehan_ZeMarmot
(maybe)
00:18
Jehan_ZeMarmot
But I can do what *you* need in priority if you have precise instructions. :-)
00:18
Jehan_ZeMarmot
Script or C, or whatever, I don't really care.
00:18
Bertl
for the PLL, it should be able to configure the PLL via DRP so that it outputs the desired frequency (given as argument)
00:18
Jehan_ZeMarmot
Bertl: can you give me a command line example of this?
00:19
Jehan_ZeMarmot
Something like: $ axiom-pll 100
00:19
Bertl
pll_out 1 150000000
00:19
Jehan_ZeMarmot
?
00:19
Jehan_ZeMarmot
What is 1?
00:19
Bertl
output 1 of the PLL
00:19
Bertl
(it has 6 outputs which are basically identical just different registers)
00:20
Jehan_ZeMarmot
Ok.
00:20
Jehan_ZeMarmot
But isn't it basically what are already doing the bash script I see.
00:21
Jehan_ZeMarmot
They take a number, compute an address (I imagine this number is 1 to 6) as first arg, and another which is the contents of the register as second.
00:21
Jehan_ZeMarmot
And write it to the computed address.
00:21
Bertl
the pll_reg sets a single register for the PLL, but a number of registers need to be configured to specific values based on the desired frequency to configure the PLL DRP
00:21
Bertl
http://www.xilinx.com/support/documentation/application_notes/xapp878.pdf
00:22
Bertl
http://www.xilinx.com/support/documentation/application_notes/xapp888_7Series_DynamicRecon.pdf
00:22
Bertl
(the latter one is the relevant one)
00:23
Bertl
we always desire 50% duty cycle and a 0° phaseshift
00:23
Bertl
and the PLL needs to be configured in such a way that the VCO is within the given bounds
00:26
Bertl
http://www.xilinx.com/support/documentation/data_sheets/ds187-XC7Z010-XC7Z020-Data-Sheet.pdf (page 46)
00:26
Bertl
so basically between 800 and 1600 MHz
00:31
dmj_nova1
left the channel
00:33
dmj_nova
joined the channel
00:38
Jehan_ZeMarmot
Ok. You know what. That's a lot of info. I'll need to process it (= read your stuff).
00:39
Jehan_ZeMarmot
Though I'm just not sure what to read first. You sent me like 4 pdf.
00:39
Bertl
basically the xapp888 should suffice
00:39
Bertl
the other stuff is for illustration
00:40
Jehan_ZeMarmot
Ok.
00:40
Bertl
from the XC7Z020 data sheet you only need the one page (46)
00:40
Bertl
and the fact that we have speed grade -1
00:43
Bertl
you'll probably need code to do bitmanipulation, you might find something usefull here: http://vserver.13thfloor.at/Stuff/AXIOM/SCRIPTS/bit.func
00:56
Jehan_ZeMarmot
Is it needed for tests? For actual running code?
00:57
Bertl
the PLL config? yes
00:57
Bertl
we need to adjust the HDMI clock to the output device
00:57
Jehan_ZeMarmot
left the channel
00:58
Jehan_ZeMarmot
joined the channel
00:58
FergusL
can't find a way to export properly from nthe goddamn Blender
01:11
Bertl
Jehan_ZeMarmot: did you get the answer to your question?
01:14
Jehan_ZeMarmot
Bertl: not really.
01:14
FergusL
troy_s: I'm trying to export from Blender to show the results of VNG
01:15
FergusL
but the damn thing bakes or marks something
01:15
FergusL
so it's blown out in any other softwrae
01:17
FergusL
I'm not adding any metadata in my files with oiio
01:17
FergusL
maybe that's what is missing ?
01:17
FergusL
in Blender I have to disable CM to get the right picture
01:20
Jehan_ZeMarmot
Bertl: do I care about MMCM?
01:20
Jehan_ZeMarmot
Or only PLL?
01:22
FergusL
Bertl: do you have Blender ?
01:23
Bertl
01:57 < Bertl> the PLL config? yes
01:23
Bertl
01:57 < Bertl> we need to adjust the HDMI clock to the output device
01:23
Bertl
basically MMCM and PLL are very similar except for the fractional output on MMCM
01:24
Bertl
in this specific case we do not care about MMCM, we use the PLL and it should suffice
01:24
Jehan_ZeMarmot
Ok.
01:24
Jehan_ZeMarmot
I hope you'll understand that I work in half-blind, because I don't understand half of the terms. Sorry if my questions look dumb.
01:25
Bertl
no problem, just ask if something is unclear
01:25
Jehan_ZeMarmot
So I'm mostly looking into these as "I have an input which produces an output".
01:26
Bertl
in our case, the input is fixed at 100MHz (for the PLL)
01:27
Bertl
in a simplified view, we basically multiply that by N
01:27
Bertl
and divide the result by M
01:27
Bertl
the device limits say that N must be between 8 and 16 for 100MHz input
01:28
Bertl
the the PLL itself limits M to 1 - 128
01:28
Bertl
so for example to get 50Mhz output, we can do
01:28
Bertl
N = 8 -> 800Mhz, M = 16 -> 50MHz out
01:29
Bertl
but N = 10 -> 1000MHz, M = 20 -> 50MHz out works as well
01:31
Jehan_ZeMarmot
The input is always the same, but we want to change the output, is that it?
01:31
Jehan_ZeMarmot
So we just have to compute a valid N and M for the desired output?
01:31
Bertl
so the script has to do two things: a) figure out the optimal N and M and b) configure the registers appropriately
01:32
Jehan_ZeMarmot
If there are several N and M value for the exact same result (as in your example above), is one more optimal than the other?
01:32
Jehan_ZeMarmot
Like a smaller N is better, or something.
01:32
Bertl
in a second step (not right now) we want to do that for all outputs in one setting, because the N is shared between all outputs
01:33
Bertl
so there can be only one N but many M (M0-M5)
01:33
Jehan_ZeMarmot
I see.
01:33
Bertl
in the case where we have different Ns the lowest N is probably the best
01:34
Bertl
(but it doesn't matter that much)
01:35
Jehan_ZeMarmot
Ok. But I have skimmed through xapp888 and there is no mention of N and M.
01:36
Jehan_ZeMarmot
There are a bunch of registers though. You told me above that there are 6 of them, but here they speak fo 16 + 1.
01:37
Bertl
I said there are 6 outputs not registers
01:37
Jehan_ZeMarmot
Actually MCMM doubles the eight clock output, but that still means PLL has 8 + 1.
01:37
Jehan_ZeMarmot
So I am lost.
01:37
Jehan_ZeMarmot
Bertl: oh ok.
01:38
Bertl
to be precise, there are at least 6 outputs, in the MMCM case there are 7 and there is also the feedback output
01:39
Bertl
the feedback output controls the 'N' (my pick of N and M was unfortunate in this regard, as it is called 'M' in the xapp)
01:40
Bertl
frequency multiplication (i.e. making that 'N' work) in hardware requires a feedback which 'divides' the output and feeds it back to the input
01:42
Bertl
in the DRP registers, the N and M is configured as high and low time
01:42
Bertl
which controls the duty cycle _and_ the divider
01:42
Jehan_ZeMarmot
Oh ok. No wonder I get lost if all the names change constantly. :p
01:43
Bertl
never said it would be simple :)
01:44
Jehan_ZeMarmot
" The appropriate lock bit settings are dependent on the feedback
01:44
Jehan_ZeMarmot
divider setting. This divider is set with the CLKFBOUT_MULT attribute when instantiating the
01:44
Jehan_ZeMarmot
MMCM_DRP module. "
01:44
Bertl
if you feel uncomfortable with the PLL complexity, maybe consider interpreting the CMV registers instead
01:45
Jehan_ZeMarmot
If I understand, the feedback is N.
01:45
Jehan_ZeMarmot
So that's also contradictory. You just told me N was the high time.
01:46
Bertl
no, what I said was, that N and M is controlled by setting the high and low time
01:46
Jehan_ZeMarmot
hmmm...
01:46
Bertl
i.e. to set N you need to set a high _and_ low time for this clock register
01:46
Bertl
and similar for M
01:46
Jehan_ZeMarmot
Ok.
01:47
Jehan_ZeMarmot
Wow. Maybe with examples, I'd understand better.
01:47
Jehan_ZeMarmot
I mean, real time examples.
01:48
Bertl
for example, to get a divide by 2, you set both high and low to 1
01:48
Jehan_ZeMarmot
s/real time/real life/
01:48
Bertl
that will give 50% duty cycle and a total of 2 periods
01:48
Jehan_ZeMarmot
That's an addition?
01:48
Bertl
___/``````\______/``````\___
01:49
Bertl
``` = high, ___ = low
01:49
Bertl
if you set high to 2 and low to 1 then you get:
01:50
Bertl
___/````````````\______/````````````\___
01:50
Bertl
which has 66% duty cycle and divides by 3
01:50
Bertl
but there is also a trick to get 50% duty cycle with a division of 3
01:50
Jehan_ZeMarmot
left the channel
01:51
Jehan_ZeMarmot
joined the channel
01:51
Bertl
what was the last line you got?
01:51
Jehan_ZeMarmot
14:50 < Bertl> which has 66% duty cycle and divides by 3
01:51
Bertl
02:50 < Bertl> but there is also a trick to get 50% duty cycle with a division of 3
01:52
Bertl
by setting the edge bit
01:52
Bertl
which basically changes when the low/high transision happens
01:53
Bertl
(this example is given in the Divider Group section of xap888)
01:55
Bertl
similar applies to any off-by-one setting, e.g. 4+5
01:55
Bertl
(with edge -> 4.5+4.5 = 9
01:56
Bertl
so the edge bit can be considered the lowest bit)
02:13
Jehan_ZeMarmot
Ok but I still don't understand. It is either assuming too much of knowledge of terms. Or not giving enough technical details.
02:13
Jehan_ZeMarmot
Like 1 "parameter" (high/low time for instance). They are registers?
02:14
Jehan_ZeMarmot
So 32 bit?
02:14
Jehan_ZeMarmot
Or is it 64? Or something else?
02:14
Bertl
the information is distributed over all the pdfs I linked
02:14
Bertl
in this specific case, the DRP registers are 16bit
02:15
Bertl
but we mapped them as 32bit memory locations
02:15
Bertl
(the upper 16bits are ignored)
02:15
Jehan_ZeMarmot
Ok.
02:15
Jehan_ZeMarmot
I see that the high/low times are flags in the DivReg register.
02:17
Bertl
they are bit ranges in the DivReg registers
02:17
Jehan_ZeMarmot
So DivReg is one of the 6 registers you told me about, right?
02:17
Bertl
each output has a DivReg
02:18
Jehan_ZeMarmot
Ok.
02:19
Jehan_ZeMarmot
Right. There was 6 outputs, not register. Sorry.
02:19
Jehan_ZeMarmot
But I think I'm starting to get it.
02:19
Jehan_ZeMarmot
So in your example above:
02:19
Jehan_ZeMarmot
< Bertl> pll_out 1 150000000
02:19
Bertl
the bit ranges can be seen like structures, i.e. bits 0-5 (6 bits) are a '6 bit value' for the low time
02:20
Jehan_ZeMarmot
I would basically update the 6 registers for this output.
02:20
Jehan_ZeMarmot
For instance I would update DivReg so that high and low time are the expected values.
02:20
Bertl
well, in this example only two of them the feedback and the 1st output
02:20
Bertl
but it is probably better to change that specification to
02:21
Bertl
pll_out 150000000 300000000 250000000
02:21
Jehan_ZeMarmot
Yes but if I recall, the feedback is determined by high and low time.
02:21
Jehan_ZeMarmot
So I would probably just update DivReg?
02:21
Bertl
which sets the first three outputs to 150, 300 and 250MHz respectively and the last three outputs to 100MHz or so
02:23
Bertl
you see the diagram on page 4 of the xapp888 ?
02:23
Jehan_ZeMarmot
I do.
02:23
Bertl
you basically have to figure out O0-O6 and M for a given set of 'desired' frequencies
02:24
Bertl
then you can simply convert the O0-O6 and M values to high/low + edge settings
02:24
Bertl
which can be simply programmed into the registers
02:26
Jehan_ZeMarmot
Ok. That's more a language I understand.
02:27
Jehan_ZeMarmot
Now the question is: how do I figure out O0 to 6 and M for a frequency?
02:28
Bertl
the PLL tries to match the feedback input to the input frequency
02:29
Bertl
so if your M is set to divide by 8, the VCO frequency will be adjusted to 8 times the input frequency, in our case 800MHz
02:32
Bertl
so it basically is a 'simple' optimization task, get the best matches for the given frequencies under the constraints that M is between 8 and 16 and O0-O6 between 1 and 128
02:33
Bertl
note that it would be good to output the selected frequencies (as result of M and Ox) for verification
02:34
Jehan_ZeMarmot
Ok I have to go make and eat some lunch. Let's continue later.
02:35
Jehan_ZeMarmot
Already 3PM. My stomach is too hungry. :-D
02:35
Jehan_ZeMarmot
Damn 3:30 even.
02:38
troy_s
FergusL: email me with screenshots
02:38
troy_s
FergusL: blown out suggests your values are getting mangled. Or adding a TRC
02:43
aombk
joined the channel
02:49
Bertl
wb aombk!
02:49
aombk
hi Bertl
04:02
troy_s
Bertl: Are there registers to twiddle for white balance on that sensor?
04:10
Bertl
no
04:20
Bertl
the panchromatic and RGB color version is identical in regard of registers and settings
04:58
Bertl
night everyone!
04:59
[1]Sasha
joined the channel
06:30
[1]Sasha
left the channel
08:09
Jehan_ZeMarmot
Me too I'll go.
08:09
Jehan_ZeMarmot
I'll have a look at this whole discussion and the pdf again and try to understand this all.
08:09
Jehan_ZeMarmot
See ya, all!
08:16
Jehan_ZeMarmot
left the channel
09:36
simpleirc1
joined the channel
09:41
simpleirc1
left the channel
09:48
se6bastian1
joined the channel
09:49
se6bastian1
left the channel
09:50
se6bastian1
joined the channel
09:50
se6bastian1
Hello
09:52
se6astian2
joined the channel
09:52
se6bastian1
left the channel
09:58
se6astian2
left the channel
10:37
mars_
na
10:37
mars_
-na
10:37
mars_
^^
10:45
Sasha_C
joined the channel
11:22
Sasha_C_
joined the channel
11:22
Sasha_C
left the channel
11:22
Sasha_C_
changed nick to: Sasha_C
12:04
aombk
live from the hive now http://aombk.attinom.net/otr/?page_id=131
12:59
Bertl
morning everyone!
13:07
se6bastian1
joined the channel
13:12
AndroUser
joined the channel
13:12
se6bastian1
left the channel
13:12
AndroUser
changed nick to: se6astian1
13:12
se6astian1
hello!
13:13
se6astian1
check the elphel development blog as to see what they do in response to our open modules concept
13:15
Sasha_C
interesting
13:16
Sasha_C
So multiple 393 boards can be linked together
13:18
se6astian1
left the channel
13:26
se6astian1
joined the channel
13:33
se6astian1
left the channel
13:43
Sasha_C
With their model, I imagine you'd have to tell elphel which components you want to connect to the main 393 board when ordering, and they then build the camera according to your specifications? Those pictures don't make it look like you could just 'connect' the pieces together yourself.
13:54
Bertl
I think this is mostly to illustrate that it _can_ be connected somehow :)
13:58
Sasha_C
i.c. Funny how Andrey keeps telling us that our design / plans won't work ;)
14:00
Bertl
does he?
14:01
Sasha_C
He has told us numerous times that we won't be successful, that our designs for a camera are unfeasible
14:02
Sasha_C
But I think he's saying this out of fear to dissuade us, thinking that we are his competition and will take customers away from his business
14:02
Sasha_C
Ask Sebastian about this in person perhaps...
14:02
Bertl
could you link me to those statements and/or do you have a compilation of the rationale behind his opinions?
14:03
Sasha_C
I'd have to dig through emails sent to the apertus mailing list
14:06
Sasha_C
quick example: This man is doing what he loves and doing it right. He's taking a calculated risk and he's not a danger to others. He's even wearing a helmet, probably only out of respect for you, so please show some respect back.
14:06
Sasha_C
This is a gift straight from Liam and Jack to us. Appreciate it and learn from it.
14:06
Sasha_C
Life is the long process of dying. I'd say Liam is dying pretty darn well.
14:06
Sasha_C
oops, sorry about that. copied wrong text from my clipboard
14:06
Sasha_C
http://nofilmschool.com/2013/10/open-source-apertus-camera-4k-global-shutter-super-35mm/
14:07
Sasha_C
Andrey has posted a comment at the very bottom of the page
14:07
Bertl
I was going to ask who Liam is :)
14:07
Sasha_C
my bad, i feel so silly now :)
14:08
Bertl
well, the comment is clear and the point is valid, no?
14:09
Sasha_C
true, I can't disagree
14:09
Bertl
and there are a number of possible answers like:
14:09
Bertl
- maybe because they don't want anybody else to use the interface
14:10
Bertl
- maybe because it is damn hard to connect different modules
14:10
Bertl
- maybe because it is better to do one big do-it-all thing and sell that
14:11
Bertl
we don't really know, we can only speculate but it definitely is something we should think about sooner or later
14:11
Sasha_C
i agree.
14:12
Bertl
so judging from this example, it might be worth to dig through his comments (and other comments) and sum them up somehow
14:12
Sasha_C
Yeah, indeed. I still recommend you ask Sebastian more about this business with Andrey (on a private channel perhaps. He's much more informed about this than I am)
14:12
Bertl
i.e. compile and distill the information
14:13
Sasha_C
yeah
14:13
Bertl
(ad sebastian, already did :)
14:13
Sasha_C
he's online now?
14:13
Bertl
don't know, I asked about it a few weeks ago
14:13
Sasha_C
right, i.c
14:15
Sasha_C
I'm about to go get some sleep, but I'll start compiling and distilling ASAP (as my time will permit)
14:16
Bertl
okay, it might make sense to motivate a few folks to watch/monitor certain channels/sources and do a compilation on a regular basis
14:17
Bertl
.. and sleep well :)
14:17
Sasha_C
yep, absolutely. I'll do my best to get others to follow suit
14:17
Sasha_C
thanks man, chat again soon
14:18
Sasha_C
left the channel
14:19
troy_s
Bertl: So no native method to shift white balance?
14:19
troy_s
Bertl: Because that implies stuffing a matrix operation into the board (with the Bradford transform) so that folks can dial the WB.
14:20
Bertl
I don't think that this is such a problem
14:20
Bertl
and no, I don't think the sensor is in any way color aware
14:21
Bertl
all settings apply to all photosites (only relevant differentiation is between top and bottom readout)
14:39
Bertl
troy_s: so a general matrix would suffice for any white balance problem?
14:40
Bertl
would that apply before or after a (per channel?) gamma correction
14:58
dmj_nova
left the channel
15:00
dmj_nova
joined the channel
15:41
troy_s
left the channel
15:43
rexbron
left the channel
16:38
rexbron
joined the channel
16:38
rexbron
left the channel
16:38
rexbron
joined the channel
16:42
Bertl
welcome rexbron!
16:42
rexbron
hey Bertl
16:44
rexbron
Bertl: are you the project lead? troy_s mentioned I might like hanging here
16:45
Bertl
well, no, but I'm working on the prototype, so consider me the technical prototype lead :)
16:46
Bertl
off for dinner now ... bbl
16:46
rexbron
Bertl: I wear a lot of hats in the camera department, 1st AC, DIT and sometimes DP.
17:16
Bertl
back ...
17:17
Bertl
rexbron: I'm not familiar with the camera department acronyms
17:18
Bertl
for me AC is alternating current and I don't have any association with DIT or DP :)
17:18
rexbron
Bertl: 1st Assistant Camera, Digitial Imaging Technician and Director of Photography. here is a link to my reel http://aehunter.net/video/Andrew_Hunter_Demo_Reel_Aug_22nd.mp4
17:19
Bertl
hmm .. my browser (firefox) says: Video can't be played because the file is corrupt, but let me try to download it :)
17:20
mars_
works in chrome
17:20
Bertl
so, you're doing a lot of stuff and something interested you enough in axiom/apertus to find your way here ...
17:21
Bertl
mars_: yeah I guess mplayer will be able to handle it ...
17:22
rexbron
Bertl: troy_s is a old friend of mine, we both have an interest in FOSS as well as cinematography
17:22
Bertl
sounds good!
17:23
rexbron
Bertl: I also designed a run stop controller for cameras with the LANC protocol but ended up stopping making them after the first production run. I'm not an electrical engineer or embeded systems guy so I couldn't diagnose some intermitency problems.
17:23
rexbron
and on set, reliability is paramount
17:24
Bertl
so this demo reel is basically like a set-card just for an AC/DIT/DP, yes?
17:24
rexbron
Bertl: DP, AC and DITs get hired on reputation not with show reels
17:24
rexbron
mostly to show people "this is what I can do" visually
17:25
Bertl
I see, so more to give an idea of the style?
17:27
Bertl
just watched it, looks nice, for me almost like a music video or a movie teaser (please don't take my comments the wrong way, I'm completely new to the camera department)
17:29
rexbron
Thats generally the idea :)
17:29
Bertl
what's a run-stop controller?
17:30
rexbron
The footage is a mix of Red One MX, Blackmagic Cinema Camera and a little 7D
17:30
Bertl
the first two I recognize as camera brands, I presume the last one is a camera as well (see, I've already learned a little about cameras :)
17:32
rexbron
Bertl: allows for starting and stopping the rec function of a camera via a remote focus device. Since LANC is a serial protocol, it needed to be a little electronic adapter that listened for a switch on one side and sent out a lanc command on the other
17:32
rexbron
Bertl: the Canon 7D but that footage was from 2010 when DSLRs were a new thing ;)
17:33
Bertl
I see LANC is a proprietary? interface created by Sony for their eqippment
17:34
rexbron
not really propritary, just no official documentation. The protocol was reverse engineered off the wire
17:34
rexbron
Canon and Blackmagic both use LANC but call it something else
17:34
Bertl
not surprising with 9600n8
17:35
rexbron
Bertl: refering to baud?
17:35
Bertl
yup
17:35
Bertl
and that failed in what way?
17:35
Bertl
sounds rather straight forward to me, today probably a job for a raspberry pi
17:36
rexbron
Bertl: I think the adapter would get out of sync with the camera
17:36
rexbron
but I have no EE background
17:37
Bertl
okay, probably a minor issue then
17:37
rexbron
I implimented it on an Atmel Atiny85 in an Ardunio environment
17:38
rexbron
Bertl: for you ;) for me, I just kinda shrugged and had to walk away from the project. I can't sell something I don't understand
17:38
rexbron
but they were used on Need for Speed
17:39
Bertl
did you open source the project?
17:39
rexbron
no but I could
17:40
Bertl
I guess somebody would identify the issue pretty soon and fix it
17:40
rexbron
maybe but they would need hardware infront of them
17:40
Bertl
especially if you explain what goes wrong where
17:40
rexbron
I would think
17:41
Bertl
I guess so, especially if it is special hardware
17:41
Bertl
but sounded more like an arduino with a few cables :)
17:41
rexbron
not super special, the initial dev board was an arduino :)
17:41
rexbron
its mostly that I designed a custom pcb to reduce size
17:42
rexbron
(also a first for me)
17:42
rexbron
the first 10 units took me 8 hours to hand solder
17:42
Bertl
so if the code works for an unmodified arduino, I guess folks interested will have the hardware available
17:43
rexbron
Bertl: provided they have a Canon C300 to test on. The othe reason I walked away was PLC electronics made the same thing (after I did) and did it better lol
17:44
Bertl
happens
17:44
Bertl
so any specific parts of axiom (alpha) you are interested in or you would like to help with?
17:45
rexbron
ergonomics ;)
17:45
rexbron
bbl, just got a call for a rental I need to deliver
17:46
Bertl
okay, I'm leaving shortly, but I should be back in 90 minutes
17:54
se6astian
joined the channel
18:06
se6astian
good evening
18:08
Bertl
evening ... I'm off now .. back in 90 or so ...
18:12
dmj_nova
left the channel
18:22
dmj_nova
joined the channel
18:36
dmj_nova
left the channel
18:37
dmj_nova
joined the channel
18:40
philippejadin
joined the channel
19:03
se6astian
preparing a new article
19:03
se6astian
https://www.apertus.org/apertus-now-accepts-bitcoins
19:04
se6astian
does anyone have a bitcoin wallet and send me some tiny amount?
19:04
se6astian
I dont want to announce this before I have seen it actually working at least once :)
19:04
se6astian
*and can send me...
19:07
dmj_nova
left the channel
19:12
philippejadin
I don't have any bitcoin money ...
19:12
philippejadin
how do you convert those donation to money? Do we even do that ?
19:15
se6astian
there is an echange service
19:15
philippejadin
ok, just saw that you can convert to local money. Weird stuff :-)
19:15
se6astian
its basically a foreign currency
19:15
se6astian
with quite huge value fluctuations currently
19:15
se6astian
its an experiment
19:15
se6astian
not that we will gather a huge amount of donations that way
19:15
se6astian
its more the message that we want to be part of this
19:50
dmj_nova
joined the channel
20:10
dmj_nova
left the channel
20:10
dmj_nova1
joined the channel
20:19
philippejadin
left the channel
20:22
Bertl
back now ...
20:23
Bertl
the fluctuations are not the huge anymore, btw
20:24
Bertl
and the value is still increasing, so it makes perfect sense to allow that
20:25
se6astian
when I checked the value last week it was around 200 $, now its around 300$
20:25
se6astian
did you ever take a look at the mining process
20:26
se6astian
I was quite surprised when I saw that people designed entire ASICS and FPGA stacks just for mining bitcoins
20:27
Bertl
yep
20:27
dmj_nova
joined the channel
20:28
se6astian
5000$ http://www.butterflylabs.com/monarch/
20:31
dmj_nova1
left the channel
20:35
rexbron
Bertl: to pick up where we left off, I can offer real world production shooting experience as both a DP and AC.
20:36
Bertl
sounds good, but at the moment, we have just a single prototype with a broken sensor
20:36
Bertl
(there will be a second one soon to shoot actual footage)
21:49
se6astian
ok, time for bed
21:49
se6astian
good n8!
21:49
se6astian
left the channel
21:49
[1]Sasha
joined the channel
22:01
[1]Sasha
Good morning everyone :)
22:07
Bertl
morning [1]Sasha!
22:08
Bertl
rexbron: nevertheless, I appreciate addition information and comments during development ... so hang around and join whenever you think you can add something
22:08
Bertl
*additional