Coder Social home page Coder Social logo

macropad's People

Contributors

meir avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

macropad's Issues

[FEAT] Transparent keycodes

Is your feature request related to a problem? Please describe.
Transparent keycodes should be added so that layers dont have to require each keycode to be set for the same functions
Transparent keys would get the first non-transparent key from the layer below

Describe the solution you'd like
Add a transparent keycode that will act like the first non-transparent keycode in the layer indices below

Describe alternatives you've considered
N/A

Additional context
N/A

[FEAT] Layer keys

Is your feature request related to a problem? Please describe.
Layer keys will provide ways to switch layers without a rotary encoder or custom keycodes
These will also allow you to switch layers for a single keystroke or until the button is released again

Describe the solution you'd like
3 layer keycodes, HOLD, TAP and SWITCH
HOLD: switch to a layer until button is released
TAP: switch to a layer until a single keypress has been sent
SWITCH: switch to a layer

Describe alternatives you've considered
N/A

Additional context
N/A

[BUG] Display stops a frame after keypresses

Describe the bug
When a key is pressed or released the display laggs for a frame.

To Reproduce
Steps to reproduce the behavior:

  1. Set up the code to use an animation in the display
  2. Press any key

Expected behavior
Smooth display animations without stuttering

Screenshots
N/A

Used:

  • OS: Windows
  • Branch: main
  • Hardware: Adafruit ESP32-S2 TFT Feather, 5xMX Switches, Rotary encoder

Config file:
Internal

Additional context
Might need to use multithreading for this issue to be solved

[FEAT] Web configurator

Is your feature request related to a problem? Please describe.
A web configurator would be neat to have so that you dont need to reprogram your macropad in order to set up more layers or change the keycodes

Describe the solution you'd like
A web configurator should be able to be hosted on the ESP32-S2
This would require a webserver, frontend and data transfer/parsing between the two
This ideally would be in JSON but more research would be required for this.
There should also be a way to get all the possible keycodes for the webserver or this might be hardcoded in the frontend with a way to register custom keycodes.

Describe alternatives you've considered
N/A

Additional context
N/A

[FEAT] Macros

Is your feature request related to a problem? Please describe.
Macros can be added to support more functionality such as multiple keycodes behind eachother to perform keybind actions.

Describe the solution you'd like
An extra event type to handle macros and a way to register new macros to the system.

Describe alternatives you've considered
N/A

Additional context
N/A

[FEAT] Combos

Is your feature request related to a problem? Please describe.
Combos is a way to add extra control to your macropad to perform a certain combination of keycodes in order to perform a different task than expected.

Describe the solution you'd like
This would require a keypress timer to keep track of when a keypress should actually count towards an actual key event or a combo.
This would most likely mean choosing between combos and not as responsive keycodes or instant responsive keycodes, would need more research on how to implement this seamlessly

Describe alternatives you've considered
N/A

Additional context
N/A

[FEAT] Tapdances

Is your feature request related to a problem? Please describe.
Tapdances can be added to perform keycodes or other methods in a unique way without overriding the default keycodes

Describe the solution you'd like
Add a keycode timer and a way to start a tapdance aswell as a tapdance state, keycode and event type

Describe alternatives you've considered
N/A

Additional context
N/A

[FEAT] Mouse keys

Is your feature request related to a problem? Please describe.
Mouse keys should be added to the keycodes for extra keycodes and computer control

Describe the solution you'd like
This would require to add a mouse consumer, mouse keycodes and another event type for mouse keys.

Describe alternatives you've considered
N/A

Additional context
N/A

[BUG] Key is stuck on down position if released after switching layers

Describe the bug
When a key is pressed and the layer changes it doesnt release the key until you go back to its layer and press and release the key again.
It should keep track of the key position and see if that specific switch has been released.

To Reproduce
Steps to reproduce the behavior:

  1. Press key A with KC_A assigned
  2. Switch layer to layer with other keycode assigned to key A
  3. Release the key

Expected behavior
Expected to release KC_A but does not

Screenshots
N/A

Used:

  • OS: Windows
  • Branch: main
  • Hardware: Adafruit ESP32-S2 TFT Feather, 5xMX Switches, Rotary encoder

Config file:
internal issue

Additional context
N/A

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.