Finally, I am making a hidio 0.1 release, after many years in the
works. USB HID programming has great promise, but its also massively
painful. As I recently read on a developer forum, if you are feeling
confident in your programming skills, and want to experience some
serious pain, try getting code working with the Apple HID Manager.
Anyway, enjoy the fruits of this pain: http://at.or.at/hans/pd/objects.html#hidio
.hc
Pd-announce mailing list Pd-announce@iem.at http://lists.puredata.info/listinfo/pd-announce
Hello Hans
As usualu thanks for ALL your hard work and pain is there a help file for it?
pp ________________________________________ From: pd-list-bounces@iem.at [pd-list-bounces@iem.at] On Behalf Of Hans-Christoph Steiner [hans@at.or.at] Sent: Thursday, January 28, 2010 12:24 AM To: pd-announce@iem.at Subject: [PD] [PD-announce] first alpha hidio 0.1 release
Finally, I am making a hidio 0.1 release, after many years in the works. USB HID programming has great promise, but its also massively painful. As I recently read on a developer forum, if you are feeling confident in your programming skills, and want to experience some serious pain, try getting code working with the Apple HID Manager.
Anyway, enjoy the fruits of this pain: http://at.or.at/hans/pd/objects.html#hidio
.hc
Pd-announce mailing list Pd-announce@iem.at http://lists.puredata.info/listinfo/pd-announce
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Hallo, Pagano, Patrick hat gesagt: // Pagano, Patrick wrote:
As usualu thanks for ALL your hard work and pain is there a help file for it?
There is one hidden in SVN: http://pure-data.svn.sourceforge.net/viewvc/pure-data/trunk/externals/io/hid... but I think, it's not completely updated yet (e.g. there is a "print" message in the help, which isn't supported by hidio, only by hid.)
Hans, it's great that work on this has started again. It comes at the right time for me, as I'm slowly replacing J. Sarlo's old and trusted [joystick] external with a more general hid approach in my patches.
I already have one feature wish, or maybe it's there and I just didn't find it:
It would be extremely helpful to get information about the available devices as Pd messages. Currently I have to print the info to the console to detect the device I'd like to use, then I manually open the device by number, which requires manual interaction. I can do it, but as for installations where people not familiar with Pd start the device, I'd like a more automatic way. :)
Frank
On Jan 28, 2010, at 10:16 AM, Frank Barknecht wrote:
Hallo, Frank Barknecht hat gesagt: // Frank Barknecht wrote:
It would be extremely helpful to get information about the
available devices as Pd messages.Hah, seems Ingo Scherzinger has the same wish. :)
Like with [comport], send [hidio] the [devices( message.
.hc
I have always wished for my computer to be as easy to use as my
telephone; my wish has come true because I can no longer figure out
how to use my telephone." --Bjarne Stroustrup (creator of C++)
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:
On Jan 28, 2010, at 10:16 AM, Frank Barknecht wrote:
Hallo, Frank Barknecht hat gesagt: // Frank Barknecht wrote:
It would be extremely helpful to get information about the available devices as Pd messages.
Hah, seems Ingo Scherzinger has the same wish. :)
Like with [comport], send [hidio] the [devices( message.
But this sends to the console, IIRC?
Frank
On Jan 28, 2010, at 4:11 PM, Frank Barknecht wrote:
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:
On Jan 28, 2010, at 10:16 AM, Frank Barknecht wrote:
Hallo, Frank Barknecht hat gesagt: // Frank Barknecht wrote:
It would be extremely helpful to get information about the
available devices as Pd messages.Hah, seems Ingo Scherzinger has the same wish. :)
Like with [comport], send [hidio] the [devices( message.
But this sends to the console, IIRC?
Yes, but you can get the info via the right outlet. So you could do
your own search. Or just open the device using the USB productID/
manufactuerID, or by USB HID class (i.e. mouse, joystick, gamepad).
.hc
Computer science is no more related to the computer than astronomy is
related to the telescope. -Edsger Dykstra
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:
Like with [comport], send [hidio] the [devices( message.
But this sends to the console, IIRC?
Yes, but you can get the info via the right outlet. So you could do
your own search. Or just open the device using the USB productID/ manufactuerID, or by USB HID class (i.e. mouse, joystick, gamepad).
Maybe I have an old version, but the hidio-0.1 I have here doesn't send anything to the outlet for closed devices (I use Linux.) "devices" prints to console only, "info" prints this:
open 0 device -1 total 0 poll 5 vendorID 0x0001 productID 0x0000 product Unknown
regardless of what devices there are. If devices are open, it prints the info correctly.
How do I open by PID? That would actually be what I want to do. Do I have to test-open all possible devices once?
Frank
On Jan 29, 2010, at 1:19 PM, Frank Barknecht wrote:
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:
Like with [comport], send [hidio] the [devices( message.
But this sends to the console, IIRC?
Yes, but you can get the info via the right outlet. So you could do your own search. Or just open the device using the USB productID/ manufactuerID, or by USB HID class (i.e. mouse, joystick, gamepad).
Maybe I have an old version, but the hidio-0.1 I have here doesn't
send anything to the outlet for closed devices (I use Linux.) "devices"
prints to console only, "info" prints this:open 0 device -1 total 0 poll 5 vendorID 0x0001 productID 0x0000 product Unknown
regardless of what devices there are. If devices are open, it prints
the info correctly.How do I open by PID? That would actually be what I want to do. Do I
have to test-open all possible devices once?
I am assuming PID == productID. It is possible to open using the
manuID productID, but there is no way to check if it is present or
not, except for opening one device at a time using [open $1( and a
number, then querying it. For example [open 0x046d 0xc01d( opens my
mouse no matter what device number it is.
Do you have a use case where you would want to query and not just open?
.hc
"It is convenient to imagine a power beyond us because that means we
don't have to examine our own lives.", from "The Idols of
Environmentalism", by Curtis White
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:
I am assuming PID == productID. It is possible to open using the manuID productID, but there is no way to check if it is present or not, except for opening one device at a time using [open $1( and a number, then querying it. For example [open 0x046d 0xc01d( opens my mouse no matter what device number it is.
Okay, I guess, I need to use the SVN version, not the released 0.1. The latter doesn't do anything when trying to open by "open manuID prodID".
Frank
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:
I am assuming PID == productID. It is possible to open using the manuID productID, but there is no way to check if it is present or not, except for opening one device at a time using [open $1( and a number, then querying it. For example [open 0x046d 0xc01d( opens my mouse no matter what device number it is.
Do you have a use case where you would want to query and not just open?
And here's my use case that I'd like to solve somehow:
I have a Twin Playstation to USB-HID converted that I use to connect Playstation devices like a dancemat (e.g. for this, click VIDEO: http://www.discofon.de/discofon.html)
This converter provides two PSX-ports and shows up in the "print" list like this:
Device 4: 'bttv IR (card=24)' on '/dev/input/event4' Device 6: 'Twin USB Joystick' on '/dev/input/event6' Device 7: 'Twin USB Joystick' on '/dev/input/event7'
The Device numbers can change of course depending on the computer, connection order etc. Only one of the two Twin ports is actually connected to the dancemat.
I'd like to connect the right one. For this I think, I could open each of them, test if signals come in, and eventually select the connected one. I can do this by hand, but as this is for an installation, there may be operators who are not familiar with Pd so I'm looking for a way to automate the seleciton process a bit. Opening by Vendor or Product IDs would help,
Frank