Ok, so I am finally releasing a new version of [hid] and company.
There has been quite a bit added, so hopefully it was worth the wait.
when devices have mis-labeled elements
added rudimentary force feedback support in Mac OS X (more to come)
added a number of mapping objects like [hid_vector] and [hid_polar]
http://at.or.at/hans/pd/hid.html
.hc
"Information wants to be free." -Stewart Brand
Ok, so I am finally releasing a new version of [hid] and company. There has been quite a bit added, so hopefully it was worth the wait.
- added placeholder names in event types/codes to prevent segfaults
when devices have mis-labeled elements
this seems to have fixed a lot of the problems I was having.
best -august.
hi hans,
i'm trying your new hid to make it work with the multio of christian klippel. here's what i get when i plug the iobox in my computer (gentoo, 2.6.12)
ohci_hcd 0000:00:03.0: GetStatus roothub.portstatus [1] = 0x00100303 PRSC LSDA PPS PES CCS usb 2-2: new low speed USB device using ohci_hcd and address 4 ohci_hcd 0000:00:03.0: GetStatus roothub.portstatus [1] = 0x00100303 PRSC LSDA PPS PES CCS usb 2-2: skipped 1 descriptor after interface usb 2-2: default language 0x0409 usb 2-2: new device strings: Mfr=1, Product=2, SerialNumber=3 usb 2-2: Product: multI/O Box usb 2-2: Manufacturer: mamalala.de usb 2-2: SerialNumber: Verrsion 0.01 usb 2-2: hotplug usb 2-2: configuration #1 chosen from 2 choices usb 2-2: adding 2-2:1.0 (config #1, interface 0) usbhid 2-2:1.0: usb_probe_interface usbhid 2-2:1.0: usb_probe_interface - got id input: USB HID v1.00 Multi-Axis Controller [mamalala.de multI/O Box] on usb-0000:00:03.0-2 usb 2-2:1.0: hotplug hub 2-0:1.0: state 5 ports 2 chg 0000 evt 0004
then, i had to do a chmod 666 /dev/input/event*. using lsevent:
./lsevent Compiled with EV_VERSION 0x10000 Nothing on /dev/input/event0. Nothing on /dev/input/event1. Nothing on /dev/input/event2. Nothing on /dev/input/event3. Nothing on /dev/input/event4. Nothing on /dev/input/event5. Nothing on /dev/input/event6. Nothing on /dev/input/event7.
a question: does your object need libusb?
is this normal: cat /dev/input/event0 cat: /dev/input/event0: No such device
thank you hans! pat
Hi all,
don't know if this has been discussed already (found nothing in the archives), but the devices of /dev/input/eventN are always set to root:root (owner:group), so for using it i have to change it manually every time to f.e. root:audio to access it. I think one could create a symlink whose permissions are permanent, but [hid] seems to be hard-coded to /dev/input/eventN.
Any ideas? Perhaps a way to tell [hid] which file in the /dev tree to use?
regards,
Peter P.
On Jun 12, 2005, at 2:51 PM, Peter Plessas wrote:
Hi all,
don't know if this has been discussed already (found nothing in the
archives), but the devices of /dev/input/eventN are always set to
root:root (owner:group), so for using it i have to change it manually
every time to f.e. root:audio to access it. I think one could create a symlink whose permissions are permanent,
but [hid] seems to be hard-coded to /dev/input/eventN.
Or you could add yourself to the "root" group. The permissions of the
symlink will not replace the permissions of the actual device,
otherwise this would be a massive security hole, e.g. if you can't
access a file, just symlink to it with permissions that you want.
Any ideas? Perhaps a way to tell [hid] which file in the /dev tree to use?
The evdev module which drives the input events is also hard-coded to
/dev/input/eventX and the [hid] object only talks to those device
types, not jsX, mouseX, etc. devices. So it doesn't make a lot of
sense to me to have a run-time option to change this. You can always
change the device path in the source code and recompile it, you'd have
to do the same with the evdev module.
.hc
"If nature has made any one thing less susceptible than all others of
exclusive property, it is the action of the thinking power called an
idea, which an individual may exclusively possess as long as he keeps
it to himself; but the moment it is divulged, it forces itself into the
possession of everyone, and the receiver cannot dispossess himself of
it."
Hallo Peter, Peter Plessas hat gesagt: // Peter Plessas wrote:
don't know if this has been discussed already (found nothing in the archives), but the devices of /dev/input/eventN are always set to root:root (owner:group), so for using it i have to change it manually every time to f.e. root:audio to access it.
That's strange: They don't reset permissions here. I suspect you are using some automatically generated /dev-filesystem then, like udev. I'm still using "hard" devices. But also udev should be able to give devices certain permissinons. I think, it's supposed to save the last permissions on reboot, but maybe you are running something else than udev?
Frank Barknecht _ ______footils.org__
_ __latest track: "scans" _ http://footils.org/cms/show/41
Hi,
just for the record:
I also got a crashing [hid] which, after being sent a "print" msg, segfaults like this:
regards, Peter
[hid] 0.6, written by Hans-Christoph Steiner hans@eds.org [hid] opened device 0 (/dev/input/event0): Macintosh mouse button emulation
Device 0: 'Macintosh mouse button emulation' on '/dev/input/event0' Device 1: 'ADB keyboard' on '/dev/input/event1' Device 2: 'ADB Powerbook buttons' on '/dev/input/event2' Device 3: 'ADB mouse' on '/dev/input/event3' Device 4: 'PowerMac Beep' on '/dev/input/event4' Device 5: 'Logitech USB-PS/2 Optical Mouse' on '/dev/input/event5' Device 6: 'Mega World USB Game Controllers' on '/dev/input/event6'
Supported events:
syn syn_report Synchronization syn syn_config Synchronization socket receive error: Connection reset by peer (104)
More troubles with the mystery synchronization events... suddenly in
the 2.6 kernel, devices started having these. Yes the 2.6 kernel only
defines two... strange.
Can you use your device with hid-0.6? Is it only the [print( message
that causes the crash?
.hc
On Jun 13, 2005, at 6:39 PM, Peter Plessas wrote:
Hi,
just for the record:
I also got a crashing [hid] which, after being sent a "print" msg,
segfaults like this:regards, Peter
[hid] 0.6, written by Hans-Christoph Steiner hans@eds.org [hid] opened device 0 (/dev/input/event0): Macintosh mouse button
emulationDevice 0: 'Macintosh mouse button emulation' on '/dev/input/event0' Device 1: 'ADB keyboard' on '/dev/input/event1' Device 2: 'ADB Powerbook buttons' on '/dev/input/event2' Device 3: 'ADB mouse' on '/dev/input/event3' Device 4: 'PowerMac Beep' on '/dev/input/event4' Device 5: 'Logitech USB-PS/2 Optical Mouse' on '/dev/input/event5' Device 6: 'Mega World USB Game Controllers' on '/dev/input/event6'
Supported events:
TYPE CODE EVENT NAME
syn syn_report Synchronization syn syn_config Synchronization socket receive error: Connection reset by peer (104)
PD-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list
"The arc of history bends towards justice."
- Dr.
Martin Luther King, Jr.
Hi Frank/List,
Well looks like it's my devfs that resets the permission of the /dev/input tree... So i'll change it manually every time until i found sth. better!
(or is there any hint from some devfs-experieced people?)
thanks, Peter
Frank Barknecht wrote:
Hallo Peter, Peter Plessas hat gesagt: // Peter Plessas wrote:
don't know if this has been discussed already (found nothing in the archives), but the devices of /dev/input/eventN are always set to root:root (owner:group), so for using it i have to change it manually every time to f.e. root:audio to access it.
That's strange: They don't reset permissions here. I suspect you are using some automatically generated /dev-filesystem then, like udev. I'm still using "hard" devices. But also udev should be able to give devices certain permissinons. I think, it's supposed to save the last permissions on reboot, but maybe you are running something else than udev?
Ciao
Hallo, Peter Plessas hat gesagt: // Peter Plessas wrote:
Well looks like it's my devfs that resets the permission of the /dev/input tree... So i'll change it manually every time until i found sth. better!
(or is there any hint from some devfs-experieced people?)
devfs is obsoleted by the newer "udev" at least in 2.6 kernels. Personally I haven't found a reason to say goodby to static device files yet.
More on udev here: http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html
Frank Barknecht _ ______footils.org__
_ __latest track: "scans" _ http://footils.org/cms/show/41
If the ownership is root.root, then add your account to the root group,
and you won't have to mess with permissions anymore.
As for devfs/udev, I still use static files as well. I'll switch to
udev once Debian does the switch for me :).
.hc
On Jun 15, 2005, at 10:27 AM, Peter Plessas wrote:
Hi Frank/List,
Well looks like it's my devfs that resets the permission of the
/dev/input tree... So i'll change it manually every time until i found sth. better!(or is there any hint from some devfs-experieced people?)
thanks, Peter
Frank Barknecht wrote:
Hallo Peter, Peter Plessas hat gesagt: // Peter Plessas wrote:
don't know if this has been discussed already (found nothing in the
archives), but the devices of /dev/input/eventN are always set to
root:root (owner:group), so for using it i have to change it
manually every time to f.e. root:audio to access it.That's strange: They don't reset permissions here. I suspect you are using some automatically generated /dev-filesystem then, like udev. I'm still using "hard" devices. But also udev should be able to give devices certain permissinons. I think, it's supposed to save the last permissions on reboot, but maybe you are running something else than udev? Ciao
PD-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list
"The arc of history bends towards justice."
- Dr.
Martin Luther King, Jr.
sorry, my fault it's working now. i had to compile the kernel with -> Input device support -> Event interface
pat
On Jun 12, 2005, at 2:25 PM, patrick wrote:
hi hans,
i'm trying your new hid to make it work with the multio of christian klippel. here's what i get when i plug the iobox in my computer
(gentoo, 2.6.12)ohci_hcd 0000:00:03.0: GetStatus roothub.portstatus [1] = 0x00100303 PRSC LSDA PPS PES CCS usb 2-2: new low speed USB device using ohci_hcd and address 4 ohci_hcd 0000:00:03.0: GetStatus roothub.portstatus [1] = 0x00100303 PRSC LSDA PPS PES CCS usb 2-2: skipped 1 descriptor after interface usb 2-2: default language 0x0409 usb 2-2: new device strings: Mfr=1, Product=2, SerialNumber=3 usb 2-2: Product: multI/O Box usb 2-2: Manufacturer: mamalala.de usb 2-2: SerialNumber: Verrsion 0.01 usb 2-2: hotplug usb 2-2: configuration #1 chosen from 2 choices usb 2-2: adding 2-2:1.0 (config #1, interface 0) usbhid 2-2:1.0: usb_probe_interface usbhid 2-2:1.0: usb_probe_interface - got id input: USB HID v1.00 Multi-Axis Controller [mamalala.de multI/O Box] on usb-0000:00:03.0-2 usb 2-2:1.0: hotplug hub 2-0:1.0: state 5 ports 2 chg 0000 evt 0004
then, i had to do a chmod 666 /dev/input/event*. using lsevent:
./lsevent Compiled with EV_VERSION 0x10000 Nothing on /dev/input/event0. Nothing on /dev/input/event1. Nothing on /dev/input/event2. Nothing on /dev/input/event3. Nothing on /dev/input/event4. Nothing on /dev/input/event5. Nothing on /dev/input/event6. Nothing on /dev/input/event7.
Looks like nothing was registered to the input event devices. Do you
have the evdev module loaded?
a question: does your object need libusb?
No, it doesn't use libusb at all.
is this normal: cat /dev/input/event0 cat: /dev/input/event0: No such device
This means that there is no device found. I don't know the details of
using the multI/O yet, but I ordered one and will be assembling it
soon. Then I can make sure it works well with [hid].
.hc
_
Using ReBirth is like trying to play an 808 with a long stick.
-David Zicarelli
On Jun 12, 2005, at 12:38 PM, august wrote:
Ok, so I am finally releasing a new version of [hid] and company. There has been quite a bit added, so hopefully it was worth the wait.
- added placeholder names in event types/codes to prevent segfaults
when devices have mis-labeled elements
this seems to have fixed a lot of the problems I was having.
best -august.
Good, good.
Could you do me a favor and send me the Pd console output after running
this:
[open DEVICE#( then [print(
I'd like to see how the elements of your device are mapped.
.hc
As we enjoy great advantages from inventions of others, we should be
glad of an opportunity to serve others by any invention of ours; and
this we should do freely and generously.
- Benjamin Franklin
Could you do me a favor and send me the Pd console output after running this:
[open DEVICE#( then [print(
here goes:
[hid] opened device 2 (/dev/input/event2): aug.ment.org *** el lechero
Device 2: 'aug.ment.org *** el lechero' on '/dev/input/event2'
Supported events:
syn syn_report Synchronization syn ? Synchronization syn ? Synchronization
abs abs_x Absolute Axis abs abs_y Absolute Axis abs abs_z Absolute Axis abs abs_rx Absolute Axis abs abs_ry Absolute Axis abs abs_rz Absolute Axis abs abs_hat0x Absolute Axis abs abs_hat0y Absolute Axis abs abs_hat1x Absolute Axis abs abs_hat1y Absolute Axis abs abs_hat2x Absolute Axis abs abs_hat2y Absolute Axis abs abs_hat3x Absolute Axis
msc msc_scan Miscellaneous
Detected: 3 Sync types 13 Absolute Axis types 1 Misc types