浏览代码

Install bootloadHid as part of qmk_install (#7463)

* Install bootloadHid on macos

* Install bootloadHid on windows

* Highlight bootloadHID is now installed in docs

* Update udev rules for bootloadHID

* Install bootloadHid on some distros

* fix caterina udev filename
Joel Challis 5 年之前
父节点
当前提交
235da6973d
共有 7 个文件被更改,包括 34 次插入2 次删除
  1. 7 1
      docs/faq_build.md
  2. 1 1
      docs/flashing_bootloadhid.md
  3. 1 0
      util/activate_msys2.sh
  4. 1 0
      util/activate_wsl.sh
  5. 18 0
      util/linux_install.sh
  6. 2 0
      util/macos_install.sh
  7. 4 0
      util/win_shared_install.sh

+ 7 - 1
docs/faq_build.md

@@ -47,7 +47,7 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="feed", MODE:="0666"
 SUBSYSTEMS=="usb", ATTRS{idVendor}=="1c11", MODE:="0666"
 SUBSYSTEMS=="usb", ATTRS{idVendor}=="1c11", MODE:="0666"
 ```
 ```
 
 
-**/etc/udev/rules.d/55-catalina.rules:**
+**/etc/udev/rules.d/55-caterina.rules:**
 ```
 ```
 # ModemManager should ignore the following devices
 # ModemManager should ignore the following devices
 ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"
 ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"
@@ -69,6 +69,12 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="1eaf", ATTRS{idProduct}=="0003", MODE:="066
 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE:="0666"
 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE:="0666"
 ```
 ```
 
 
+**/etc/udev/rules.d/57-bootloadhid.rules:**
+```
+# bootloadHID
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05df", MODE:="0666"
+```
+
 ### Serial device is not detected in bootloader mode on Linux
 ### Serial device is not detected in bootloader mode on Linux
 Make sure your kernel has appropriate support for your device. If your device uses USB ACM, such as
 Make sure your kernel has appropriate support for your device. If your device uses USB ACM, such as
 Pro Micro (Atmega32u4), make sure to include `CONFIG_USB_ACM=y`. Other devices may require `USB_SERIAL` and any of its sub options.
 Pro Micro (Atmega32u4), make sure to include `CONFIG_USB_ACM=y`. Other devices may require `USB_SERIAL` and any of its sub options.

+ 1 - 1
docs/flashing_bootloadhid.md

@@ -13,7 +13,7 @@ General flashing sequence:
 
 
 ## bootloadHID Flashing Target
 ## bootloadHID Flashing Target
 
 
-Using the QMK installation script, detailed [here](newbs_getting_started.md), the required bootloadHID tools should be automatically installed.
+?> Using the QMK installation script, detailed [here](newbs_getting_started.md), the required bootloadHID tools should be automatically installed.
 
 
 To flash via the command line, use the target `:bootloadHID` by executing the following command:
 To flash via the command line, use the target `:bootloadHID` by executing the following command:
 
 

+ 1 - 0
util/activate_msys2.sh

@@ -5,6 +5,7 @@ function export_variables {
     export PATH=$PATH:$util_dir
     export PATH=$PATH:$util_dir
     export PATH=$PATH:$util_dir/dfu-programmer
     export PATH=$PATH:$util_dir/dfu-programmer
     export PATH=$PATH:$util_dir/dfu-util-0.9-win64
     export PATH=$PATH:$util_dir/dfu-util-0.9-win64
+    export PATH=$PATH:$util_dir/bootloadHID.2012-12-08/commandline
     export PATH=$PATH:$util_dir/flip/bin
     export PATH=$PATH:$util_dir/flip/bin
     export PATH=$PATH:$util_dir/avr8-gnu-toolchain/bin
     export PATH=$PATH:$util_dir/avr8-gnu-toolchain/bin
     export PATH=$PATH:$util_dir/gcc-arm-none-eabi/bin
     export PATH=$PATH:$util_dir/gcc-arm-none-eabi/bin

+ 1 - 0
util/activate_wsl.sh

@@ -7,6 +7,7 @@ function export_variables {
     export DFU_PROGRAMMER=$download_dir/dfu-programmer/dfu-programmer.exe
     export DFU_PROGRAMMER=$download_dir/dfu-programmer/dfu-programmer.exe
     export DFU_UTIL=$download_dir/dfu-util-0.9-win64/dfu-util.exe
     export DFU_UTIL=$download_dir/dfu-util-0.9-win64/dfu-util.exe
     export TEENSY_LOADER_CLI=$download_dir/teensy_loader_cli.exe
     export TEENSY_LOADER_CLI=$download_dir/teensy_loader_cli.exe
+    export BOOTLOADHID_PROGRAMMER=$download_dir/bootloadHID.2012-12-08/commandline/bootloadHID.exe
     export BATCHISP=batchisp.exe
     export BATCHISP=batchisp.exe
 }
 }
 
 

+ 18 - 0
util/linux_install.sh

@@ -10,6 +10,17 @@ SOLUS_INFO="Your tools are now installed. To start using them, open new terminal
 
 
 util_dir=$(dirname "$0")
 util_dir=$(dirname "$0")
 
 
+# For those distros that do not package bootloadHID
+install_bootloadhid() {
+	wget https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.tar.gz -O - | tar -xz -C /tmp
+    cd /tmp/bootloadHID.2012-12-08/commandline/
+    make
+	if [ $? == 0 ]; then
+        sudo cp bootloadHID /usr/local/bin
+	fi
+	cd -
+}
+
 if grep ID /etc/os-release | grep -qE "fedora"; then
 if grep ID /etc/os-release | grep -qE "fedora"; then
 	sudo dnf install \
 	sudo dnf install \
 		arm-none-eabi-binutils-cs \
 		arm-none-eabi-binutils-cs \
@@ -28,6 +39,7 @@ if grep ID /etc/os-release | grep -qE "fedora"; then
 		glibc-headers \
 		glibc-headers \
 		kernel-devel \
 		kernel-devel \
 		kernel-headers \
 		kernel-headers \
+		libusb-devel \
 		make \
 		make \
 		perl \
 		perl \
 		python3 \
 		python3 \
@@ -54,6 +66,7 @@ elif grep ID /etc/os-release | grep -qE 'debian|ubuntu'; then
 		gcc-avr \
 		gcc-avr \
 		git \
 		git \
 		libnewlib-arm-none-eabi \
 		libnewlib-arm-none-eabi \
+		libusb-dev \
 		python3 \
 		python3 \
 		unzip \
 		unzip \
 		wget \
 		wget \
@@ -70,12 +83,14 @@ elif grep ID /etc/os-release | grep -q 'arch\|manjaro'; then
 		avr-libc \
 		avr-libc \
 		avr-gcc \
 		avr-gcc \
 		base-devel \
 		base-devel \
+		bootloadhid \
 		clang \
 		clang \
 		dfu-programmer \
 		dfu-programmer \
 		dfu-util \
 		dfu-util \
 		diffutils \
 		diffutils \
 		gcc \
 		gcc \
 		git \
 		git \
+		libusb-compat \
 		python \
 		python \
 		python-pip \
 		python-pip \
 		unzip \
 		unzip \
@@ -138,6 +153,7 @@ elif grep ID /etc/os-release | grep -qE "opensuse|tumbleweed"; then
 		dfu-tool \
 		dfu-tool \
 		dfu-programmer \
 		dfu-programmer \
 		gcc \
 		gcc \
+		libusb-devel \
 		python3 \
 		python3 \
 		unzip \
 		unzip \
 		wget \
 		wget \
@@ -177,6 +193,7 @@ elif grep ID /etc/os-release | grep -q solus; then
 		avrdude \
 		avrdude \
 		dfu-util \
 		dfu-util \
 		dfu-programmer \
 		dfu-programmer \
+		libusb-devel \
 		python3 \
 		python3 \
 		git \
 		git \
 		wget \
 		wget \
@@ -214,4 +231,5 @@ else
 fi
 fi
 
 
 # Global install tasks
 # Global install tasks
+install_bootloadhid
 pip3 install --user -r ${util_dir}/../requirements.txt
 pip3 install --user -r ${util_dir}/../requirements.txt

+ 2 - 0
util/macos_install.sh

@@ -25,5 +25,7 @@ brew tap osx-cross/avr
 brew tap osx-cross/arm
 brew tap osx-cross/arm
 brew update
 brew update
 brew install avr-gcc@8 arm-gcc-bin dfu-programmer avrdude clang-format dfu-util python3
 brew install avr-gcc@8 arm-gcc-bin dfu-programmer avrdude clang-format dfu-util python3
+brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb
 brew link --force avr-gcc@8
 brew link --force avr-gcc@8
+
 pip3 install -r "${util_dir}/../requirements.txt"
 pip3 install -r "${util_dir}/../requirements.txt"

+ 4 - 0
util/win_shared_install.sh

@@ -18,6 +18,10 @@ function install_utils {
     wget 'https://www.pjrc.com/teensy/teensy_loader_cli_windows.zip'
     wget 'https://www.pjrc.com/teensy/teensy_loader_cli_windows.zip'
     unzip teensy_loader_cli_windows.zip
     unzip teensy_loader_cli_windows.zip
 
 
+    echo "Installing bootloadHID"
+    wget 'https://www.obdev.at/downloads/vusb/bootloadHID.2012-12-08.zip'
+    unzip bootloadHID.2012-12-08.zip
+
     echo "Installing Atmel Flip"
     echo "Installing Atmel Flip"
     wget 'http://ww1.microchip.com/downloads/en/DeviceDoc/Flip%20Installer%20-%203.4.7.112.exe'
     wget 'http://ww1.microchip.com/downloads/en/DeviceDoc/Flip%20Installer%20-%203.4.7.112.exe'
     mv Flip\ Installer\ \-\ 3.4.7.112.exe FlipInstaller.exe
     mv Flip\ Installer\ \-\ 3.4.7.112.exe FlipInstaller.exe