~ruther/qmk_firmware

a44abeb99ae79e2fc88f3d323477e7408c5baf41 — fauxpark 3 years ago 69a6772 + f30f963
Merge remote-tracking branch 'upstream/master' into develop
4 files changed, 20 insertions(+), 11 deletions(-)

M .gitignore
M Doxyfile
M lib/python/qmk/cli/generate/docs.py
M quantum/encoder.c
M .gitignore => .gitignore +0 -1
@@ 19,7 19,6 @@

# QMK-specific
api_data/v1
doxygen/
quantum/version.h
*.bin
*.eep

M Doxyfile => Doxyfile +3 -3
@@ 21,7 21,7 @@ DOXYFILE_ENCODING      = UTF-8
PROJECT_NAME           = "QMK Firmware"
PROJECT_NUMBER         = https://github.com/qmk/qmk_firmware
PROJECT_BRIEF          = "Keyboard controller firmware for Atmel AVR and ARM USB families"
OUTPUT_DIRECTORY       = doxygen
OUTPUT_DIRECTORY       = .build/doxygen
ALLOW_UNICODE_NAMES    = NO
OUTPUT_LANGUAGE        = English
BRIEF_MEMBER_DESC      = YES


@@ 145,7 145,7 @@ FILE_PATTERNS          = *.c \
RECURSIVE              = YES
EXCLUDE                = 
EXCLUDE_SYMLINKS       = NO
EXCLUDE_PATTERNS       = 
EXCLUDE_PATTERNS       = */protocol/arm_atsam/*
EXCLUDE_SYMBOLS        = 
EXAMPLE_PATH           = 
EXAMPLE_PATTERNS       = *


@@ 209,7 209,7 @@ EXPAND_ONLY_PREDEF     = NO
SEARCH_INCLUDES        = YES
INCLUDE_PATH           = 
INCLUDE_FILE_PATTERNS  = 
PREDEFINED             = 
PREDEFINED             = __DOXYGEN__ PROGMEM
EXPAND_AS_DEFINED      = 
SKIP_FUNCTION_MACROS   = YES


M lib/python/qmk/cli/generate/docs.py => lib/python/qmk/cli/generate/docs.py +10 -6
@@ 7,7 7,9 @@ from subprocess import DEVNULL
from milc import cli

DOCS_PATH = Path('docs/')
BUILD_PATH = Path('.build/docs/')
BUILD_PATH = Path('.build/')
BUILD_DOCS_PATH = BUILD_PATH / 'docs'
DOXYGEN_PATH = BUILD_PATH / 'doxygen'


@cli.subcommand('Build QMK documentation.', hidden=False if cli.config.user.developer else True)


@@ 18,10 20,12 @@ def generate_docs(cli):
        * [ ] Add a real build step... something static docs
    """

    if BUILD_PATH.exists():
        shutil.rmtree(BUILD_PATH)
    if BUILD_DOCS_PATH.exists():
        shutil.rmtree(BUILD_DOCS_PATH)
    if DOXYGEN_PATH.exists():
        shutil.rmtree(DOXYGEN_PATH)

    shutil.copytree(DOCS_PATH, BUILD_PATH)
    shutil.copytree(DOCS_PATH, BUILD_DOCS_PATH)

    # When not verbose we want to hide all output
    args = {


@@ 34,6 38,6 @@ def generate_docs(cli):

    # Generate internal docs
    cli.run(['doxygen', 'Doxyfile'], **args)
    cli.run(['moxygen', '-q', '-a', '-g', '-o', BUILD_PATH / 'internals_%s.md', 'doxygen/xml'], **args)
    cli.run(['moxygen', '-q', '-g', '-o', BUILD_DOCS_PATH / 'internals_%s.md', DOXYGEN_PATH / 'xml'], **args)

    cli.log.info('Successfully generated internal docs to %s.', BUILD_PATH)
    cli.log.info('Successfully generated internal docs to %s.', BUILD_DOCS_PATH)

M quantum/encoder.c => quantum/encoder.c +7 -1
@@ 59,6 59,10 @@ static uint8_t thisHand, thatHand;
static uint8_t encoder_value[NUMBER_OF_ENCODERS] = {0};
#endif

__attribute__((weak)) void encoder_wait_pullup_charge(void) {
    wait_us(100);
}

__attribute__((weak)) bool encoder_update_user(uint8_t index, bool clockwise) {
    return true;
}


@@ 88,7 92,9 @@ void encoder_init(void) {
    for (int i = 0; i < NUMBER_OF_ENCODERS; i++) {
        setPinInputHigh(encoders_pad_a[i]);
        setPinInputHigh(encoders_pad_b[i]);

    }
    encoder_wait_pullup_charge();
    for (int i = 0; i < NUMBER_OF_ENCODERS; i++) {
        encoder_state[i] = (readPin(encoders_pad_a[i]) << 0) | (readPin(encoders_pad_b[i]) << 1);
    }