SII-Public-Research / pscontroller-rs

Rust driver for the Sony PlayStation controllers using embedded-hal

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PlayStation Controller (PAD) Driver for Rust Embedded

This project aims to support all controller devices for the PlayStation 1 or 2 consoles via an SPI port on any platform which support's Rust's embedded-hal abstraction layer. The main system this library is tested on is a Raspberry Pi 3.

So far quite a few devices are supported! Here's the current list:

*=Most PlayStation games can assume the type of controller which is plugged in, but there are only 16 possible identifiers that can be used. In pracice there is overlap and old devices do not contain advanced polling respones so the devices marked above need to be manually requested.

This project is immediately usable today, but work needs to be done to increase error detection and allow better of un-detectable controllers. There are examples to go on to learn how to use this library and you can use the research folder's documents to discover some secrets of the PlayStation controllers you might own, though the bibliography below is also a good jumping-off point.

If you want to contribute new controller info or are having trouble wiring up your devices, open an issue and we can help you out.

Bibliography

About

Rust driver for the Sony PlayStation controllers using embedded-hal

License:Apache License 2.0


Languages

Language:Rust 100.0%