Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Event Device Support (evdev) #1943

Merged
merged 26 commits into from
Feb 20, 2024

Commits on Aug 15, 2023

  1. Add event device plugin

    This implements an "event device" listener plugin,
    that enables the user to configure the phoniebox to
    respond to events from an "event device" (device under /dev/input).
    This incluces eg button presses from an USB controller or keyboard.
    votti committed Aug 15, 2023
    Configuration menu
    Copy the full SHA
    5c1cb16 View commit details
    Browse the repository at this point in the history
  2. Adds documentation for the event device plugin

    Includes a detailed how-to as well as example config
    votti committed Aug 15, 2023
    Configuration menu
    Copy the full SHA
    87e8aa1 View commit details
    Browse the repository at this point in the history
  3. Allow empty button config

    This is an actual usecase in case someone wants to setup a device
    and figure out the button ids by looking at the logs
    votti committed Aug 15, 2023
    Configuration menu
    Copy the full SHA
    f1caebf View commit details
    Browse the repository at this point in the history
  4. Update README.rst

    pabera authored and votti committed Aug 15, 2023
    Configuration menu
    Copy the full SHA
    0408775 View commit details
    Browse the repository at this point in the history
  5. Improve README

    - Remove duplicated section as suggested
    - Add Zero Delay Arcade USB Encoder usecase
    votti committed Aug 15, 2023
    Configuration menu
    Copy the full SHA
    5243583 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    a93104b View commit details
    Browse the repository at this point in the history

Commits on Dec 29, 2023

  1. Update to markdown docs and merge develop

    Vito Zanotelli committed Dec 29, 2023
    Configuration menu
    Copy the full SHA
    23b107c View commit details
    Browse the repository at this point in the history
  2. Link to old documentation

    Vito Zanotelli committed Dec 29, 2023
    Configuration menu
    Copy the full SHA
    39e69f9 View commit details
    Browse the repository at this point in the history
  3. Remove README and fix typo

    The documentation is now part of the markdown documentation
    pre-commit fix Vito Zanotelli committed Dec 29, 2023
    Configuration menu
    Copy the full SHA
    49839ad View commit details
    Browse the repository at this point in the history

Commits on Dec 31, 2023

  1. Remove unecessary plain=1

    pre-commit fix Vito Zanotelli committed Dec 31, 2023
    Configuration menu
    Copy the full SHA
    68ee2e0 View commit details
    Browse the repository at this point in the history

Commits on Jan 17, 2024

  1. Remove indents in example code

    There was some left over indentation from the old rtf format in the python code examples.
    pre-commit fix Vito Zanotelli committed Jan 17, 2024
    Configuration menu
    Copy the full SHA
    3bfa01c View commit details
    Browse the repository at this point in the history
  2. Add example how to access evdev in docker

    pre-commit fix Vito Zanotelli committed Jan 17, 2024
    Configuration menu
    Copy the full SHA
    38b4cd4 View commit details
    Browse the repository at this point in the history

Commits on Jan 18, 2024

  1. Example for new Evdev config structure

    This is tighly modeled after gpio.
    In contrast to GPIO, this is a list of devices containing
    each one or more input/output devices.
    Eg a Joystick has keys but potentially also rumble or leds.
    
    Currently only very simply input devices (buttons) are supported.
    This structer should enable to extend this easily.
    pre-commit fix Vito Zanotelli committed Jan 18, 2024
    Configuration menu
    Copy the full SHA
    2f36718 View commit details
    Browse the repository at this point in the history
  2. Move evdev config to separate file

    As suggested this should be a separate file, similar to the gpioz config
    pre-commit fix Vito Zanotelli committed Jan 18, 2024
    Configuration menu
    Copy the full SHA
    90de6a4 View commit details
    Browse the repository at this point in the history
  3. Adapt evdev code to new config

    Now the config for evdev is akin to GPIO.
    The big difference is that multiple devices with each
    multiple input/output devices are supported.
    
    Note that the backend is still the old event device listener backend.
    Thus to support more features, the backend would need to be
    quite drastically overhauled.
    pre-commit fix Vito Zanotelli committed Jan 18, 2024
    Configuration menu
    Copy the full SHA
    bd00f05 View commit details
    Browse the repository at this point in the history
  4. Update documentation for new evdev config format

    pre-commit fix Vito Zanotelli committed Jan 18, 2024
    Configuration menu
    Copy the full SHA
    62171ef View commit details
    Browse the repository at this point in the history
  5. Fix wrong reference

    pre-commit fix Vito Zanotelli committed Jan 18, 2024
    Configuration menu
    Copy the full SHA
    d77a69b View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2024

  1. Fix bug to correctly check supported input device type

    pre-commit fix Vito Zanotelli committed Jan 19, 2024
    Configuration menu
    Copy the full SHA
    4274e92 View commit details
    Browse the repository at this point in the history
  2. Add more tests for evdev init

    pre-commit fix Vito Zanotelli committed Jan 19, 2024
    Configuration menu
    Copy the full SHA
    a3b328b View commit details
    Browse the repository at this point in the history
  3. Fix wrong attribute name

    The attribute 'device_request' of EvDevKeyListener is now called 'device_name_request'
    pre-commit fix Vito Zanotelli committed Jan 19, 2024
    Configuration menu
    Copy the full SHA
    3773556 View commit details
    Browse the repository at this point in the history
  4. Validate input config better

    Fails if there is no device_name and setts proper default for 'exact'
    pre-commit fix Vito Zanotelli committed Jan 19, 2024
    Configuration menu
    Copy the full SHA
    2df6adf View commit details
    Browse the repository at this point in the history
  5. Add pyzmq installation for github action

    This is required for some tests.
    
    Following the instructions from issue MiczFlor#2050
    Specifically: MiczFlor#2050 (comment)
    pre-commit fix Vito Zanotelli committed Jan 19, 2024
    Configuration menu
    Copy the full SHA
    75161b5 View commit details
    Browse the repository at this point in the history
  6. Revert "Add pyzmq installation for github action"

    This reverts commit 75161b5.
    
    As this was not working
    pre-commit fix Vito Zanotelli committed Jan 19, 2024
    Configuration menu
    Copy the full SHA
    51d9915 View commit details
    Browse the repository at this point in the history
  7. Mock jukebox.publishing in tests to avoid zmq

    Currently it is hard to install zmq (MiczFlor#2050) and for
    CI pytest `zmq` is not available.
    As the test do not really require `jukebox.publishing`
    running, mocking it in the test avoids it being imported.
    
    Thus the tests do not require `zmq` to be installed.
    pre-commit fix Vito Zanotelli committed Jan 19, 2024
    Configuration menu
    Copy the full SHA
    a181f8c View commit details
    Browse the repository at this point in the history

Commits on Jan 29, 2024

  1. Configuration menu
    Copy the full SHA
    bc6610c View commit details
    Browse the repository at this point in the history

Commits on Feb 18, 2024

  1. Configuration menu
    Copy the full SHA
    f807152 View commit details
    Browse the repository at this point in the history