Shooting while transferring over USB - page 4 - General Help and Assistance on using CHDK stable releases - CHDK Forum
supplierdeeply

Shooting while transferring over USB

  • 45 Replies
  • 18923 Views
Re: Shooting while transferring over USB
« Reply #30 on: 04 / January / 2014, 05:03:07 »
Advertisements
Hello, thanks for your hints. I am not using VBA, I am using the multicam module coded from reyalp in conjunction with chdkptp.

I suppose it is not a good advice to start chdkptp once for every single camera in a multi camera rig. Have you ever tried to iterate to the multiple connections that chdkptp can manage, without restarting chdkptp all the time?

I would be interested, if e.g. you would see an improvement of the download time when having maybe 4 chdkptp.exe instances downloading 25 images each, when using 100 cameras each?

My rig comes alive this month Here is a

I manage to download 50 images in 25 seconds when using a single instance of chdkptp.exe and when shooting in "M3"-mode, which is 1600x1200 pixels.

Well, I will try to split the download task to multiple chdkptp instances, then I will post the results here.

Re: Shooting while transferring over USB
« Reply #31 on: 04 / January / 2014, 09:44:46 »
Wow - that's actually pretty exciting to see.   Its fun to play a small part of this project with you.

The embedded link won't play on my browser - says "Sorry.  There was an error encountered while loading this video".

However, if I cut&paste this 

Code: [Select]
http://vimeo.com/83299160 directly to my browser address bar it works.
Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline msl

  • *****
  • 1280
  • A720 IS, SX220 HS 1.01a
    • CHDK-DE links
Re: Shooting while transferring over USB
« Reply #32 on: 04 / January / 2014, 11:20:36 »
Very impressive.

The sound of this video is very funny. So sounds CHDK.  :D

msl
CHDK-DE:  CHDK-DE links

Re: Shooting while transferring over USB
« Reply #33 on: 04 / January / 2014, 13:21:48 »
Yes, the sound is really great. I will do some better sound recording tonight. I was already looking for a method to make the cameras give a concert, but unfortunately there are no options to alter the pitch of the sound.

But as soon as I find the time I will do that with small videos. I am planing some funny stuff with them, not only sound. Starting the same video somewhat delayed on all the cameras one could e.g. make a person walk from one screen to the next. I think that this would be a great afterburner to show to the people before leaving a set.  :D

But at the moment I am fighting with CHDKPTP and my Arduino to make them work together. I managed to read serial data coming from the Arduino. I used the Arduino to trigger flashes, give some countdown signals and so on. I have this solutions already working, it is very nice because I have wireless triggers, so I can walk around and examine the different cameras and the scene while shooting. So I would really like this stuff to make it's way into my new "realtime" CHDKPTP project. Now I will use another Arduino to cut and close the USB cables too.

My problem is not that much CHDK related, but more LUA and IUP, I suppose. Nevertheless maybe someone could give me a hint here:

When running chdkptp with the gui, I would like to have sort of a background thread that triggers the download as soon as the Arduino send a signal over the Serial Port. As said I could manage to read from the serial from within a while-do-end-loop, but this blocks the GUI completely, so I can't do anything meanwhile.

I was trying to make a coroutine work, but it has the same effect. Now I suppose I should have some coroutine.yield somewhere, but where and where to resume. There is no "mainloop" in CHDKPTPs gui, only the iup.Mainloop.

 tried for hours now, I am about to resign to make it work on my own. Does maybe someone know how to start with that?

Thanks a lot!

PS.:
Wow - that's actually pretty exciting to see.   Its fun to play a small part of this project with you.

It´s the complete opposite. It is a very nice thing to see all you unknown girls and guys and nerds here to develop such a great software and maintain such a great project. It would be very nice for me if I could ever meet the biggest gurus here personally, maybe when we are all somewhat older we could have a beach party somewhere, have some nice drinks and enjoy the sunset while listening to the great sound of the first CHDK driven camera orchestra!  :D
« Last Edit: 04 / January / 2014, 13:30:00 by Karmaschinken »


*

Online reyalp

  • ******
  • 14080
Re: Shooting while transferring over USB
« Reply #34 on: 04 / January / 2014, 15:33:15 »
When running chdkptp with the gui, I would like to have sort of a background thread that triggers the download as soon as the Arduino send a signal over the Serial Port. As said I could manage to read from the serial from within a while-do-end-loop, but this blocks the GUI completely, so I can't do anything meanwhile.
You can use a timer like live view does, but note that if it does the actual download it will still block the gui for the duration of each file download.

Otherwise, chdkptp really doesn't support this yet. I have a few ideas about how to do it, but all require significant architectural changes.

Great to see the rig come to life, it's really nice to see that people can actually do something with this stuff.
Don't forget what the H stands for.

Re: Shooting while transferring over USB
« Reply #35 on: 04 / January / 2014, 16:37:17 »
Ah, all right, of course a timer! I am not known to serial communication. Let's say I query every 500 ms, what happens to data that is sent in between the cycles? Is it buffered on the Arduino side or how is this working?

Thanks a lot!

Re: Shooting while transferring over USB
« Reply #36 on: 04 / January / 2014, 16:44:57 »
Great video Martin  - i'm also excited to see this come alive.

I am using the multicam module coded from reyalp in conjunction with chdkptp.

My current understanding is that [without multicam module development] multiple chdkptp instances must be used to [uniquely] communicate with each camera via bus/device.

Because of that I'd rather use what i'm currently [vaguely] familiar with so i'll see how far I can get with AutoIT / VBA / exiftool etc do do what I [think I] need.

Before the 'festive' season began - at the time of these posts:

http://chdk.setepontos.com/index.php?topic=6231.msg107899#msg107899
http://chdk.setepontos.com/index.php?topic=6231.msg107904#msg107904

I wrote a quick and dirty Autoit script to ensure I could:
(i) get the console list info from the first chdkptp instance then use that
(ii) within two further chdkptp instances to connect to my two SX150IS => to relate each cam to each instance I download a token text file from each cam (containing my cam number) to create the relationship.

I suppose it is not a good advice to start chdkptp once for every single camera in a multi camera rig. Have you ever tried to iterate to the multiple connections that chdkptp can manage, without restarting chdkptp all the time?

I hope that's not true. While I only carried out very simple AutoIt testing it worked perfectly according to my [unwritten / barely remembered now] specification. I imagine a further 100 odd extra instances may lead to a glitch or two  :( 

Well, I will try to split the download task to multiple chdkptp instances, then I will post the results here.

Good luck

PS:

I am considering a mixed point &shoot / DSLR system. I think a camera-axe http://www.cameraaxe.com/  flash / remote shutter control with multiflash board http://www.techphotoblog.com/tpb-40/  and light sensor will allow that [or solder similar together myself].

With mains powering both (a) studio ambient light & (b) powered usb-hub network

then, when mains turned off, light sensor will:

[Edit - not necessarily in this order  ;) ]

(i) trigger flash
(ii) trigger dslr
(iii) trigger chdk usbremote

Hope to just need [comparatively] long exposure times and plenty of manual chdk control.
« Last Edit: 05 / January / 2014, 07:17:28 by andrew.stephens.754365 »

*

Online reyalp

  • ******
  • 14080
Re: Shooting while transferring over USB
« Reply #37 on: 04 / January / 2014, 17:01:48 »
Ah, all right, of course a timer! I am not known to serial communication. Let's say I query every 500 ms, what happens to data that is sent in between the cycles? Is it buffered on the Arduino side or how is this working?

Thanks a lot!
I would expect some amount to be buffered in various places but it must depend on the details of your setup.

How are you checking the serial port from chdkptp? What OS are you running this under?
Don't forget what the H stands for.


Re: Shooting while transferring over USB
« Reply #38 on: 04 / January / 2014, 17:43:27 »
My current understanding is that [without multicam module development] multiple chdkptp instances must be used to [uniquely] communicate with each camera via bus/device.
.
.
.
then, when mains turned off, light sensor will:

[Edit - not necessarily in this order  ;) ]

(i) trigger flash
(ii) trigger dslr
(iii) trigger chdk usbremote

Hope to just need [comparatively] long shutter times and plenty of manual chdk manual control.

With regards to CHDK I don't understand, I am sorry. When using CHDK it is no problem to switch between all the cameras within one instance. You are right, one instance can only communicate with one camera, uniquely. But instead of starting 100 instances of CHDKPTP I wonder if it isn't better to have SOME instances that each will have their set of cameras they serve for. I can't imagine that say 100 instances running at the same time would be of advantage for stability and speed.

With regards to your light solution: I use an Arduino that switches a very cheap wireless power switcher you use in household, like these. This way the lights are turned of by the system, then everything that needs to be done in darkness is done in darkness, and afterwards the system switches the light back on. :-)

@reyalp

I manged to use the librs232 (or luars232) solution for lua, a library that can read/write to serial ports. I am running the system in Windows.

Well actually it isn't of interest for me where exactly the data is buffered, as long as nothing is lost. I will try with the timer, I am quite sure that will do fine.



Re: Shooting while transferring over USB
« Reply #39 on: 04 / January / 2014, 18:06:30 »
Ok, here is some sound. Unfortunately I don't have really professional equipment to record with. Nevertheless!  :)

 

Related Topics