Awesome. Did you put the Guitar Hero lines in? I think we'll need to finally add the bidirectional comms to make full use of this (like communicating Av values, etc.) It'd be nice to use something like Luke's latching full-bus but he has a huge fpga board to do it.

This is how the code works:When connection is established, camera sends back an initial packet with all its current settings along with a list of all possible values for each setting. Possible values depend on a camera model as well as lens that are mounted. For example, some cameras may have exposure compensation range from -2 to +2, others from -5 to +5; some lens have max.aperture 1.4, others – 3.5, an so on. The list of values received from the camera is placed in built-in EEPROM of Arduino microcontroller. After that, values are used in setting (called “property” in PTP lingo) change commands sent to the camera. When camera mode, such as Av, Tv, or lens is changed, camera sends initial packet again. The Arduino code tracks changes and updates the list stored in EEPROM.

... it took some time to understand the way the unit works. I removed from Olegs solution the input switches and the display. It could be possible to use the DS instead of them. If the DS acts as the input/output device it would be possible transferring the data very comfortable, using the occ interface, to the camera. Using the data lines of the max3421 it would be possible to read the data from the camera handed over to the occ. It also would be possible, driven by the software (bracket new version) of the DS, getting further functions too, those Olegs solution does not support yet. I think that is the right way getting more comfort and a wide range of functions. Perhaps we get the wanted “all function super interface ”

I read your post and downloaded the USBCameraControl_v0.01.zip and tried to bring it to get compiled at my environment. Therefore I stripped out all the AVR code as I only need the NDS part but unfortunately without success.

Achim asked me if I would be able to write an NDS interface to have a pretty GUI to control the USB host controller. I would love to do it, but I'm not a technical guy nor am I a real programmer so I would appreciate if you would have the time to help out?