Does qnx support HID device other than keyboard or mice?

bridged with qdn.public.ddk.usb
Post Reply
sonic

Does qnx support HID device other than keyboard or mice?

Post by sonic » Thu Dec 26, 2002 5:59 pm

I have a usb joystick work fine in Windows. But in QNX, I even cannot get
the descriptor of it by using the command usb -vvv.

Look forward to any reply. Thank you

Toshio KATAYAMA

Re: Does qnx support HID device other than keyboard or mice?

Post by Toshio KATAYAMA » Sat Dec 28, 2002 7:52 am

"sonic" <sonic@sonicteam.co.jp> wrote in message news:aufff1$48p$1@inn.qnx.com...
I have a usb joystick work fine in Windows. But in QNX, I even cannot get
the descriptor of it by using the command usb -vvv.

Look forward to any reply. Thank you
Hello, sonic.

I also have a couple of game controllers that are not recognized on QNX but Windows(CY7C63001A used in them). I don't know exactly
why, however I suspect that this problem is caused by the usb stack issue on 6.2 posted by David Raimond at 2002/10/02 in this news
group.

Regards,
---- Toshio KATAYAMA

sonic

Re: Does qnx support HID device other than keyboard or mice?

Post by sonic » Sat Dec 28, 2002 10:23 am

Thank you for your answer.
I have another question, suppose qnx get the descriptor of the controller.
Where can I find the related information of developing the driver for a
joystick. (There is source code of mouse driver, but it is difficult for me
to follow). Thank you.
"Toshio KATAYAMA" <cae@jcom.home.ne.jp> $B@qUm1wM97o?7J9(B
:aujkk2$jjf$1@inn.qnx.com...
"sonic" <sonic@sonicteam.co.jp> wrote in message
news:aufff1$48p$1@inn.qnx.com...
I have a usb joystick work fine in Windows. But in QNX, I even cannot
get
the descriptor of it by using the command usb -vvv.

Look forward to any reply. Thank you


Hello, sonic.

I also have a couple of game controllers that are not recognized on QNX
but Windows(CY7C63001A used in them). I don't know exactly
why, however I suspect that this problem is caused by the usb stack issue
on 6.2 posted by David Raimond at 2002/10/02 in this news
group.

Regards,
---- Toshio KATAYAMA

Toshio KATAYAMA

Re: Does qnx support HID device other than keyboard or mice?

Post by Toshio KATAYAMA » Sat Dec 28, 2002 1:17 pm

Hello again, sonic.

Mice and game controllers are basically so identical as USB devices that it is not difficult to get raw data from controllers ad
hoc. In my case, only the packet size of interrupt transfer endpoint and the interface protocol code were different between them, so
I modified the sample mouse driver code and made a dedicated driver(resource manager) for my game controller which was recognized on
QNX.

I don't remember clearly what I did, but you may want to take a look into ...
1) definition of 'mouse_report_t' in 'mouse.h'
2) 'mouse_process(...)' in 'mouse.c'(no need to process received data)
3) 'mouse_parse_descriptors(...)' in 'mouse.c'(check protocol code)
4) 'mouse_start_driver(...)' in 'mouse.c'("usbmouse" -> "usbpad" or so)
5) line 358 in 'mouse.c'(change buffer size and record size if needed. The record size is equal to sizeof(mouse_report_t))

You won't have to add lines but just modify them. Once '/dev/usbpad0' appear successfully after the controller plugged in, you will
able to get raw data stored in the ring buffer by 'open()' and 'read()'.

"Getting Started with QNX Neutrino 2", by Rob Krten would be a good referece if you want to dig deeper.

Cheers,
---- Toshio KATAYAMA


"sonic" <sonic@sonicteam.co.jp> wrote in message news:aujtgs$sr8$1@inn.qnx.com...
Thank you for your answer.
I have another question, suppose qnx get the descriptor of the controller.
Where can I find the related information of developing the driver for a
joystick. (There is source code of mouse driver, but it is difficult for me
to follow). Thank you.
"Toshio KATAYAMA" <cae@jcom.home.ne.jp> $B@qUm1wM97o?7J9(B
:aujkk2$jjf$1@inn.qnx.com...
"sonic" <sonic@sonicteam.co.jp> wrote in message
news:aufff1$48p$1@inn.qnx.com...
I have a usb joystick work fine in Windows. But in QNX, I even cannot
get
the descriptor of it by using the command usb -vvv.

Look forward to any reply. Thank you


Hello, sonic.

I also have a couple of game controllers that are not recognized on QNX
but Windows(CY7C63001A used in them). I don't know exactly
why, however I suspect that this problem is caused by the usb stack issue
on 6.2 posted by David Raimond at 2002/10/02 in this news
group.

Regards,
---- Toshio KATAYAMA


sonic

Re: Does qnx support HID device other than keyboard or mice?

Post by sonic » Sat Dec 28, 2002 4:50 pm

Thank you very much for your advice!
"Toshio KATAYAMA" <cae@jcom.home.ne.jp> $B@qUm1wM97o?7J9(B
:auk7lp$9h6$1@inn.qnx.com...
Hello again, sonic.

Mice and game controllers are basically so identical as USB devices that
it is not difficult to get raw data from controllers ad
hoc. In my case, only the packet size of interrupt transfer endpoint and
the interface protocol code were different between them, so
I modified the sample mouse driver code and made a dedicated
driver(resource manager) for my game controller which was recognized on
QNX.

I don't remember clearly what I did, but you may want to take a look into
....
1) definition of 'mouse_report_t' in 'mouse.h'
2) 'mouse_process(...)' in 'mouse.c'(no need to process received data)
3) 'mouse_parse_descriptors(...)' in 'mouse.c'(check protocol code)
4) 'mouse_start_driver(...)' in 'mouse.c'("usbmouse" -> "usbpad" or so)
5) line 358 in 'mouse.c'(change buffer size and record size if needed. The
record size is equal to sizeof(mouse_report_t))

You won't have to add lines but just modify them. Once '/dev/usbpad0'
appear successfully after the controller plugged in, you will
able to get raw data stored in the ring buffer by 'open()' and 'read()'.

"Getting Started with QNX Neutrino 2", by Rob Krten would be a good
referece if you want to dig deeper.

Cheers,
---- Toshio KATAYAMA


"sonic" <sonic@sonicteam.co.jp> wrote in message
news:aujtgs$sr8$1@inn.qnx.com...
Thank you for your answer.
I have another question, suppose qnx get the descriptor of the
controller.
Where can I find the related information of developing the driver for a
joystick. (There is source code of mouse driver, but it is difficult for
me
to follow). Thank you.
"Toshio KATAYAMA" <cae@jcom.home.ne.jp> $B@qUm1wM97o?7J9(B
:aujkk2$jjf$1@inn.qnx.com...
"sonic" <sonic@sonicteam.co.jp> wrote in message
news:aufff1$48p$1@inn.qnx.com...
I have a usb joystick work fine in Windows. But in QNX, I even canno
t
get
the descriptor of it by using the command usb -vvv.

Look forward to any reply. Thank you


Hello, sonic.

I also have a couple of game controllers that are not recognized on
QNX
but Windows(CY7C63001A used in them). I don't know exactly
why, however I suspect that this problem is caused by the usb stack
issue
on 6.2 posted by David Raimond at 2002/10/02 in this news
group.

Regards,
---- Toshio KATAYAMA



sonic

Re: Does qnx support HID device other than keyboard or mice?

Post by sonic » Sun Dec 29, 2002 9:57 am

I can get the raw data from my controller now. Thank you very much.
"sonic" <sonic@sonicteam.co.jp> ¼¶¼g©ó¶l¥ó·s»D:aukk64$m32$1@inn.qnx.com...
Thank you very much for your advice!
"Toshio KATAYAMA" <cae@jcom.home.ne.jp> $B@qUm1wM97o?7J9(B
:auk7lp$9h6$1@inn.qnx.com...
Hello again, sonic.

Mice and game controllers are basically so identical as USB devices that
it is not difficult to get raw data from controllers ad
hoc. In my case, only the packet size of interrupt transfer endpoint and
the interface protocol code were different between them, so
I modified the sample mouse driver code and made a dedicated
driver(resource manager) for my game controller which was recognized on
QNX.

I don't remember clearly what I did, but you may want to take a look
into
...
1) definition of 'mouse_report_t' in 'mouse.h'
2) 'mouse_process(...)' in 'mouse.c'(no need to process received data)
3) 'mouse_parse_descriptors(...)' in 'mouse.c'(check protocol code)
4) 'mouse_start_driver(...)' in 'mouse.c'("usbmouse" -> "usbpad" or so)
5) line 358 in 'mouse.c'(change buffer size and record size if needed.
The
record size is equal to sizeof(mouse_report_t))

You won't have to add lines but just modify them. Once '/dev/usbpad0'
appear successfully after the controller plugged in, you will
able to get raw data stored in the ring buffer by 'open()' and 'read()'.

"Getting Started with QNX Neutrino 2", by Rob Krten would be a good
referece if you want to dig deeper.

Cheers,
---- Toshio KATAYAMA


"sonic" <sonic@sonicteam.co.jp> wrote in message
news:aujtgs$sr8$1@inn.qnx.com...
Thank you for your answer.
I have another question, suppose qnx get the descriptor of the
controller.
Where can I find the related information of developing the driver for
a
joystick. (There is source code of mouse driver, but it is difficult
for
me
to follow). Thank you.
"Toshio KATAYAMA" <cae@jcom.home.ne.jp> $B@qUm1wM97o?7J9(B
:aujkk2$jjf$1@inn.qnx.com...
"sonic" <sonic@sonicteam.co.jp> wrote in message
news:aufff1$48p$1@inn.qnx.com...
I have a usb joystick work fine in Windows. But in QNX, I even
canno
t
get
the descriptor of it by using the command usb -vvv.

Look forward to any reply. Thank you


Hello, sonic.

I also have a couple of game controllers that are not recognized on
QNX
but Windows(CY7C63001A used in them). I don't know exactly
why, however I suspect that this problem is caused by the usb stack
issue
on 6.2 posted by David Raimond at 2002/10/02 in this news
group.

Regards,
---- Toshio KATAYAMA





Post Reply

Return to “qdn.public.ddk.usb”