Igor Furlan wrote:
On Mon, Jun 23, 2014 at 10:50 AM, Tim Roberts t...@probo.com wrote:
One of the advantages of libusb is that it crosses platforms. Why don't you
run your code on Windows?
Yes I could,,, but I wrote already few other utilities on LINUX
(mostly GPIB related). I would like
on REAL hardware works flawlessly.
At some point, you have to decide what this is worth to you. Some of the VM
managers don’t do a perfect job of USB forwarding.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
Igor Furlan wrote:
On Sun, Jun 22, 2014 at 11:41 PM, Tim Roberts t...@probo.com
mailto:t...@probo.com wrote:
On Jun 22, 2014, at 1:00 PM, Igor Furlan igor.fur...@gmail.com
mailto:igor.fur...@gmail.com wrote:
.
It returns -110 (aka it fails).
You know that -110 tells
and 64-bit machine.
Windows does a SetConfiguration when the driver loads. Some hardware doesn’t
like getting multiple SetConfiguration requests. Try removing the call to
usb_set_configuration.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
difficult to imagine how anything below
your application could cause this.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Learn Graph Databases - Download FREE O'Reilly Book
Graph Databases is the definitive new
behind the handle.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
___
libusbx-devel mailing list
libusbx-devel@lists.sourceforge.net
https://lists.sourceforge.net
to mention it here, but it's not really all that
hard to code directly to the usbfs ioctls, and that way you have
complete control over your destiny.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
CenturyLink
Nathan Hjelm wrote:
Ah. Ok. Wasn't aware of that case. The code is question is ISO C89 to
support MSVC. Do you know if the C89 standard also guarantees the rest
of the struct is zeroed?
Yes. That C99 wording was copied from the C89 spec, section 3.5.7.
--
Tim Roberts, t...@probo.com
Tim Roberts wrote:
Nathan Hjelm wrote:
Ah. Ok. Wasn't aware of that case. The code is question is ISO C89 to
support MSVC. Do you know if the C89 standard also guarantees the rest
of the struct is zeroed?
Yes. That C99 wording was copied from the C89 spec, section 3.5.7.
HAVING SAID ALL
there must be at least two elements.
Thus, your change is safe, although superfluous.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More
and halted the pipe, and that the actual
data you used here is irrelevant. Do you have any visibility into the
device to see its status at this point?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Rapidly
there is a
pending request. A USB device cannot send data on its own, and it
cannot signal that it is ready to receive. Everything starts with the
host application/driver. What the poll lets you do is learn when a
previously-submitted asynchronous request has completed.
--
Tim Roberts, t...@probo.com
bRequest for your own purposes, then you should use a
vendor request to the device, which is 0x40 instead of 0x42.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Rapidly troubleshoot problems before
request to an endpoint. If the
second parameter is Request, then you are sending to endpoint 3. To do
that, Windows requires that you actually own the interface that
contains endpoint 3. Have you already done that? It looks like you
claimed interface 1. Does that hold endpoint 3?
--
Tim Roberts
not contain any isochronous endpoints at all. Having an endpoint
with a max packet size of 0 is silly.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Rapidly troubleshoot problems before they affect your business
Kerdo Link wrote:
Shouldn't 3 be 0x03? because of uint16_t?
You don't honestly think there is any difference between 3 and 0x03, do you?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Sponsored
are you trying to send here?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Sponsored by Intel(R) XDK
Develop, test and display web and hybrid apps with a single code base.
Download it for free now!
http
in WinUSB that libusbx does not properly
handle. When you send a control request, libusbx finds the first valid
interface handle in its list and uses that. That does not work for
INTERFACE requests. It would have to search for the MATCHING interface
handle.
--
Tim Roberts, t...@probo.com
Providenza
ccier wrote:
And libusbx handles this situation differently if libusbK is used?
libusbx does not handle the situation at all. That's the issue. This
is a WinUSB feature that libusbK does not have and libusbx did not
anticipate.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
back up with its normal (e.g., HID) interface. Two
entirely separate personalities.
Sometimes, both interfaces are exposed all of the time. In that case,
you will still drop off the bus after firmware loading and re-enumerate.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
Liang Zhu wrote:
I would like to know how to ensure my usb device to be programmed
comes up in DFU mode.
That's entirely up to your device. It is your device that decides
whether to expose its regular working interface, or its DFU interface.
--
Tim Roberts, t...@probo.com
Providenza
in
hid_copy_transfer_data.
Is libusbx still being maintained, or is all the energy focused on the
great rejoining?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Shape the Mobile Experience: Free
.
I'm confused by this. If you are using the HID backend, which it seems
you are, you should never see ERROR_OPERATION_ABORTED. The HID backend
uses CancelIo in case of a timeout, not AbortPipe. Are you specifying a
timeout?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
, unless the user has requested interpretation (that is, the _ascii
version). In that case, we can be free to reject bad data.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
November Webinars for C, C
to return exactly
what it got. I do agree that the convenience wrapper
(libusb_get_string_descriptor_ascii) can have a more sophisticated
policy, but I don't think you should be lying in the lower-level interface.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
using Java code to call android.hardware.usb.UsbManager to request the
permission you need.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
October Webinars: Code for Performance
Free Intel webinars can help
something here
Google is your friend.
That's the ID of the internal USB hub in Dell's port replicator.
--
Tim Roberts, t...@probo.commailto:t...@probo.com
Providenza Boekelheide, Inc.
--
October Webinars: Code for Performance
transfers would be exactly identical to the same device with 9
interfaces.
The interfaces are only there to allow the operating system drivers to
manage ownership. The bus doesn't care.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99!
1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint
2013, SQL 2012
usbccgp.sys or any other driver associated with the composite
parent.
Hmm. That would, in fact, bypass the composite parent rewriting.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Get 100% visibility
, the PDO will be
created for MI_03, but the rewritten configuration descriptor only
includes interfaces 3, 4 and 5. You don't need the IAD, because you can
enumerate the interfaces you got.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
a PDO for MI_00. You'll only get one
driver, and that driver is assigned ownership of all three interfaces.
There will never be an opportunity to load MI_01 and MI_02, because it
won't create those PDOs.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
are starting from scratch, then
it might be worth considering an upgrade.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free
with it because of forgiving USB 2 implementations, but USB 3 is
stricter.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
See everything from the browser to the database with AppDynamics
Get end-to-end visibility
this instead:
fputs(str, stderr);
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
lookup should go do the lookup. Beyond that,
this becomes a maintenance headache.
However, I may not be in the majority. I also think the project will
come to regret the introduction of libusb_strerror.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
how this could happen.
If you don't SEND the second buffer until you have RECEIVED the first
result, how could you even get the first result unless the first buffer
was already gone?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
can't judge that. I am, admittedly, a minimalist.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your
.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Try New Relic Now We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service
that delivers powerful full
is below.
What does the configuration descriptor look like?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured
of the problem that, even if you completely eliminated all of
the libusbx overhead, you would have improved the overall performance so
slightly that it makes no difference.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
on
was absolutely insignificant when compared to the overhead of
user/kernel transitions and user event processing.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Precog is a next-generation analytics
Pete Batard wrote:
On 2013.04.08 19:12, Tim Roberts wrote:
For example, in this snippet:
Opening device 0403:CFF8...
libusbx: error [init_device] device
'\\.\USB#VID_0403PID_CFF8MI_01#6222886B8
1' is no longer connected!
the MI_01 implies that you have a separate driver for each
files, create services, and
create registry entries, but it will not associate your driver with the
device you're trying to drive.
Right-click installs can be used for so-called legacy drivers, but it
doesn't do anything that can't also be done with a batch script or a
trivial C program.
--
Tim
an interface number in them. All they get are
an endpoint number.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Own the Future-Intelreg; Level Up Game Demo Contest 2013
Rise to greatness in Intel's
Form. Why not just advance the pointer in place?
ed = (struct libusb_endpoint_descriptor *)((unsigned char *)ed +
LIBUSB_DT_ENDPOINT_SIZE);
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Everyone
and connector tolerances are a
LOT less forgiving at 5 GHz than they are at 480 MHz.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Everyone hates slow websites. So do we.
Make your web apps faster
an application-specific process.
This is why hotplug has not already been added to libusb/libusbx. You
have suggested a mechanism that would work for your application, but
it's not at all clear that it is the right solution for every
application. It's a very tricky problem.
--
Tim Roberts, t
should be able to do exactly 64kB/s.
I have a question: is ISO transfer works with libusbx or not?
Yes.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Symantec Endpoint Protection 12 positioned
in that code that serializes read requests.
If not, then what could be the problem?
That FTDI code does set the default read buffer size to 4096. That's
settable, using ftdi_read_data_set_chunksize.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
a CAT file
for all driver packages. Look up the inf2cat tool.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download
Xiaofan Chen wrote:
On Thu, Feb 28, 2013 at 2:32 AM, Tim Roberts t...@probo.com wrote:
Note that Windows 8 now requires a CAT file
for all driver packages.
Does this cat file needs to be signed? Where is
this documented?
I couldn't find it written down. I learned it empirically.
I find
is unpredictable.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http
setting function sends the EXACT SAME REQUEST. There's
just one field that identifies the alternate setting to enable.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Everyone hates slow websites. So do we
to set the
alternate setting number if you have more than one, and you will
(almost) never have more than one unless you have isochronous pipes.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
The Go
with alternate setting 1.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Free Next-Gen Firewall Hardware Offer
Buy your Sophos next-gen firewall before the end March 2013
and get the hardware for free
to accomplish what
I want using bulk transfers via Libusbx. Are there major issues with
this that I'm not aware of?
I'm with Alan. If it works for you, bulk traffic is the most common kind.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
to use the same code base (or close to it)
across platforms was also an enticing factor. Let me know if you think
I am off base with this.
How are you going to avoid specifying a COM port across platforms?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
Xiaofan Chen wrote:
On Fri, Jan 25, 2013 at 2:40 AM, Tim Roberts t...@probo.com wrote:
In Microsoft's defense, this is implemented in the WinUSB wrapper DLL,
not at the USB kernel level. It's a convenience. The DLL turns this
into spec-compliant requests at the kernel level
on Linux, or presumably on other
platforms. I don't see any reason why libusb or libusbx should support
it.
I agree.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Master Visual Studio, SharePoint, SQL
a protocol violation. I guess that
implicates the firmware. Have you done an lsusb to make sure the
descriptors match what you expect?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Master HTML5, CSS3
...
This is a nice summary of the situation. I'm especially fond of your
phrase going all Apple -- I will have to work that into a New Year's
Eve party conversation.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
, at the next
millisecond boundary.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant
you could do the
same thing yourself with a small C module.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs
tightly coupled to Windows.
This page might help you: http://www.linux-usb.org/usbtest/
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Keep yourself connected to Go Parallel:
INSIGHTS What's next
library is interrupt-driven, and
with an 80 MHz core, it ought to be able to keep up, unless you are
intercepting the GetDescriptor request in some way.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Keep
an interface
number at all), then you only need one driver. But if you don't
register for the composite device, the system supplies one (usbccgp),
which creates N separate subdevices, each of which starts crying for its
own driver.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
USBSTORE.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP
it is worth looking at how to get it work there.
WinUSB apparently works under Windows RT.
The only way to use USB is through the WinRT runtime. That runtime uses
WinUSB. At this point, there is no other way to do it.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
commands the disk firmware expects, and there's no good way to find
out.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
The Windows 8 Center - In partnership with Sourceforge
Your idea - your app - 30 days
silently and does not require the normal PnP
installation process, although the device has to be restarted or
unplugged/replugged.
I don't believe any of the libusbx back-ends operate as a filter
driver. However, I thought that the libusb-win32 COULD act as a
filter. Am I wrong?
--
Tim Roberts, t
requests on the bus do not include an interface number.
Claiming an interface just grants you ownership of the endpoints within
that interface.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Everyone hates
, basically, you aren't measuring what you think you are measuring.
For example, it looks like you might have a fixed delay of 2.5 seconds
somewhere between your start and your stop. You can't measure
throughput if you are blocking in your timing code.
--
Tim Roberts, t...@probo.com
Providenza
expected.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Got visibility?
Most devs has no idea what their production app looks like.
Find out how fast your code is with AppDynamics Lite.
http
you see? Is there an error, or does it simply never return?
How many bytes are you trying to read? What is the value of endpoint?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual
= libusb_claim_interface(dev_handle, interface_number);//Returns -12
for interfaces 0 and 1,
Interfaces 0 and 1 are CDC (communication class). It's possible those
interfaces are already being claimed by a virtual COM port driver.
How did you install the libbusb driver?
--
Tim Roberts, t
running single thread, I am
serialize the call) it takes 4-5 calls for
libusb_handle_events_timeout to call the callback and exit the loop.
this is the case even when 0 byte is read.
Well, when 0 bytes are read, it should time out. Right?
--
Tim Roberts, t...@probo.com
Providenza
, but
there's not much we can do without seeing the whole code, and I'm not
sure you really want to do that. You need to think about what order
things are happening, remembering that asynchronous operations will
always arrive at the most inconvenient time.
--
Tim Roberts, t...@probo.com
Providenza
packet size of 512. That's required by the spec. Because
the FX2 only has a 64-byte buffer for endpoint 1, that presents a
philosophical problem, and the FX2 data sheet points this out. You have
to report it as 512 bytes, but make sure you never try to do a packet
larger than 64.
--
Tim Roberts
, but it is not allowed to put anything on the wire until
it gets an IN token from the host, and that will only happen if the host
controller driver has a pending request from you. If you don't ask for
it, the device is never given the opportunity to send.
--
Tim Roberts, t...@probo.com
Providenza
and actually
managed to set the course for mainstream 64 bit adoption.
Karma's a bitch ain't it? ;)
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual Conference
Exclusive live event
the amd64 name
embedded throughout.
I assume this irritates Intel every time they see it, and so they keep
having guys in nice suits whisper in the ears of Microsoft management
that it would really be more fair and accurate if you dropped the amd64
name. That's gradually happening over time.
--
Tim
. We don't know more about
that than you do.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat
formats produced by their devices.
Their driver is not very complicated -- it mostly just passes requests
straight through to the device. YOU ought to be able to figure out from
that document what the data is you are receiving from USB.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
.
libusb_clear_halt(devh, 0x06);
libusb_clear_halt(devh, 0x88);
Why do you call clear_halt here? In virtually every case, that's
unnecessary superstition.
Are you sure your device has queued up data to send? What is it that
tells your device to put data in the FX2 FIFO?
--
Tim Roberts, t
the exact
interface to the Garmin DLL.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape
Vendor other, incoming
All other values of bmRequestType are invalid.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's
is well on
his way to having a solution for you.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat
,// size
reinterpret_castUCHAR*(pszAssNum));// buffer
bmRequestType = 0xC2
bRequest = VR_I2C_COMMAND
wValue = c_usDeviceId
wIndex = c_usOffset
length = c_uiLength
You should be able to figure the parameters out from that.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
?
Why would you need to?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed
the
endpoint6? If this is correct what is the other POLLIN file descriptor?
If timerfd is available on your system, to manage timer expirations
through a file descriptor, that's added to the POLLIN list.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
to write a filter driver for usbport.sys on the existing
operating systems to provide this same functionality. Did anyone ever
undertake that project?
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live
as
Windows 8 in terms of detecting and automatically installing drivers?
You're right. I hadn't thought that through sufficiently.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual
. Their GUI is a
little more video-game-like than I prefer, but it does the job.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual Conference
Exclusive live event will cover all the ways
to have 512kB, so it
shouldn't be an issue.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape
0x4000.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers
, the USB
team at Microsoft sent out a blast saying We will add this if you have
a legitimate use case for it. Let us know. No one has let them know,
or at least no one that matters.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc
.
Also, if you want 42 bytes, you should ask for 42 bytes, not 10. In
general, you should ALWAYS ask for a multiple of the endpoint's packet size.
That's a HID endpoint. Are you certain there will be HID traffic
waiting for you, and that you don't need to send a report request first?
--
Tim
, right? / is what you
get when a device fails to enumerate at the hardware level.
--
Tim Roberts, t...@probo.com
Providenza Boekelheide, Inc.
--
Live Security Virtual Conference
Exclusive live event will cover all
concept mean in a VM environment?
You're depending on interfaces that are system-specific but not promised
by contract. Are you sure the mechanisms you need will still be there
in three years?
However, you're fully entitled to set policy, so I won't say any more on
the topic.
--
Tim Roberts, t
1 - 100 of 104 matches
Mail list logo