Get the current version here.
http://www.eventghost.org/forum/viewtop ... 0&start=48
Modified HID Plugins for use with new PS3 Bluetooth Remote
Can be use as very good RF (bluetooth) and cheap (25 USD) universal remote
Modified plugin is attached.
It's my first work in Python and I download EventGhost just 3 days ago,
so, be comprehensive for eventual errors.
I'm french, sorry for may bad english.
HID PS3 Bluetooth Remote
Tested succesfully working with Bluetooth Software :
WIDCOMM Bluetooth Software 22.214.171.1240
126.96.36.1990 is not the last version.
it's the most versatile version works with most of Bluetooth adapter
in a patched version. see http://forum.gsmhosting.com/vbb/forumdisplay.php?f=237
to help about patched WIDCOMM Bluetooth Software 188.8.131.520
(Restart PC, Right click on bluetooth icon in task bar and stop/start bluetooth device can help)
On remote, to activate discoverable mode, press simultaneously "start+enter".
On PC choose "Next (no code)"
Check in "Device Manager" / "Human Interface Devices"
PS3 Remote should appears as "HID-compliant game controller"
If not, if it's appears as "HID Keyboard Device" in "Keyboards"
Delete it, Right click on bluetooth icon in task bar and
stop/start bluetooth device to force new device detection.
This time should appears as "HID-compliant game controller"
2) HID PLUGIN
This plugin generate:
- ENDURING events named like "HID.Eject"
and lot of additional NORMAL events for:
- short click on remote, events name end with ".S" eg. "HID.Eject.S"
- long click on remote, events name end with ".L"
- double click on remote, events name end with ".D"
- mixte (double click with second one long), events name end with ".M"
and special selectable or not events:
- "Sleep" when remote is not used
- "Hibernate" when remote is not use during a long time
- "WakeUp" for first event after "Sleep" or "Hibernate"
- "Zone.X" where X is relative to Zone Key in Remote (see Remote paper manual)
event generated when a new key is pressed in another zone.
each remote key belong of on zone except one, the key with strange
symbol below the directional pad. this is by design.
- "Release" can be generated for each relase of each key.
Of course all these additional events are not needed,
it's possible to do the same thing by EventGhost configuration
but it's far more simple to have these events available
ready to use, than play with timer inside EventGhost.
This remote can generate events when 2 keys are pressed simultaneously.
In this case the event code genered is an hexadecimal value.
Note: some keys combination generate the same event.
This is a Remote issue.
- (15.35 KiB) Downloaded 2079 times
what do you think?
Is it possible to use functions of one plugin in another one?
from pluginImport.HID.Functions import Foo
I've included the plugin as PS3 in the latest beta. I've also added Bartman's code to disable ok and apply button if no HID device is found (otherwise the panel would crash) and made the source compatible with the latest beta core.
The SVN problem wonders me. Today at least half of my new line should have been unused and this is at least 3 times more bandwidth as I had in the beginning.
I'm glad to see you are interested by my modification for PS3 remote with EventGhost.
I join my EventGhost configuration file as example.
I use it every days without problem. My config is Windows XP x64 so it's one of the rare solution works perfectly on x64 OS
- (74.74 KiB) Downloaded 1038 times
Is there no one that can extend this to control the PS3 from eventghost? I honestly believe it would be a hit. I mean just imagine, controlling the PS3 via the desktop remote plugin, an IR remote or even the web plugin.
But now (in two weeks) I need to change the battery in remote to make it work again.
Does anybody know anything about expected battery life of this remote when used as HID device?
I used DURACELL battery, the same as I used fro BT mouse that can run on them for 3 month.
From what I can tell the device is always connected to BT stack even when Remote goes to hibernate. May be some special handling should be added to HID driver for hibernate events?
I will try using the Remote with WIDCOMM stack (184.108.40.20600) to see if this will prolong the battery life of this remote. I don't expect it to work differently.
Will keep you updated in two weeks.
Guys, What are the battery life in your remote when connected to computer all the time?
Anyway, My remotes battery life was shortened greatly when it was connected. nice plug in if it didn't kill my remote so fast.
In fact I didn't know normal life for battery for this remote is greater than two week because I buy this remote for this use only (I don't have PS3)
I have no idea what to do to trigger some energy saving in remote. When the remote is used with the PS3 only what is the battery life ?
In fact I use Rechargeable battery and I exchange battery every 15 days. Because I mainly use rechargeable battery It's not a big issue for me. I use low self disharge battery, sanyo eneloop.
I believe in Windows the HCI driver should manage this. But in this case the generic driver can't handle this.
So I made an experiment without EventGhost running.
1. Insert battery in Remote and press any button, the Bluetooth USB started to blink, and status for device changed to connected.
2. Wait for some time, Changed the link mode to SNIFF using WIDCOMM API CBtIf::SetSniffMode(btaddress);
3. After some time the status changed to Not connected and the led stop blinking on USB (This say that device went to power save mode.
4. Press any button on remote, status changed to Connected and Bluetooth USB blinking. The remote is not power save mode.
5. Call CBtIf::CancelSniffMode(btaddress);
6. All operates normaly, and we can start again from 2.
NB it does not work this way when EventGhost is running and connced to HID using existing plugin!
So I can't really suggest how to do this in this participial implementation, may be change HID driver may be call HID API function when Hibernate even arrives from remote......
I will stat using LIRC Linux on NSLU2 and will how long it will rung before I will run out of batteries.
"the link should be switched to SNIFF mode to preserve the power"
"WIDCOMM API CBtIf::SetSniffMode(btaddress);"
"HID driver may be call HID API function when ..."
I don't know how to do this. If someone know please post here.
Hibernate don't come from remote, idem for sleep. it's simulated event from plugin