From gphoto Thu Dec 14 15:30:49 2000 From: Thorsten Westheider Date: Thu, 14 Dec 2000 15:30:49 +0000 To: gphoto Subject: Re: [gphoto] What about Canon EOD D30 support X-MARC-Message: https://marc.info/?l=gphoto&m=97680915328434 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--------------1DDE29E5DF258ED7A5B365F7" This is a multi-part message in MIME format. --------------1DDE29E5DF258ED7A5B365F7 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Philippe Marzouk wrote: > > > > > > compare > > > with what you get with the Windows software by using a USB sniffer like > > > snoopy. > > > > Where do I get this snoopy tool from? All I find is Snoopy > > screen savers (hey Peanuts fans, no offense ;-). > > I don't know, I just saw it mentionned in the list, anyone ?? > > > > There is another version of the protocol file updated by the writer of > > a > > > command line (ftp like) tool called s10sh to access Canon camera at : > > > > > > http://www.kyuzz.org/antirez/s10sh > > > > I'll have a look at that one too, maybe the unknown command > > is listed there. > > > > 03 22 is a get date response > > fffb are not meaningful, a sort of serial number, works if set to 0 > > I am travelling in a few minutes to a country with poor internet > connectivity for approx one week, I'll try to check my mail and answer but > am not sure I will be able to do it. Hi Philippe, in case you can read this, I'm still trying to figure out what's going on between my EOS and my PC. I'm writing a small C++ program to be able to make tests with my camera and from what I've learned so far the protocol is about the same as that of the PowerShot types as far as non-disk operations are concerned. When it comes to e.g. list files on the current drive, things start to break with the PowerShot code. I made a short test with Win98 software and eavesdropped the USB transfer from and to the camera with Snoopy. There seem to be new commands such as 1b 12, for example; I have no idea what these are used for but 1b 12 and 1b 22 for instance appear to preceed the well-known 0b 11 (list files) command. Find attached a short excerpt from a Snoopy log, maybe you'll have an idea. Regards, Thorsten Westheider -- Dipl.-Phys. Thorsten Westheider / / (_)__ __ ____ __ Im Schlingen 15 / /__/ / _ \/ // /\ \/ / 32120 Hiddenhausen -- Germany /____/_/_//_/\_,_/ /_/\_\ --------------1DDE29E5DF258ED7A5B365F7 Content-Type: text/plain; charset=us-ascii; name="snoopy.txt" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="snoopy.txt" 00008624 73.14339440 [Zoombrow] 00008625 73.14357440 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB 00008626 73.14358960 00008627 73.14359840 >>>>>>> URB 283 going down... 00008628 73.14361440 -- URB_FUNCTION_VENDOR_DEVICE: 00008629 73.14363920 TransferFlags = 00000000 (USBD_TRANSFER_DIRECTION_OUT, ~USBD_SHORT_TRANSFER_OK) 00008630 73.14365440 TransferBufferLength = 00000054 00008631 73.14367040 TransferBuffer = c19bba00 00008632 73.14368560 TransferBufferMDL = 00000000 00008633 73.14369680 00008634 73.14370560 0000: 00008635 73.14377200 14 00 00 00 01 02 00 00 00 00 00 00 00 00 00 00 00008636 73.14378080 0010: 00008637 73.14384560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008638 73.14384880 0020: 00008639 73.14393840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008640 73.14394240 0030: 00008641 73.14400560 44 3a 5c 57 49 4e 44 4f 57 53 3b 44 3a 5c 61 00 00008642 73.14400880 0040: 00008643 73.14407280 02 00 00 00 1b 00 00 12 14 00 00 00 b0 f4 c0 00 00008644 73.14407600 0050: 00008645 73.14409280 06 00 00 00 00008646 73.14410400 UrbLink = 00000000 00008647 73.14411360 RequestTypeReservedBits = 40 00008648 73.14412320 Request = 04 00008649 73.14413440 Value = 0010 00008650 73.14414480 Index = 0000 00008651 73.15059760 00008652 73.15060160 <<<<<<< URB 283 coming back... 00008653 73.15061440 -- URB_FUNCTION_CONTROL_TRANSFER: 00008654 73.15062640 PipeHandle = c19bdf7c 00008655 73.15064400 TransferFlags = 00000002 (USBD_TRANSFER_DIRECTION_OUT, USBD_SHORT_TRANSFER_OK) 00008656 73.15065520 TransferBufferLength = 00000054 00008657 73.15066560 TransferBuffer = c19bba00 00008658 73.15067600 TransferBufferMDL = c19bbad0 00008659 73.15068720 UrbLink = 00000000 00008660 73.15072800 SetupPacket : 40 04 10 00 00 00 54 00 00008661 73.15080240 [Zoombrow] PSLLUSB: bRet == TRUE in ScanMngrWriteRegistor() 00008662 73.15080640 [Zoombrow] 00008663 73.15083040 [Zoombrow] === Start ReadData === 00008664 73.15083440 [Zoombrow] 00008665 73.15089520 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB 00008666 73.15090560 00008667 73.15090880 >>>>>>> URB 284 going down... 00008668 73.15092160 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER: 00008669 73.15093360 PipeHandle = c19bb428 00008670 73.15095040 TransferFlags = 00000002 (USBD_TRANSFER_DIRECTION_OUT, USBD_SHORT_TRANSFER_OK) 00008671 73.15096160 TransferBufferLength = 00000040 00008672 73.15097200 TransferBuffer = e86f2bca 00008673 73.15098160 TransferBufferMDL = 00000000 00008674 73.15098800 00008675 73.15099120 0000: 00008676 73.15105360 00 00 00 00 01 03 00 00 00 00 00 00 00 00 00 00 00008677 73.15105680 0010: 00008678 73.15111840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008679 73.15112240 0020: 00008680 73.15118480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008681 73.15118800 0030: 00008682 73.15124800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008683 73.15125760 UrbLink = 00000000 00008684 73.15633040 00008685 73.15633440 <<<<<<< URB 281 coming back... 00008686 73.15635120 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER: 00008687 73.15636640 PipeHandle = c19bb450 00008688 73.15638320 TransferFlags = 00000003 (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK) 00008689 73.15639360 TransferBufferLength = 00000000 00008690 73.15640480 TransferBuffer = c19bc0b0 00008691 73.15641840 TransferBufferMDL = c19bba90 00008692 73.15642480 00008693 73.15643760 UrbLink = 00000000 00008694 73.16205440 00008695 73.16206480 <<<<<<< URB 284 coming back... 00008696 73.16208320 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER: 00008697 73.16210080 PipeHandle = c19bb428 00008698 73.16212320 TransferFlags = 00000003 (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK) 00008699 73.16213840 TransferBufferLength = 00000040 00008700 73.16215520 TransferBuffer = e86f2bca 00008701 73.16217040 TransferBufferMDL = c19c6b30 00008702 73.16218160 00008703 73.16219200 0000: 00008704 73.16225920 00 00 00 00 01 03 00 00 00 00 00 00 00 00 00 00 00008705 73.16226800 0010: 00008706 73.16233440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008707 73.16234240 0020: 00008708 73.16240880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008709 73.16241760 0030: 00008710 73.16248080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008711 73.16249680 UrbLink = 00000000 00008712 73.16251920 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB 00008713 73.16253440 00008714 73.16254320 >>>>>>> URB 285 going down... 00008715 73.16255920 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER: 00008716 73.16257440 PipeHandle = c19bb428 00008717 73.16259680 TransferFlags = 00000002 (USBD_TRANSFER_DIRECTION_OUT, USBD_SHORT_TRANSFER_OK) 00008718 73.16261200 TransferBufferLength = 00000040 00008719 73.16262800 TransferBuffer = c19b7dc0 00008720 73.16264480 TransferBufferMDL = 00000000 00008721 73.16265520 00008722 73.16266400 0000: 00008723 73.16273280 02 00 00 00 09 00 00 21 1c 00 00 00 98 f5 c0 00 00008724 73.16274160 0010: 00008725 73.16280960 00 00 00 00 00 c0 f3 00 00 60 e8 00 00 55 00 49 00008726 73.16281840 0020: 00008727 73.16288400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008728 73.16289280 0030: 00008729 73.16295680 00 00 00 00 1c 00 00 00 40 00 00 00 00 00 00 00 00008730 73.16296640 UrbLink = 00000000 00008731 73.16395760 00008732 73.16396640 <<<<<<< URB 285 coming back... 00008733 73.16398320 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER: 00008734 73.16400160 PipeHandle = c19bb428 00008735 73.16402400 TransferFlags = 00000003 (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK) 00008736 73.16404000 TransferBufferLength = 00000014 00008737 73.16405520 TransferBuffer = c19b7dc0 00008738 73.16407120 TransferBufferMDL = c19c6b30 00008739 73.16408160 00008740 73.16409040 0000: 00008741 73.16415920 02 00 00 00 1b 00 00 22 14 00 00 00 b0 f4 c0 00 00008742 73.16416800 0010: 00008743 73.16419040 00 00 00 00 00008744 73.16421760 UrbLink = 00000000 00008745 73.16434400 [Zoombrow] === Exit ReadData === 00008746 73.16435360 [Zoombrow] 00008747 73.16476320 [Zoombrow] PSLLUSB: pPCmsg->MessageLength(1e) _LenDirSubtree(dirSubtrees)(e) in baseGetDirs(). 00008748 73.16477120 [Zoombrow] 00008749 73.16483680 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB 00008750 73.16484800 00008751 73.16485120 >>>>>>> URB 286 going down... 00008752 73.16486160 -- URB_FUNCTION_VENDOR_DEVICE: 00008753 73.16490880 TransferFlags = 00000000 (USBD_TRANSFER_DIRECTION_OUT, ~USBD_SHORT_TRANSFER_OK) 00008754 73.16492000 TransferBufferLength = 0000005e 00008755 73.16493040 TransferBuffer = c19bba00 00008756 73.16494000 TransferBufferMDL = 00000000 00008757 73.16494640 00008758 73.16495040 0000: 00008759 73.16501280 1e 00 00 00 02 02 00 00 00 00 00 00 00 00 00 00 00008760 73.16501600 0010: 00008761 73.16507840 02 00 00 00 1b 00 00 12 14 00 00 00 b0 f4 c0 00 00008762 73.16508160 0020: 00008763 73.16514320 06 00 00 00 02 02 00 00 00 00 00 00 00 00 b0 00 00008764 73.16514720 0030: 00008765 73.16520880 00 00 31 00 00 00 01 00 14 00 00 00 0a 0f 54 07 00008766 73.16521280 0040: 00008767 73.16527520 02 00 00 00 0b 00 00 11 1e 00 00 00 5a 0f 54 07 00008768 73.16527840 0050: 00008769 73.16533200 00 43 3a 5c 50 57 52 53 48 4f 54 00 00 00 00008770 73.16534320 UrbLink = 00000000 00008771 73.16535280 RequestTypeReservedBits = 40 00008772 73.16536240 Request = 04 00008773 73.16537280 Value = 0010 00008774 73.16538240 Index = 0000 00008775 73.16547120 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB 00008776 73.16548160 00008777 73.16548560 >>>>>>> URB 287 going down... 00008778 73.16549760 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER: 00008779 73.16550880 PipeHandle = c19bb450 00008780 73.16552640 TransferFlags = 00000002 (USBD_TRANSFER_DIRECTION_OUT, USBD_SHORT_TRANSFER_OK) 00008781 73.16553680 TransferBufferLength = 00000040 00008782 73.16554800 TransferBuffer = c19bc0b0 00008783 73.16555760 TransferBufferMDL = 00000000 00008784 73.16556400 00008785 73.16556800 0000: 00008786 73.16562880 02 00 00 00 20 00 00 00 10 00 00 00 00 00 00 00 00008787 73.16563200 0010: 00008788 73.16569520 7c 78 9a c1 64 b5 99 c1 ba 41 02 c0 00 00 00 00 00008789 73.16569840 0020: 00008790 73.16576000 00 00 00 00 00 00 00 00 b0 c0 9b c1 01 00 00 00 00008791 73.16576320 0030: 00008792 73.16582240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008793 73.16583200 UrbLink = 00000000 00008794 73.17159680 00008795 73.17160160 <<<<<<< URB 286 coming back... 00008796 73.17161360 -- URB_FUNCTION_CONTROL_TRANSFER: 00008797 73.17162560 PipeHandle = c19bdf7c 00008798 73.17164320 TransferFlags = 00000002 (USBD_TRANSFER_DIRECTION_OUT, USBD_SHORT_TRANSFER_OK) 00008799 73.17165440 TransferBufferLength = 0000005e 00008800 73.17166480 TransferBuffer = c19bba00 00008801 73.17167600 TransferBufferMDL = c19bbad0 00008802 73.17168640 UrbLink = 00000000 00008803 73.17172800 SetupPacket : 40 04 10 00 00 00 5e 00 00008804 73.17180240 [Zoombrow] PSLLUSB: bRet == TRUE in ScanMngrWriteRegistor() 00008805 73.17180720 [Zoombrow] 00008806 73.17182960 [Zoombrow] === Start ReadData === 00008807 73.17183440 [Zoombrow] 00008808 73.17188560 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB 00008809 73.17189600 00008810 73.17190000 >>>>>>> URB 288 going down... 00008811 73.17191200 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER: 00008812 73.17192320 PipeHandle = c19bb428 00008813 73.17194080 TransferFlags = 00000002 (USBD_TRANSFER_DIRECTION_OUT, USBD_SHORT_TRANSFER_OK) 00008814 73.17195120 TransferBufferLength = 00000040 00008815 73.17196080 TransferBuffer = 00000000 00008816 73.17197200 TransferBufferMDL = c19bbad0 00008817 73.17198880 00008818 73.17199200 0000: 00008819 73.17205600 00 00 71 00 00 00 01 00 50 00 00 00 7a 0e 30 00 00008820 73.17205920 0010: 00008821 73.17212160 00 00 61 00 00 00 01 00 40 00 00 00 8a 0e 40 00 00008822 73.17212480 0020: 00008823 73.17218800 00 00 71 00 00 00 01 00 54 00 00 00 9a 0e 54 07 00008824 73.17219120 0030: 00008825 73.17225200 14 00 00 00 01 02 00 00 00 00 00 00 00 00 00 00 00008826 73.17226160 UrbLink = 00000000 00008827 73.18687280 00008828 73.18688000 <<<<<<< URB 287 coming back... 00008829 73.18689520 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER: 00008830 73.18690880 PipeHandle = c19bb450 00008831 73.18692640 TransferFlags = 00000003 (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK) 00008832 73.18694000 TransferBufferLength = 00000000 00008833 73.18695200 TransferBuffer = c19bc0b0 00008834 73.18696240 TransferBufferMDL = c19c6b30 00008835 73.18697040 00008836 73.18698080 UrbLink = 00000000 00008837 73.18708320 UsbSnoop - IRP_MJ_INTERNAL_DEVICE_CONTROL, IOCTL_INTERNAL_USB_SUBMIT_URB 00008838 73.18709600 00008839 73.18710080 >>>>>>> URB 289 going down... 00008840 73.18711360 -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER: 00008841 73.18712480 PipeHandle = c19bb450 00008842 73.18714560 TransferFlags = 00000002 (USBD_TRANSFER_DIRECTION_OUT, USBD_SHORT_TRANSFER_OK) 00008843 73.18715680 TransferBufferLength = 00000040 00008844 73.18716800 TransferBuffer = c19bc0b0 00008845 73.18717760 TransferBufferMDL = 00000000 00008846 73.18718640 00008847 73.18719200 0000: 00008848 73.18725440 02 00 00 00 20 00 00 00 10 00 00 00 00 00 00 00 00008849 73.18725760 0010: 00008850 73.18732000 7c 78 9a c1 64 b5 99 c1 ba 41 02 c0 00 00 00 00 00008851 73.18732640 0020: 00008852 73.18738800 00 00 00 00 00 00 00 00 b0 c0 9b c1 01 00 00 00 00008853 73.18739360 0030: 00008854 73.18745520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00008855 73.18746560 UrbLink = 00000000 00008856 73.19739440 00008857 73.19740320 <<<<<<< URB 288 coming back... --------------1DDE29E5DF258ED7A5B365F7--