@Jochem_S:
Zowel de Rigol software voor DS1000, DS5000 als de Agilent software voor de 3000 reeks lijken als druppels water op elkaar. Echter werken ze blijkbaar enkel voor een specifiek toestel. Ik ben er niet lang mee bezig geweest, maar enkel bij de Ultrascope voor DS1000 vind het programma een usb-device.
@madwizard:
Ik gebruik sniffusb 1.6, maar waar ik die vandaag heb weet ik niet meer. Het is blijkbaar een afgeleide van snoopy usb en is intussen alweer door andere ontwikkelaars onder handen genomen. Google eens op sniffusb. Je komt vast wel een recenter exemplaar tegen. Ik zie niet meteen functioneel verschil in de versies, dus blijf ik maar voortdoen met mijn oude versie.
Wat hij uitspuwt snap ik echter niet veel van. Ik ben geen usb-kenner. Uit de hex-data heb ik wel al wat bruikbare info gehaald zoals de SCPI commando's en de sample-data.
Zo ziet de log eruit na een initialisatie:
[0 ms] UsbSnoop compiled on Jan 18 2003 22:41:32 loading
[0 ms] UsbSnoop - DriverEntry(f88b2c40) : Windows NT WDM version 1.32
[16 ms] UsbSnoop - AddDevice(f88b2f50) : DriverObject 82016998, pdo 820a4a60
[16 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_PNP (0x00000018)
[16 ms] UsbSnoop - MyDispatchPNP(f88b2ee0) : IRP_MJ_PNP (0x00000018)
[17 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_PNP (IRP_MN_QUERY_RESOURCE_REQUIREMENTS)
[17 ms] UsbSnoop - MyDispatchPNP(f88b2ee0) : IRP_MJ_PNP (IRP_MN_QUERY_RESOURCE_REQUIREMENTS)
[17 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_PNP (IRP_MN_FILTER_RESOURCE_REQUIREMENTS)
[17 ms] UsbSnoop - MyDispatchPNP(f88b2ee0) : IRP_MJ_PNP (IRP_MN_FILTER_RESOURCE_REQUIREMENTS)
[17 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_PNP (IRP_MN_START_DEVICE)
[17 ms] UsbSnoop - MyDispatchPNP(f88b2ee0) : IRP_MJ_PNP (IRP_MN_START_DEVICE)
[170 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_INTERNAL_DEVICE_CONTROL
[170 ms] UsbSnoop - MyDispatchInternalIOCTL(f88b1e80) : fdo=820a4a60, Irp=82326e28, IRQL=0
[170 ms] >>> URB 1 going down >>>
-- URB_FUNCTION_GET_DESCRIPTOR_FROM_DEVICE:
TransferBufferLength = 00000012
TransferBuffer = f89879a4
TransferBufferMDL = 00000000
Index = 00000000
DescriptorType = 00000001 (USB_DEVICE_DESCRIPTOR_TYPE)
LanguageId = 00000000
[174 ms] UsbSnoop - MyInternalIOCTLCompletion(f88b1db0) : fido=00000000, Irp=82326e28, Context=81ff4e18, IRQL=2
[174 ms] <<< URB 1 coming back <<<
-- URB_FUNCTION_CONTROL_TRANSFER:
PipeHandle = 820b2e98
TransferFlags = 0000000b (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK)
TransferBufferLength = 00000012
TransferBuffer = f89879a4
TransferBufferMDL = 821244e8
00000000: 12 01 10 01 ff ff ff 40 00 04 dc 05 00 01 01 02
00000010: 00 01
UrbLink = 00000000
SetupPacket =
00000000: 80 06 00 01 00 00 12 00
[174 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_INTERNAL_DEVICE_CONTROL
[174 ms] UsbSnoop - MyDispatchInternalIOCTL(f88b1e80) : fdo=820a4a60, Irp=82326e28, IRQL=0
[174 ms] >>> URB 2 going down >>>
-- URB_FUNCTION_GET_DESCRIPTOR_FROM_DEVICE:
TransferBufferLength = 00000400
TransferBuffer = 81e17448
TransferBufferMDL = 00000000
Index = 00000000
DescriptorType = 00000002 (USB_CONFIGURATION_DESCRIPTOR_TYPE)
LanguageId = 00000000
[179 ms] UsbSnoop - MyInternalIOCTLCompletion(f88b1db0) : fido=00000000, Irp=82326e28, Context=82337730, IRQL=2
[179 ms] <<< URB 2 coming back <<<
-- URB_FUNCTION_CONTROL_TRANSFER:
PipeHandle = 820b2e98
TransferFlags = 820b2e9b (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK)
TransferBufferLength = 00000020
TransferBuffer = 81e17448
TransferBufferMDL = 821244e8
00000000: 09 02 20 00 01 01 04 c0 01 09 04 00 00 02 fe 03
00000010: 01 05 07 05 01 02 40 00 00 07 05 82 02 40 00 00
UrbLink = 00000000
SetupPacket =
00000000: 80 06 00 02 00 00 00 04
[179 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_INTERNAL_DEVICE_CONTROL
[179 ms] UsbSnoop - MyDispatchInternalIOCTL(f88b1e80) : fdo=820a4a60, Irp=82326e28, IRQL=0
[179 ms] >>> URB 3 going down >>>
-- URB_FUNCTION_SELECT_CONFIGURATION:
ConfigurationDescriptor = 0x81e17448 (configure)
ConfigurationDescriptor : bLength = 9
ConfigurationDescriptor : bDescriptorType = 0x00000002
ConfigurationDescriptor : wTotalLength = 0x00000020
ConfigurationDescriptor : bNumInterfaces = 0x00000001
ConfigurationDescriptor : bConfigurationValue = 0x00000001
ConfigurationDescriptor : iConfiguration = 0x00000004
ConfigurationDescriptor : bmAttributes = 0x000000c0
ConfigurationDescriptor : MaxPower = 0x00000001
ConfigurationHandle = 0x00000000
Interface[0]: Length = 56
Interface[0]: InterfaceNumber = 0
Interface[0]: AlternateSetting = 0
[212 ms] UsbSnoop - MyInternalIOCTLCompletion(f88b1db0) : fido=00000000, Irp=82326e28, Context=821e1b28, IRQL=0
[212 ms] <<< URB 3 coming back <<<
-- URB_FUNCTION_SELECT_CONFIGURATION:
ConfigurationDescriptor = 0x81e17448 (configure)
ConfigurationDescriptor : bLength = 9
ConfigurationDescriptor : bDescriptorType = 0x00000002
ConfigurationDescriptor : wTotalLength = 0x00000020
ConfigurationDescriptor : bNumInterfaces = 0x00000001
ConfigurationDescriptor : bConfigurationValue = 0x00000001
ConfigurationDescriptor : iConfiguration = 0x00000004
ConfigurationDescriptor : bmAttributes = 0x000000c0
ConfigurationDescriptor : MaxPower = 0x00000001
ConfigurationHandle = 0x822390c8
Interface[0]: Length = 56
Interface[0]: InterfaceNumber = 0
Interface[0]: AlternateSetting = 0
Interface[0]: Class = 0x000000fe
Interface[0]: SubClass = 0x00000003
Interface[0]: Protocol = 0x00000001
Interface[0]: InterfaceHandle = 0x820f4438
Interface[0]: NumberOfPipes = 2
Interface[0]: Pipes[0] : MaximumPacketSize = 0x00000040
Interface[0]: Pipes[0] : EndpointAddress = 0x00000001
Interface[0]: Pipes[0] : Interval = 0x00000000
Interface[0]: Pipes[0] : PipeType = 0x00000002 (UsbdPipeTypeBulk)
Interface[0]: Pipes[0] : PipeHandle = 0x820f4454
Interface[0]: Pipes[0] : MaxTransferSize = 0x00001000
Interface[0]: Pipes[0] : PipeFlags = 0x00000000
Interface[0]: Pipes[1] : MaximumPacketSize = 0x00000040
Interface[0]: Pipes[1] : EndpointAddress = 0x00000082
Interface[0]: Pipes[1] : Interval = 0x00000000
Interface[0]: Pipes[1] : PipeType = 0x00000002 (UsbdPipeTypeBulk)
Interface[0]: Pipes[1] : PipeHandle = 0x820f4474
Interface[0]: Pipes[1] : MaxTransferSize = 0x00001000
Interface[0]: Pipes[1] : PipeFlags = 0x00000000
[212 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_PNP (IRP_MN_QUERY_CAPABILITIES)
[212 ms] UsbSnoop - MyDispatchPNP(f88b2ee0) : IRP_MJ_PNP (IRP_MN_QUERY_CAPABILITIES)
[213 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_PNP (IRP_MN_QUERY_CAPABILITIES)
[213 ms] UsbSnoop - MyDispatchPNP(f88b2ee0) : IRP_MJ_PNP (IRP_MN_QUERY_CAPABILITIES)
[213 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_PNP (IRP_MN_QUERY_PNP_DEVICE_STATE)
[213 ms] UsbSnoop - MyDispatchPNP(f88b2ee0) : IRP_MJ_PNP (IRP_MN_QUERY_PNP_DEVICE_STATE)
[213 ms] UsbSnoop - DispatchAny(f88b0610) : IRP_MJ_PNP (IRP_MN_QUERY_DEVICE_RELATIONS)
[213 ms] UsbSnoop - MyDispatchPNP(f88b2ee0) : IRP_MJ_PNP (IRP_MN_QUERY_DEVICE_RELATIONS)
[Bericht gewijzigd door K-Ray op woensdag 27 juni 2007 22:36:44