Multiple sixaxis emulators

It’s working!

As you can see in the following screenshot, I am able to launch two emu processes that communicate with my PS3, each one using a different bluetooth adapter. I then can connect an emuclient process to one of them.

The next task is to connect the same emuclient to both emu processes, so that each emu process can send commands to the PS3 at the same time.

This will need some more work, as the SDL 1.2 library (that is used to get events from input devices) is not supporting multiple mice and multiple keyboards. It supports multiple game devices though (joysticks, wheels, gamepads…).


It’s not working for the following stuff:

– connect to a PS3 that already has a real sixaxis connected
– connect a real sixaxis after a sixaxis emulator and change the controller id

4 Replies to “Multiple sixaxis emulators”

  1. Niice! 🙂
    Would this work on a usb hub?
    It would be great to have a dongle for a sixaxis, keyboard, and mic, simultaneously to be able to chat/msg from the same devices on your computer.

  2. I'm not sure I understand the question.

    Actually, I have one bt dongle connected to a standard hub, and another one connected to two chained usb hubs. These two chained usb hubs are 5m active usb cables (usb hubs are acting as repeaters), that allow me to have a bt dongle very close to my PS3. My system is very unusual I think: I'm playing from my desktop lcd display, thanks to two hdmi switches and a 10m hdmi cable. There are a lot of cables running through my living room x)

    All of that to say that usb hub are generic.

    The emuclient keeps the mouse until it stops.
    => stop the emuclient, chat, msg, do whatever you want, and then restart the emuclient.

  3. Hello Matlo,

    When you speak of emu process and emuclient, is emu the nickname of the project or something else?

    If someone wanted to make their own client program, does it have to be the same programming language as the emu process?

    For example can a person write the client in python and use the emu process for the connection?

  4. Hi Joe,

    Emu stands for emulator, it's only the name of the process that connects to the PS3. That name was given by Jim Paris, and I didn't changed it.

    It's possible to write clients in other programming languages such as Python.

Leave a Reply

Your email address will not be published. Required fields are marked *