08-21-2013 02:49 AM
Hi all
I would like to connect to my EOS 7D using a laptop, and control its settings, and program its shooting, using a programming language. I know that this is possible but I typically only find information that has jumped many miles past the initial introductory tutorial stuff of "how to make the connection", "what language to use", "how to use it".
Can anyone direct me to any ressources, introductions or tutorials to programming with the EOS 7D?
Cheers
08-21-2013 10:12 AM
I suppose you already know the EOS Utility will do what you require. It comes with the 7D for free.
How to actually "program" the cameras language? I have no idea or if it is even possible.
You might check with the hacked firmware folks. (Magic Lantern)
08-21-2013 10:58 AM - edited 08-21-2013 10:58 AM
Android would probably be your easiest path, no need to mess with firmware (Magic Lantern) if you're just trying to control functions the camera already has. Android is open source, it's usually developed in Java which is about as simple as a programming language gets, and there are already other programs out there that do this, so you could reverse engineer.
All that said, if you have to ask, you most likely don't have the skills for such a task. Not saying you can't develop them, but it's going to be some work. I suggest you start small and do some of the intro Android programming. Download the Android SDK (software development kit), and start there. It's the closest thing you're going to find to a 'how to'.
08-21-2013 11:47 AM
I don't know about tutorials, but Canon does publish an SDK to allow you to develop your own software that communicates with and controls the camera.
You can find more information on it here: http://www.usa.canon.com/cusa/consumer/standard_display/sdk_homepage
You do have to apply for the SDK -- once approved they'll give you instructions and a password to download it.
The SDK is available for only certain Windows and Mac operating systems. I don't know if they make an SDK available for mobile platforms such as iOS or Android (though certainly they at least have one for internal use since Canon has some mobile apps.)
The developer page says the SDK is written in C. You don't necessarily have to write in C if you understand how things work at the lower level. I've developed large applications using a combination of C, Fortran, and assembly and then linked them all together. The key is in understanding that once something is compiled to a library, it becomes a library full of entry points which expect parameters to be passed. You then need to know if they expect a pass-by-value or pass-by-reference. As long as your program passes what they expect (and accepts what they return in the way they plan to return it) it'll work... even if your program is written in a different language than their library.
12/18/2024: New firmware updates are available.
EOS C300 Mark III - Version 1..0.9.1
EOS C500 Mark II - Version 1.1.3.1
12/05/2024: New firmware updates are available.
EOS R5 Mark II - Version 1.0.2
09/26/2024: New firmware updates are available.
EOS R6 Mark II - Version 1.5.0
Canon U.S.A Inc. All Rights Reserved. Reproduction in whole or part without permission is prohibited.