Git Product home page Git Product logo

rust-wooting-sdk's Introduction

rust-wooting-sdk

This crate provides Rust bindings to the Analog and RGB SDKs provided by Wooting for the Wooting One and Wooting Two.

See the documentation for more information on usage and prerequisites.

Known issues

This repository currently uses a fork of the Wooting SDKs that allow them to be built on Linux and that add partial support for the Wooting Two (direct_set_key will not work for the numpad keys).

As soon as an updated version of the SDK is made available, this crate will switch to use it.

Prerequisites

In order to generate bindings for the SDKs using bindgen, wooting-analog-sdk-sys and wooting-rgb-sdk-sys require libclang. If the submodules for the SDKs are not cloned, then the build scripts will attempt to clone them, in this case, git is required. When building the SDKs, libusb or libudev will be required for the SDKs' hidapi dependency on Linux, these are expected to exist.

Windows

Download and install the official pre-built binary for libclang from the LLVM download page.

Mac

If using Homebrew, run:

brew install llvm

If using MacPorts, run:

port install clang-3.9

Linux

If running Ubuntu 16.10 or greater, run:

apt install llvm-3.9-dev libclang-3.9-dev clang-3.9 libusb-1.0.0-dev libusb-1.0.0

If running a version earlier than Ubuntu 16.10, then you may need to use the LLVM apt repositories.

If using any other distribution, then you'll just need to figure it out yourself.

License

All of the crates contained in this repo are licensed under both MIT and Apache 2.0. Both the Wooting Analog SDK and Wooting RGB SDK are licensed under MPL.

Code of Conduct

All interactions on this repository (whether on issues, PRs, or elsewhere) are governed by the Rust Code of Conduct.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.