Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Jun 2008 08:10:15 +0100 (BST)
From:      Iain Hibbert <plunky@rya-online.net>
To:        Kevin Downey <redchin@gmail.com>
Cc:        freebsd-bluetooth@freebsd.org
Subject:   Re: playstation 3 remote
Message-ID:  <1214118615.285768.10981.nullmailer@galant.ukfsn.org>
In-Reply-To: <1d3ed48c0806212008y41e99897pb3490c60d0da73f7@mail.gmail.com>
References:  <1d3ed48c0806192023w42f30a04i5b7bab5598005ac@mail.gmail.com>  <bb4a86c70806201333s4f13516bxd4781330ed791254@mail.gmail.com>  <1d3ed48c0806210015m2fb9bc6n8202e91d1a140e41@mail.gmail.com>  <1214075074.941115.1335.nullmailer@galant.ukfsn.org> <1d3ed48c0806212008y41e99897pb3490c60d0da73f7@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 21 Jun 2008, Kevin Downey wrote:

> On Sat, Jun 21, 2008 at 12:04 PM, Iain Hibbert <plunky@rya-online.net> wrote:
> ...
> >
> > perhaps it does not wish to keep the link up if it is not being used, and
> > does not require pairing for what you have done so far.
> >
> > Unless you set the Auth Enable (with hccontrol) your controller will not
> > request pairing.
> >
> > try
> >
> > % bthidcontrol -a remote query
> >
> > and
> >
> > % bthidcontrol -a remote dump
> >
> > to see what the HID profile gives us?
>
> I don't see a Auth Enable command in the hccontrol manpage.

Read_Authentication_Enable and Write_Authentication_Enable

and they are the master switch that makes your controller require
authentication for all connections (this is not always useful)

> % bthidcontrol -a remote query
> device {
>        bdaddr                  00:1e:3d:17:e6:c2;
>        control_psm             0x11;
>        interrupt_psm           0x13;
>        reconnect_initiate      true;
>        battery_power           true;
>        normally_connectable    false;
>        hid_descriptor          {
>                0x05 0x01 0x09 0x05 0xa1 0x01 0x85 0x01
>                0x15 0x00 0x26 0xff 0x00 0x75 0x08 0x95
>                0x0b 0x06 0x00 0xff 0x09 0x01 0x81 0x00
>                0x85 0x01 0x95 0x0b 0x09 0x01 0xb1 0x00
>                0x85 0x02 0x95 0x0b 0x09 0x01 0xb1 0x00
>                0x85 0x03 0x95 0x0b 0x09 0x01 0xb1 0x00
>                0x85 0x04 0x95 0x0b 0x09 0x01 0xb1 0x00
>                0x85 0x05 0x95 0x0b 0x09 0x01 0xb1 0x00
>                0x85 0x06 0x95 0x0b 0x09 0x01 0xb1 0x00
>                0xc0
>        };
> }

this entry would go into your bthidd.conf file

> % bthidcontrol -a remote dump
> Input   id=1 size=8 count=11 page=Microsoft usage=0x0001, logical range 0..255
> Feature id=1 size=8 count=11 page=Microsoft usage=0x0001, logical range 0..255
> Feature id=2 size=8 count=11 page=Microsoft usage=0x0001, logical range 0..255
> Feature id=3 size=8 count=11 page=Microsoft usage=0x0001, logical range 0..255
> Feature id=4 size=8 count=11 page=Microsoft usage=0x0001, logical range 0..255
> Feature id=5 size=8 count=11 page=Microsoft usage=0x0001, logical range 0..255
> Feature id=6 size=8 count=11 page=Microsoft usage=0x0001, logical range 0..255
> Collection page=Generic_Desktop usage=Game_Pad

though as you can see, the remote control (strangely, for something
produced by Sony) is providing only "Microsoft" usage page inputs and so
far as I know, bthidd will not be able to understand this stuff as-is. You
might look around to see if any specification for these are publicly
available.

what is it you hope to do with this remote control?  I suppose that bthidd
could be modified to translate button pushes into key or X events, but I'm
not sure if there is a standard way to do this kind of thing in unix?

My apple keyboard at least has some volume controls and an eject button
but I've never looked at how to get them to do anything. I suspect there
ought to be a global source point for these, because a keyboard event
would only be delivered to the window with focus. (hotkeys presumably
bypass this somehow)

iain



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1214118615.285768.10981.nullmailer>