{"id":15938831,"url":"https://github.com/ticky/omnishock","last_synced_at":"2025-10-19T02:30:30.420Z","repository":{"id":15310871,"uuid":"77875467","full_name":"ticky/omnishock","owner":"ticky","description":"🎮 Something to do with game controllers!","archived":false,"fork":false,"pushed_at":"2022-03-11T06:20:47.000Z","size":294,"stargazers_count":5,"open_issues_count":3,"forks_count":1,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2025-01-29T08:03:47.419Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ticky.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-01-03T01:59:43.000Z","updated_at":"2024-06-14T03:21:31.000Z","dependencies_parsed_at":"2022-08-07T08:01:03.047Z","dependency_job_id":null,"html_url":"https://github.com/ticky/omnishock","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ticky%2Fomnishock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ticky%2Fomnishock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ticky%2Fomnishock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ticky%2Fomnishock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ticky","download_url":"https://codeload.github.com/ticky/omnishock/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237049883,"owners_count":19246940,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-07T05:42:23.634Z","updated_at":"2025-10-19T02:30:29.924Z","avatar_url":"https://github.com/ticky.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🎮 Omnishock\n\n[![Travis CI Build Status](https://travis-ci.org/ticky/omnishock.svg?branch=develop)](https://travis-ci.org/ticky/omnishock) [![Appveyor Build status](https://ci.appveyor.com/api/projects/status/9m0lyp0wy8djud7t/branch/develop?svg=true)](https://ci.appveyor.com/project/ticky/omnishock/branch/develop)\n\nSomething to do with game controllers!\n\n## Supported Hardware\n\nOmnishock currently supports communicating with a [Teensy 2.0](https://www.pjrc.com/store/teensy.html), running either:\n\n- **Aaron Clovsky's [`teensy-firmware` for PS2 Bluetooth Adapter](http://psx-scene.com/forums/f19/how-build-your-own-ps2-bluetooth-adapter-use-real-ps3-ps4-controllers-wirelessly-your-ps2-127728/)**  \n  Supports analog button inputs and force feedback. Source available under GPL2 or later.\n- **Johnny Chung Lee's [Teensy PS2 Controller Sim Firmware](https://procrastineering.blogspot.com/2010/12/simulated-ps2-controller-for.html)**  \n  Fast \u0026 simple. Omnishock has been tested with v2. Source is public but unlicensed.\n\nSupport for more hardware, and more firmware variants, is planned for the future.\n\n## Prerequisites\n\n- [Rust](https://www.rust-lang.org/install.html)\n- SDL2 (v2.0.9 or later)\n- Controller emulator hardware (see above)\n\n### Mac-specific\n\nSDL2 has broad support for many types of USB and Bluetooth gamepads on macOS, however, for Xbox 360 controllers, and for better support for Xbox One controllers, you will likely want [the 360Controller driver](https://github.com/360Controller/360Controller).\n\n### Linux-specific\n\nThe version of sdl2 currently in the Debian package library is quite old (it's version 2.0.5 as of writing), so if you have trouble using certain gamepads (like the Xbox Wireless Controller, for instance), you will need to [build sdl from source](https://wiki.libsdl.org/Installation#Linux.2FUnix).\n\nYou'll likely need either permissive `udev` rules for your USB gamepads, or to make sure your user is in the `input` group. You can add your user account to the `input` group with the command `sudo usermod --append --groups input $(whoami)`.\n\nFor more information specific to setting up gamepads on Linux, I recommend checking out [this article on the Arch Wiki](https://wiki.archlinux.org/index.php/Gamepad).\n\n## Building\n\n- `git clone --recurse-submodules https://github.com/ticky/omnishock.git omnishock \u0026\u0026 cd omnishock`\n- `cargo build --release`\n\n## Running\n\n`cargo run --release`\n\n## Releasing\n\n1. Make sure both `.travis.tml` and `appveyor.yml` are specifying the same Rust versions\n2. Ensure that both files' deploy conditions are using that Rust version\n3. Tag \u0026 sign a version with `git tag -a -s [version]`\n4. Push the tag to GitHub, and watch Travis and AppVeyor cut a build\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fticky%2Fomnishock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fticky%2Fomnishock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fticky%2Fomnishock/lists"}