实例介绍
QMK Toolbox是一组打包到一个应用程序中的烧录工具。它支持键盘固件的自动检测和自动烧录。
烧录
QMK Toolbox支持以下启动加载程序:
- ARM DFU(APM32、Kiibohd、STM32、STM32duino),使用dfu-util
- Atmel/LUFA/QMK DFU,使用dfu-programmer
- Atmel SAM-BA(Massdrop),使用Massdrop Loader
- BootloadHID(Atmel、PS2AVRGB),使用bootloadHID
- Caterina(Arduino、Pro Micro),使用avrdude
- HalfKay(Teensy、Ergodox EZ),使用Teensy Loader
- LUFA/QMK HID,使用hid_bootloader_cli
- WB32 DFU(WB32),使用wb32-dfu-updater_cli
- LUFA Mass Storage
以及以下ISP烧录器:
- AVRISP(Arduino ISP)
- USBasp(AVR ISP)
- USBTiny(AVR Pocket)
如果对其他启动加载程序感兴趣,只要了解它们的命令,就可以添加。
HID控制台
该工具箱还监听使用页面0xFF31和使用0x0074的HID消息,与PJRC的hid_listen兼容。如果在键盘的rules.mk中启用了CONSOLE_ENABLE = yes,则可以使用xprintf()打印消息,用于调试:
有关更多信息,请参阅QMK文档。
安装
系统要求
macOS 12(Monterey)或更高版本
Windows 10 2020年5月更新(20H1)或更高版本
依赖项
在Windows上使用QMK Toolbox时,首次运行时会提示安装必要的驱动程序。如果在烧录时遇到“设备未找到”的问题,则可能需要使用Zadig来解决该问题。
【实例截图】
【核心代码】
文件清单
└── qmk_toolbox-e9d0a6274cf8e10e7eb6bb5130307672aa8c1dfa
├── common
│ ├── avrdude.conf
│ ├── mcu-list.txt
│ ├── reset.eep
│ ├── reset_left.eep
│ └── reset_right.eep
├── LICENSE.md
├── macos
│ ├── QMK Toolbox
│ │ ├── AppDelegate.swift
│ │ ├── Assets.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── icon-128x128@2x.png
│ │ │ │ ├── icon-128x128.png
│ │ │ │ ├── icon-16x16@2x.png
│ │ │ │ ├── icon-16x16.png
│ │ │ │ ├── icon-256x256@2x.png
│ │ │ │ ├── icon-256x256.png
│ │ │ │ ├── icon-32x32@2x.png
│ │ │ │ ├── icon-32x32.png
│ │ │ │ ├── icon-512x512@2x.png
│ │ │ │ └── icon-512x512.png
│ │ │ └── Contents.json
│ │ ├── Base.lproj
│ │ │ └── Main.storyboard
│ │ ├── Colors.xcassets
│ │ │ ├── Contents.json
│ │ │ ├── LogBoxBackground.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── LogBoxSelection.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── LogMessageBootloader.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── LogMessageDefault.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── LogMessageError.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── LogMessageHID.colorset
│ │ │ │ └── Contents.json
│ │ │ ├── LogMessageHIDOutput.colorset
│ │ │ │ └── Contents.json
│ │ │ └── LogMessageInfo.colorset
│ │ │ └── Contents.json
│ │ ├── HID
│ │ │ ├── HIDConsoleDevice.swift
│ │ │ ├── HIDConsoleViewController.swift
│ │ │ └── HIDListener.swift
│ │ ├── Info.plist
│ │ ├── KeyTester
│ │ │ ├── Base.lproj
│ │ │ │ └── KeyView.xib
│ │ │ ├── KeyTesterViewController.swift
│ │ │ └── KeyView.swift
│ │ ├── LogTextView.swift
│ │ ├── MainViewController.swift
│ │ ├── MainWindow.swift
│ │ ├── MessageType.swift
│ │ ├── MicrocontrollerSelector.swift
│ │ ├── Resources
│ │ │ ├── avrdude
│ │ │ ├── bootloadHID
│ │ │ ├── dfu-programmer
│ │ │ ├── dfu-util
│ │ │ ├── hid_bootloader_cli
│ │ │ ├── libavrdude.1.0.0.dylib
│ │ │ ├── libftdi1.2.5.0.dylib
│ │ │ ├── libhidapi.0.14.0.dylib
│ │ │ ├── libusb-0.1.4.dylib
│ │ │ ├── libusb-1.0.0.dylib
│ │ │ ├── mdloader
│ │ │ ├── teensy_loader_cli
│ │ │ └── wb32-dfu-updater_cli
│ │ ├── USB
│ │ │ ├── Bootloader
│ │ │ │ ├── APM32DFUDevice.swift
│ │ │ │ ├── AtmelDFUDevice.swift
│ │ │ │ ├── AtmelSAMBADevice.swift
│ │ │ │ ├── AVRISPDevice.swift
│ │ │ │ ├── BootloaderDevice.swift
│ │ │ │ ├── BootloaderType.swift
│ │ │ │ ├── BootloadHIDDevice.swift
│ │ │ │ ├── CaterinaDevice.swift
│ │ │ │ ├── GD32VDFUDevice.swift
│ │ │ │ ├── HalfKayDevice.swift
│ │ │ │ ├── KiibohdDevice.swift
│ │ │ │ ├── LUFAHIDDevice.swift
│ │ │ │ ├── LUFAMSDevice.swift
│ │ │ │ ├── STM32DFUDevice.swift
│ │ │ │ ├── STM32DuinoDevice.swift
│ │ │ │ ├── USBAspDevice.swift
│ │ │ │ ├── USBTinyISPDevice.swift
│ │ │ │ └── WB32DFUDevice.swift
│ │ │ ├── USBDevice.swift
│ │ │ └── USBListener.swift
│ │ └── WindowState.swift
│ ├── QMK Toolbox.pkgproj
│ ├── QMK Toolbox.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ └── WorkspaceSettings.xcsettings
│ │ └── xcshareddata
│ │ └── xcschemes
│ │ └── QMK Toolbox.xcscheme
│ └── QMK Toolbox.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ └── IDEWorkspaceChecks.plist
├── readme.md
└── windows
├── install_compiler.iss
├── QMK Toolbox
│ ├── AboutBox.cs
│ ├── AboutBox.Designer.cs
│ ├── AboutBox.resx
│ ├── App.config
│ ├── BetterComboBox.cs
│ ├── BindableToolStripMenuItem.cs
│ ├── ComboBoxPlaceholder.cs
│ ├── FodyWeavers.xml
│ ├── FodyWeavers.xsd
│ ├── Helpers
│ │ ├── DriverInstaller.cs
│ │ └── EmbeddedResourceHelper.cs
│ ├── Hid
│ │ ├── HidConsoleDevice.cs
│ │ ├── HidConsoleWindow.cs
│ │ ├── HidConsoleWindow.Designer.cs
│ │ ├── HidConsoleWindow.resx
│ │ └── HidListener.cs
│ ├── KeyTester
│ │ ├── KeyControl.cs
│ │ ├── KeyControl.Designer.cs
│ │ ├── KeyControl.resx
│ │ ├── KeyTesterWindow.cs
│ │ ├── KeyTesterWindow.Designer.cs
│ │ └── KeyTesterWindow.resx
│ ├── LogTextBox.cs
│ ├── MainWindow.cs
│ ├── MainWindow.Designer.cs
│ ├── MainWindow.resx
│ ├── MessageType.cs
│ ├── MicrocontrollerSelector.cs
│ ├── Program.cs
│ ├── Properties
│ │ ├── app.manifest
│ │ ├── DataSources
│ │ │ └── WindowState.datasource
│ │ ├── Resources.Designer.cs
│ │ ├── Resources.resx
│ │ ├── Settings.Designer.cs
│ │ └── Settings.settings
│ ├── QMK Toolbox.csproj
│ ├── Resources
│ │ ├── avrdude.exe
│ │ ├── bootloadHID.exe
│ │ ├── dfu-programmer.exe
│ │ ├── dfu-util.exe
│ │ ├── drivers.txt
│ │ ├── hid_bootloader_cli.exe
│ │ ├── libftdi1.dll
│ │ ├── libhidapi-0.dll
│ │ ├── libusb-0-1-4.dll
│ │ ├── libusb-1.0.dll
│ │ ├── libwinpthread-1.dll
│ │ ├── mdloader.exe
│ │ ├── output.ico
│ │ ├── qmk_driver_installer.exe
│ │ ├── teensy_loader_cli.exe
│ │ └── wb32-dfu-updater_cli.exe
│ ├── Usb
│ │ ├── Bootloader
│ │ │ ├── Apm32DfuDevice.cs
│ │ │ ├── AtmelDfuDevice.cs
│ │ │ ├── AtmelSamBaDevice.cs
│ │ │ ├── AvrIspDevice.cs
│ │ │ ├── BootloaderDevice.cs
│ │ │ ├── BootloaderType.cs
│ │ │ ├── BootloadHidDevice.cs
│ │ │ ├── CaterinaDevice.cs
│ │ │ ├── Gd32VDfuDevice.cs
│ │ │ ├── HalfKayDevice.cs
│ │ │ ├── KiibohdDfuDevice.cs
│ │ │ ├── LufaHidDevice.cs
│ │ │ ├── LufaMsDevice.cs
│ │ │ ├── Stm32DfuDevice.cs
│ │ │ ├── Stm32DuinoDevice.cs
│ │ │ ├── UsbAspDevice.cs
│ │ │ ├── UsbTinyIspDevice.cs
│ │ │ └── Wb32DfuDevice.cs
│ │ ├── IUsbDevice.cs
│ │ ├── UsbDevice.cs
│ │ └── UsbListener.cs
│ └── WindowState.cs
└── QMK Toolbox.sln
39 directories, 160 files
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论