Skip to content

Commit

Permalink
firmware: Replace tabs with spaces
Browse files Browse the repository at this point in the history
  • Loading branch information
wlhlm committed Jan 8, 2023
1 parent c84b45c commit 5942a13
Show file tree
Hide file tree
Showing 5 changed files with 136 additions and 137 deletions.
81 changes: 40 additions & 41 deletions firmware/keyboards/leopold/fc980c/wlhlm/actuation_point.c
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@

#include QMK_KEYBOARD_H


#define ACTUATION_POINT_I2C_TIMEOUT 100

///////////////////////////////////////////////////////////////////////////////
Expand All @@ -32,72 +31,72 @@
int8_t actuation_point_read_rdac(void) {
uint8_t ret = 0;

i2c_status_t e = i2c_readReg(AD5258_ADDR, AD5258_INST_RDAC, &ret, 1, ACTUATION_POINT_I2C_TIMEOUT);
if (e != I2C_STATUS_SUCCESS) {
return -1;
}
i2c_status_t e = i2c_readReg(AD5258_ADDR, AD5258_INST_RDAC, &ret, 1, ACTUATION_POINT_I2C_TIMEOUT);
if (e != I2C_STATUS_SUCCESS) {
return -1;
}

return MIN(AD5258_RDAC_MAX, ret);
};

int8_t actuation_point_read_eeprom(void) {
uint8_t ret = 0;

i2c_status_t e = i2c_readReg(AD5258_ADDR, AD5258_INST_EEPROM, &ret, 1, ACTUATION_POINT_I2C_TIMEOUT);
if (e != I2C_STATUS_SUCCESS) {
return -1;
}
i2c_status_t e = i2c_readReg(AD5258_ADDR, AD5258_INST_EEPROM, &ret, 1, ACTUATION_POINT_I2C_TIMEOUT);
if (e != I2C_STATUS_SUCCESS) {
return -1;
}

return MIN(AD5258_RDAC_MAX, ret);
};

int8_t actuation_point_write_rdac(uint8_t value) {
value = MIN(AD5258_RDAC_MAX, value);
i2c_status_t e = i2c_writeReg(AD5258_ADDR, AD5258_INST_RDAC, &value, 1, ACTUATION_POINT_I2C_TIMEOUT);
if (e == I2C_STATUS_SUCCESS) {
return value;
} else if (e == I2C_STATUS_TIMEOUT) {
dprintf("actuation_point_write_rdac: timeout\n");
} else if (e == I2C_STATUS_ERROR) {
uprintf("actuation_point_write_rdac: error\n");
}

return -1;
value = MIN(AD5258_RDAC_MAX, value);
i2c_status_t e = i2c_writeReg(AD5258_ADDR, AD5258_INST_RDAC, &value, 1, ACTUATION_POINT_I2C_TIMEOUT);
if (e == I2C_STATUS_SUCCESS) {
return value;
} else if (e == I2C_STATUS_TIMEOUT) {
dprintf("actuation_point_write_rdac: timeout\n");
} else if (e == I2C_STATUS_ERROR) {
uprintf("actuation_point_write_rdac: error\n");
}

return -1;
};

int8_t actuation_point_adjust(int8_t offset) {
int8_t r = -1;
int8_t r = -1;
int8_t rdac = actuation_point_read_rdac();

if (rdac >= 0) {
uint8_t rdac_new = rdac + offset;
if (rdac >= 0) {
uint8_t rdac_new = rdac + offset;

if (offset > 0) {
r = actuation_point_write_rdac(MIN(AD5258_RDAC_MAX, rdac_new));
} else if (offset < 0) {
r = actuation_point_write_rdac(MAX(AD5258_RDAC_MIN, rdac_new));
}
}
if (offset > 0) {
r = actuation_point_write_rdac(MIN(AD5258_RDAC_MAX, rdac_new));
} else if (offset < 0) {
r = actuation_point_write_rdac(MAX(AD5258_RDAC_MIN, rdac_new));
}
}

return r;
return r;
}

int8_t actuation_point_make_shallower(void) {
return actuation_point_adjust(-1);
return actuation_point_adjust(-1);
};

int8_t actuation_point_make_deeper(void) {
return actuation_point_adjust(1);
return actuation_point_adjust(1);
};

void actuation_point_reset(void) {
i2c_status_t e = i2c_writeReg(AD5258_ADDR, AD5258_INST_RESTORE, NULL, 0, ACTUATION_POINT_I2C_TIMEOUT);
if (e == I2C_STATUS_TIMEOUT) {
dprintf("actuation_point_reset: timeout\n");
} else if (e == I2C_STATUS_ERROR) {
dprintf("actuation_point_reset: error\n");
} else {
wait_us(350); // datasheet specifies 300us restore interval
i2c_writeReg(AD5258_ADDR, AD5258_INST_NOP, NULL, 0, ACTUATION_POINT_I2C_TIMEOUT); // recommended in datasheet
}
i2c_status_t e = i2c_writeReg(AD5258_ADDR, AD5258_INST_RESTORE, NULL, 0, ACTUATION_POINT_I2C_TIMEOUT);
if (e == I2C_STATUS_TIMEOUT) {
dprintf("actuation_point_reset: timeout\n");
} else if (e == I2C_STATUS_ERROR) {
dprintf("actuation_point_reset: error\n");
} else {
wait_us(350); // datasheet specifies 300us restore interval
i2c_writeReg(AD5258_ADDR, AD5258_INST_NOP, NULL, 0, ACTUATION_POINT_I2C_TIMEOUT); // recommended in datasheet
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ enum layer_names {
};

enum custom_keycodes {
AP_UP = SAFE_RANGE, // make actuation point deeper
AP_DN, // make actuation point shallower
AP_RST, // reset actuation point to factory value
AP_PRINT_VAL // type current actuation point value (max 63)
AP_UP = SAFE_RANGE, // make actuation point deeper
AP_DN, // make actuation point shallower
AP_RST, // reset actuation point to factory value
AP_PRINT_VAL // type current actuation point value (max 63)
};

#define FN MO(_FUNCTION_LAYER)
Expand All @@ -45,33 +45,33 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};

bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
int8_t r_val;
if (record->event.pressed) {
int8_t r_val;

switch (keycode) {
case AP_UP:
r_val = actuation_point_make_deeper();
if (r_val >= 0) fc980c_config.actuation_point_value = r_val;
fc980c_eeconfig_update_kb();
break;
case AP_DN:
r_val = actuation_point_make_shallower();
if (r_val >= 0) fc980c_config.actuation_point_value = r_val;
fc980c_eeconfig_update_kb();
break;
case AP_RST:
actuation_point_reset();
break;
case AP_PRINT_VAL:
dprintf("actuation_point (AD5258): rdac %"PRIu8", eeprom %"PRIu8"\n", actuation_point_read_rdac(), actuation_point_read_eeprom());
switch (keycode) {
case AP_UP:
r_val = actuation_point_make_deeper();
if (r_val >= 0) fc980c_config.actuation_point_value = r_val;
fc980c_eeconfig_update_kb();
break;
case AP_DN:
r_val = actuation_point_make_shallower();
if (r_val >= 0) fc980c_config.actuation_point_value = r_val;
fc980c_eeconfig_update_kb();
break;
case AP_RST:
actuation_point_reset();
break;
case AP_PRINT_VAL:
dprintf("actuation_point (AD5258): rdac %"PRIu8", eeprom %"PRIu8"\n", actuation_point_read_rdac(), actuation_point_read_eeprom());
#ifdef SEND_STRING_ENABLE
char rdac_buf[3];
snprintf(rdac_buf, sizeof(rdac_buf), "%"PRIu8, actuation_point_read_rdac());
send_string(rdac_buf);
char rdac_buf[3];
snprintf(rdac_buf, sizeof(rdac_buf), "%"PRIu8, actuation_point_read_rdac());
send_string(rdac_buf);
#endif
break;
}
}
break;
}
}

return true;
}
62 changes: 31 additions & 31 deletions firmware/keyboards/leopold/fc980c/wlhlm/keymaps/wlhlm/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ enum layer_names {
};

enum custom_keycodes {
AP_UP = SAFE_RANGE, // make actuation point deeper
AP_DN, // make actuation point shallower
AP_RST, // reset actuation point to factory value
AP_PRINT_VAL // type out current actuation point value (max 63)
AP_UP = SAFE_RANGE, // make actuation point deeper
AP_DN, // make actuation point shallower
AP_RST, // reset actuation point to factory value
AP_PRINT_VAL // type out current actuation point value (max 63)
};

#define FN MO(KM_FUNCTION_LAYER)
Expand Down Expand Up @@ -51,36 +51,36 @@ void keyboard_post_init_user(void) {
}

bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
int8_t r_val;
if (record->event.pressed) {
int8_t r_val;

switch (keycode) {
case AP_UP:
r_val = actuation_point_make_deeper();
if (r_val >= 0) fc980c_config.actuation_point_value = r_val;
fc980c_eeconfig_update_kb();
break;
case AP_DN:
r_val = actuation_point_make_shallower();
if (r_val >= 0) fc980c_config.actuation_point_value = r_val;
fc980c_eeconfig_update_kb();
break;
case AP_RST:
actuation_point_reset();
break;
case AP_PRINT_VAL:
dprintf("acutation_point (AD5258): rdac %"PRIu8", eeprom %"PRIu8"\n", actuation_point_read_rdac(), actuation_point_read_eeprom());
switch (keycode) {
case AP_UP:
r_val = actuation_point_make_deeper();
if (r_val >= 0) fc980c_config.actuation_point_value = r_val;
fc980c_eeconfig_update_kb();
break;
case AP_DN:
r_val = actuation_point_make_shallower();
if (r_val >= 0) fc980c_config.actuation_point_value = r_val;
fc980c_eeconfig_update_kb();
break;
case AP_RST:
actuation_point_reset();
break;
case AP_PRINT_VAL:
dprintf("acutation_point (AD5258): rdac %"PRIu8", eeprom %"PRIu8"\n", actuation_point_read_rdac(), actuation_point_read_eeprom());
#ifdef SEND_STRING_ENABLE
char rdac_buf[3];
snprintf(rdac_buf, sizeof(rdac_buf), "%"PRIu8, actuation_point_read_rdac());
send_string(rdac_buf);
char rdac_buf[3];
snprintf(rdac_buf, sizeof(rdac_buf), "%"PRIu8, actuation_point_read_rdac());
send_string(rdac_buf);
#endif
break;
default:
dprintf("KL: kc: 0x%04X, col: %2u, row: %2u, pressed: %u, time: %5u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time);
break;
}
}
break;
default:
dprintf("KL: kc: 0x%04X, col: %2u, row: %2u, pressed: %u, time: %5u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time);
break;
}
}

return true;
}
50 changes: 25 additions & 25 deletions firmware/keyboards/leopold/fc980c/wlhlm/matrix.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,16 +17,16 @@ static inline void KEY_HYS_on(void) { writePinHigh(MATRIX_KEY_HYS_PIN); }
static inline void KEY_HYS_off(void) { writePinLow(MATRIX_KEY_HYS_PIN); }

static void set_row(int row) {
writePin(row_pins[0], row & 0b00000001);
writePin(row_pins[1], row & 0b00000010);
writePin(row_pins[2], row & 0b00000100);
writePin(row_pins[0], row & 0b00000001);
writePin(row_pins[1], row & 0b00000010);
writePin(row_pins[2], row & 0b00000100);
}

static void set_col(int col) {
writePin(col_pins[0], col & 0b00000001);
writePin(col_pins[1], col & 0b00000010);
writePin(col_pins[2], col & 0b00000100);
writePin(col_pins[3], col & 0b00001000);
writePin(col_pins[0], col & 0b00000001);
writePin(col_pins[1], col & 0b00000010);
writePin(col_pins[2], col & 0b00000100);
writePin(col_pins[3], col & 0b00001000);
}

static bool read_rows_on_col(matrix_row_t current_matrix[], int current_col) {
Expand All @@ -38,17 +38,17 @@ static bool read_rows_on_col(matrix_row_t current_matrix[], int current_col) {
// store last value of row prior to reading
matrix_row_t last_row_value = current_matrix[row_index];

set_row(row_index);
set_row(row_index);

if (last_row_value & (1 << current_col)) {
KEY_HYS_on();
}
matrix_output_select_delay();
if (last_row_value & (1 << current_col)) {
KEY_HYS_on();
}
matrix_output_select_delay();

KEY_ENABLE_on();
wait_us(2);
KEY_ENABLE_on();
wait_us(2);

// NOTE: KEY_STATE is valid only in 20us after KEY_ENABLE.
// NOTE: KEY_STATE is valid only in 20us after KEY_ENABLE.
if (!readPin(MATRIX_KEY_STATE_PIN)) {
// pin LO, set col bit
current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col);
Expand All @@ -57,12 +57,12 @@ static bool read_rows_on_col(matrix_row_t current_matrix[], int current_col) {
current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col);
}

KEY_HYS_off();
KEY_ENABLE_off();
KEY_HYS_off();
KEY_ENABLE_off();

// NOTE: KEY_STATE keep its state in 20us after KEY_ENABLE.
// This takes 25us or more to make sure KEY_STATE returns to idle state.
wait_us(25);
// NOTE: KEY_STATE keep its state in 20us after KEY_ENABLE.
// This takes 25us or more to make sure KEY_STATE returns to idle state.
wait_us(25);

// determine if the matrix changed state
if ((last_row_value != current_matrix[row_index]) && !(matrix_changed)) {
Expand All @@ -74,9 +74,9 @@ static bool read_rows_on_col(matrix_row_t current_matrix[], int current_col) {
}

void matrix_init_custom(void) {
setPinInput(MATRIX_KEY_STATE_PIN); // uses external pullup
setPinOutput(MATRIX_KEY_HYS_PIN);
setPinOutput(MATRIX_KEY_ENABLE_PIN);
setPinInput(MATRIX_KEY_STATE_PIN); // uses external pullup
setPinOutput(MATRIX_KEY_HYS_PIN);
setPinOutput(MATRIX_KEY_ENABLE_PIN);

for (int i = 0; i < ARRAY_SIZE(row_pins); i++) {
setPinOutput(row_pins[i]);
Expand All @@ -85,8 +85,8 @@ void matrix_init_custom(void) {
setPinOutput(col_pins[i]);
}

KEY_ENABLE_off();
KEY_HYS_off();
KEY_ENABLE_off();
KEY_HYS_off();
}

bool matrix_scan_custom(matrix_row_t current_matrix[]) {
Expand Down
Loading

0 comments on commit 5942a13

Please sign in to comment.