forked from forks/qmk_firmware
Add avrdude split EE_HANDS flash commands (#5414)
* Add EEPROM avrdude flashing commands for setting handedness * Update docs with info on flashing EEPROM handedness files with commands
This commit is contained in:
parent
9c4424ae2c
commit
3c257c1c6e
|
@ -208,9 +208,13 @@ There are a few different ways to set handedness for split keyboards (listed in
|
||||||
|
|
||||||
1. Set `SPLIT_HAND_PIN`: Reads a pin to determine handedness. If pin is high, it's the left side, if low, the half is determined to be the right side
|
1. Set `SPLIT_HAND_PIN`: Reads a pin to determine handedness. If pin is high, it's the left side, if low, the half is determined to be the right side
|
||||||
2. Set `EE_HANDS` and flash `eeprom-lefthand.eep`/`eeprom-righthand.eep` to each half
|
2. Set `EE_HANDS` and flash `eeprom-lefthand.eep`/`eeprom-righthand.eep` to each half
|
||||||
|
* For boards with DFU bootloader you can use `:dfu-split-left`/`:dfu-split-right` to flash these EEPROM files
|
||||||
|
* For boards with Caterina bootloader (like stock Pro Micros), use `:avrdude-split-left`/`:avrdude-split-right`
|
||||||
3. Set `MASTER_RIGHT`: Half that is plugged into the USB port is determined to be the master and right half (inverse of the default)
|
3. Set `MASTER_RIGHT`: Half that is plugged into the USB port is determined to be the master and right half (inverse of the default)
|
||||||
4. Default: The side that is plugged into the USB port is the master half and is assumed to be the left half. The slave side is the right half
|
4. Default: The side that is plugged into the USB port is the master half and is assumed to be the left half. The slave side is the right half
|
||||||
|
|
||||||
|
#### Defines for handedness
|
||||||
|
|
||||||
* `#define SPLIT_HAND_PIN B7`
|
* `#define SPLIT_HAND_PIN B7`
|
||||||
* For using high/low pin to determine handedness, low = right hand, high = left hand. Replace `B7` with the pin you are using. This is optional, and if you leave `SPLIT_HAND_PIN` undefined, then you can still use the EE_HANDS method or MASTER_LEFT / MASTER_RIGHT defines like the stock Let's Split uses.
|
* For using high/low pin to determine handedness, low = right hand, high = left hand. Replace `B7` with the pin you are using. This is optional, and if you leave `SPLIT_HAND_PIN` undefined, then you can still use the EE_HANDS method or MASTER_LEFT / MASTER_RIGHT defines like the stock Let's Split uses.
|
||||||
|
|
||||||
|
|
|
@ -223,7 +223,11 @@ define EXEC_AVRDUDE
|
||||||
printf "Waiting for $$USB to become writable."; \
|
printf "Waiting for $$USB to become writable."; \
|
||||||
while [ ! -w "$$USB" ]; do sleep 0.5; printf "."; done; echo ""; \
|
while [ ! -w "$$USB" ]; do sleep 0.5; printf "."; done; echo ""; \
|
||||||
fi; \
|
fi; \
|
||||||
|
if [ -z "$(1)" ]; then \
|
||||||
avrdude -p $(MCU) -c avr109 -P $$USB -U flash:w:$(BUILD_DIR)/$(TARGET).hex; \
|
avrdude -p $(MCU) -c avr109 -P $$USB -U flash:w:$(BUILD_DIR)/$(TARGET).hex; \
|
||||||
|
else \
|
||||||
|
avrdude -p $(MCU) -c avr109 -P $$USB -U flash:w:$(BUILD_DIR)/$(TARGET).hex -U eeprom:w:$(QUANTUM_PATH)/split_common/$(1); \
|
||||||
|
fi \
|
||||||
fi
|
fi
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
@ -235,6 +239,12 @@ avrdude-loop: $(BUILD_DIR)/$(TARGET).hex check-size cpfirmware
|
||||||
$(call EXEC_AVRDUDE) ; \
|
$(call EXEC_AVRDUDE) ; \
|
||||||
done
|
done
|
||||||
|
|
||||||
|
avrdude-split-left: $(BUILD_DIR)/$(TARGET).hex check-size cpfirmware
|
||||||
|
$(call EXEC_AVRDUDE,eeprom-lefthand.eep)
|
||||||
|
|
||||||
|
avrdude-split-right: $(BUILD_DIR)/$(TARGET).hex check-size cpfirmware
|
||||||
|
$(call EXEC_AVRDUDE,eeprom-righthand.eep)
|
||||||
|
|
||||||
# Convert hex to bin.
|
# Convert hex to bin.
|
||||||
bin: $(BUILD_DIR)/$(TARGET).hex
|
bin: $(BUILD_DIR)/$(TARGET).hex
|
||||||
$(OBJCOPY) -Iihex -Obinary $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).bin
|
$(OBJCOPY) -Iihex -Obinary $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).bin
|
||||||
|
|
Loading…
Reference in a new issue