Fandom

Magic Lantern Firmware Wiki

PTP

328pages on
this wiki
Add New Page
Talk0 Share

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

See these messages on the mail-list.

See vusb-analyzer.sourceforge.net to analyse USB traffic with software only.

Ptp

PTP traffic captured with vmware and analysed using vusb_analyzer. it would be perfect to have a PTP Decoder...











I used values names from libptp2 (ptp.h).


Source code Edit

  • USB properties:
    • Camera: Canon EOS 7D
    • 0xd402: "Canon EOS 7D" (UNKNOWN)
    • 0xd407: 0x00000001 (1) (UNKNOWN)
    • 0xd406: "Unknown Initiator" (UNKNOWN)
    • 0xd303: 1 (UNKNOWN)
  • USB operations
PtpNextPhase_NoData = 0;
PtpNextPhase_ReadData = 1;
PtpNextPhase_WriteData = 2;

PtpOpe_UNDEFINED = 0x1000;
PtpOpe_GET_DEVICEINFO = 0x1001;
PtpOpe_OPEN_SESSION = 0x1002;
PtpOpe_CLOSE_SESSION = 0x1003;
PtpOpe_GET_STORAGEIDS = 0x1004; // == 0x9101
PtpOpe_GET_STORAGEINFO = 0x1005; // == 0x9102
PtpOpe_GET_NUMOBJECTS = 0x1006;
PtpOpe_GET_OBJECTHANDLES = 0x1007;
PtpOpe_GET_OBJECTINFO = 0x1008; // == 0x9103
PtpOpe_GET_OBJECT = 0x1009; // == 0x9104
PtpOpe_GET_THUMB = 0x100a;
PtpOpe_DELETE_OBJECT = 0x100b; // == 0x9105
PtpOpe_SEND_OBJECTINFO = 0x100c;
PtpOpe_SEND_OBJECT = 0x100d;

0x100f: FormatStore // == 0x9106

0x1014: GetDevicePropDesc
0x1015: GetDevicePropValue
0x1016: SetDevicePropValue

PtpOpe_GET_PARTIALOBJECT = 0x101b; // == 0x9107

0x9052: UNKNOWN
0x9053: UNKNOWN
0x9057: UNKNOWN
0x9058: UNKNOWN
0x9059: UNKNOWN
0x905a: UNKNOWN
0x905f: UNKNOWN

PtpOpe_DS_GET_STORAGEIDS = 0x9101;
PtpOpe_DS_GET_STORAGEINFO = 0x9102;
PtpOpe_DS_GET_OBJECTINFO = 0x9103;
PtpOpe_DS_GET_OBJECT = 0x9104;
PtpOpe_DS_DELETE_OBJECT = 0x9105;
PtpOpe_DS_FORMAT_STORE = 0x9106;
PtpOpe_DS_GET_PARTIALOBJECT = 0x9107;
PtpOpe_DS_GET_DEVICEINFOEX = 0x9108;
PtpOpe_DS_GET_OBJECTINFOEX = 0x9109;
PtpOpe_DS_GET_THUMB_EX = 0x910a;
PtpOpe_DS_SEND_PARTIAL_OBJECT = 0x910b;
PtpOpe_DS_SET_OBJECTATRIBUTES = 0x910c;
PtpOpe_DS_GET_OBJECTTIME = 0x910d;
PtpOpe_DS_SET_OBJECTTIME = 0x910e;
PtpOpe_DS_REMOTE_RELEASE = 0x910f;
PtpOpe_DS_SET_DEVICEPROPVALUEEX = 0x9110;
PtpOpe_DS_SEND_OBJECTEX = 0x9111;
PtpOpe_DS_CREAGE_OBJECT = 0x9112;
PtpOpe_DS_GET_REMOTEMODE = 0x9113;
PtpOpe_DS_SET_REMOTEMODE = 0x9114;
PtpOpe_DS_SET_EVENTMODE = 0x9115;
PtpOpe_DS_GET_EVENT = 0x9116;
PtpOpe_DS_TRANFERCOMPLETE = 0x9117;
PtpOpe_DS_CANCELTRANSFER = 0x9118;
PtpOpe_DS_RESETTRANSFER = 0x9119;
PtpOpe_DS_PCHDDCAPACITY = 0x911a;
PtpOpe_DS_SET_UILOCK = 0x911b;
PtpOpe_DS_RESET_UILOCK = 0x911c;
PtpOpe_DS_KEEPDEVICE_ON = 0x911d;
PtpOpe_DS_SET_NULLPACKETMODE = 0x911e;
PtpOpe_DS_UPDATE_FIRMWARE = 0x911f;
DS_TRANFERCOMPLETE_DT = 0x9120;
DS_CANCELTRANSFER_DT = 0x9121;
DS_SETWFTPROFILE = 0x9122; ==ceresSetWftProfile()
DS_GETWFTPROFILE = 0x9123;
DS_SETPROFILETOWFT = 0x9124;
DS_BULB_START = 0x9125;
DS_BULB_END = 0x9126;
DS_REQUESTDEVICEPROPVALUE = 0x9127;
DS_REMOTERELEASEON = 0x9128;
DS_REMOTERELEASEOFF = 0x9129;
DS_REGISTBACKGROUNDIMAGE = 0x912a;
DS_CHANGEPHOTOSTADIOMODE = 0x912b;
DS_GETPARTIALOBJECTEX = 0x912c;

0x912d: UNKNOWN
0x912e: UNKNOWN
0x912f: UNKNOWN

DS_RESETMIRRORLOCKUPSTATE = 0x9130;
DS_POPUPBUILTINLFLASH = 0x9131;
DS_ENDGETPARTIALOBJECTEX = 0x9132;
DS_MOVIESELECTSWON = 0x9133;
DS_MOVIESELECTSWOFF = 0x9134; 

DS_INITIATEVIEWFINDER = 0x9151;
DS_TERMINATEVIEWFINDER = 0x9152;
DS_GETVIEWFINDERDATA = 0x9153;
DS_DOAF = 0x9154;
DS_DRIVELENS = 0x9155;
DS_DEPTHOFFIELDPREVIEW = 0x9156;
DS_CLICKWB = 0x9157;
DS_ZOOM = 0x9158;
DS_ZOOM_POSITION = 0x9159;
DS_SETLIVEAF_FRAME = 0x915a;
DS_AFCANCEL = 0x9160;

0x91c0: ceresOpenFileValue
0x91c1: ceresCreateFileValue
0x91c2: ceresRemoveFileValue
0x91c3: ceresCloseFileValue
0x91c4: ceresGetWriteObject
0x91c5: ceresSendReadObject
0x91c6: ceresFileAttributesValue
0x91c7: ceresFileTimeValue
0x91c8: ceresSeekFileValue
0x91c9: ceresCreateDirectoryValue
0x91ca: ceresRemoveDirectoryValue
0x91cb: ceresSendFileInfo
0x91cc: ceresSendFileInfoListEx
0x91ce: ceresSendDriveInfo
0x91cf: ceresNotifyDriveStatus
0x91d0: ceresSplitFileValue
0x91d1: ceresRenameFileValue
0x91d2: ceresTruncateFileValue
0x91e1: UNKNOWN
0x91e2: UNKNOWN
0x91e3: ceresSendScanningResult
0x91e4: ceresSendHostInfo
0x91e5: UNKNOWN
0x91e6: UNKNOWN
0x91e7: UNKNOWN
0x91e8: ceresNotifyNetworkError
0x91e9: UNKNOWN
0x91ea: ceresRequestAdapterProperty
0x91eb: UNKNOWN
0x91ec: ceresSendWpsPinCode
0x91ed: ceresSendWizardInfo
0x91ee: UNKNOWN
0x91ef: ceresSendBtSearchResult
0x91f0: UNKNOWN
0x91f1: UNKNOWN
0x91f2: ceresGetUpdateFileData
0x91f3: UNKNOWN
0x91f4: UNKNOWN
0x91f7: ceresSendGpsInfo
0x91f5: ceresSendFactoryProperty
0x91f6: UNKNOWN
0x91f8: ceresSendBtPairingResult
0x91f9: ceresNotifyBtStatus

PtpOpe_DS_FAPI_MESSAGETX = 0x91fe;
PtpOpe_DS_FAPI_MESSAGERX = 0x91ff;

property management ?
0x9801: UNKNOWN
0x9802: UNKNOWN
0x9803: UNKNOWN
0x9804: UNKNOWN
0x9805: UNKNOWN

See also Edit

External links Edit

ToolsEdit

Also on Fandom

Random Wiki