GithubHelp home page GithubHelp logo

esp32beans / esp32_flight_stick Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 6 KB

Arduino USB flight joystick for ESP32S3 and ESP32S2

License: MIT License

C++ 100.00%
arduino esp32-s3 esp32s3 flight-stick joystick usb-controller xac xbox-adaptive-controller

esp32_flight_stick's Introduction

USB Flight Joystick for ESP32

See https://registry.platformio.org/libraries/schnoog/Joystick_ESP32S2 for a more powerful and flexible USB joystick library for ESP32-S2 and ESP32-S3.

This has only been tested on ESP32S3 boards. It should work on ESP32S2 boards.

The 3D joystick has the following controls.

Control Description
X 10 bits, 0..1023
Y 10 bits, 0..1023
Z 8 bits, 0..255
Throttle 8 bits, 0..255
Buttons 12 buttons
Hat 8 way hat switch/direction pad

The HID report has been carefully chosen so it works with the Xbox Adaptive Controller(XAC). All the other open source XAC joysticks I have seen use 8 bits for X and Y. When used with XAC, only the X, Y, and 8 buttons are supported. This is a limitation of the XAC.

Install this library by downloading a zip file from this repo. Use the IDE "Add .zip library" option.

Troubleshooting

Set "Tools->USB Mode" to "Hardware CDC and JTAG". This seems wrong but it works when using ESP32 USB device libraries.

After uploading firmware, powering cycling and/or reseting the board is required.

esp32_flight_stick's People

Contributors

esp32beans avatar

Watchers

 avatar

esp32_flight_stick's Issues

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.