Main Site Documentation



I have been trying to implement PTP using the EMX Dev Board but I can’t get any response whatsoever from the camera. I am using USBH Raw device, have set up the endpoints, and have sent data to it, but I get no response from the camera . Should it be possible to do this or is there something missing?


You should be able to implement it in managed code I think. We currently do not support IOS transfers but most devices do not need them. PTP is all interrupt and bulk transfers.


What type of camera is it? If it’s a Canon EOS (not sure about the PS series), you have to send a non-standard series of commands to start a session/get a response. See lipptp, libgphoto, and these guys for pointers:

The circuitsathome stuff is all Arduino based and uses their USB library for their USB Host shield, but has provided some good clues.

Note also that the EOS cameras don’t appear to use the event pipe, you actually have to poll by sending another non-standard command on the out pipe.

My PTP project is in it’s infancy - I can return deviceinfo and trigger a remote release (at least for the EOS), and that’s about all, but I’ll be posting stuff as I get it cleaned up. I’d love to test the standard PTP stuff, but I don’t (think) I have a camera that’s close enough to “standard” to help much.

Edited to add: Oh, and I should point out that I’ve written my stuff for the Domino, but that shouldn’t matter.