Update README.md
This commit is contained in:
22
README.md
22
README.md
@@ -1,24 +1,24 @@
|
|||||||
# Ultimate Hacking Keyboard bootloader
|
# Ultimate Hacking Keyboard bootloader
|
||||||
|
|
||||||
This repository contains the bootloader of the [Ultimate Hacking Keyboard](https://ultimatehackingkeyboard.com/) based on [NXP Kinetis Bootloader](http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/kinetis-cortex-m-mcus/kinetis-symbols-footprints-and-models/kinetis-bootloader:KBOOT) v2.0
|
This repository contains the bootloader of the [Ultimate Hacking Keyboard](https://ultimatehackingkeyboard.com/) which is a fully functional port of [KBOOT](http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/kinetis-cortex-m-mcus/kinetis-symbols-footprints-and-models/kinetis-bootloader:KBOOT) v2.0, including its full command set.
|
||||||
|
|
||||||
The project actually being modified is: "bootloader\targets\MK22F51212\freedom_bootloader". The project can be compiled and debugged using Kinetis Design Studio 3.0 (Free IDE based on Eclipse provided by NXP)
|
## Build
|
||||||
|
|
||||||
|
The project actually resides in [targets/MK22F51212/freedom_bootloader](targets/MK22F51212/freedom_bootloader), and can be compiled and debugged using [Kinetis Design Studio](http://www.nxp.com/products/software-and-tools/run-time-software/kinetis-software-and-tools/ides-for-kinetis-mcus/kinetis-design-studio-integrated-development-environment-ide:KDS_IDE).
|
||||||
|
|
||||||
To test the bootloader a binary properly configured has been added to the root folder of this repository. This binary is based on the UHK_Right Firmware project.
|
To test the bootloader a binary properly configured has been added to the root folder of this repository. This binary is based on the UHK_Right Firmware project.
|
||||||
To understand these modifications and apply them to the current version of the UHK Right firmware, follow the procedure in "Adapting UHK Project to KBOOT.docx" (Work in progress...)
|
To understand these modifications and apply them to the current version of the UHK Right firmware, follow the procedure in "Adapting UHK Project to KBOOT.docx" (Work in progress...)
|
||||||
|
|
||||||
******* FEATURES *******
|
The device can be controlled and erased/programmed easily using
|
||||||
|
|
||||||
This bootloader is a fully functional porting of KBOOT 2.0. It supports the full command set from KBOOT 2.0 and the device can be controlled and erased/programmed easily using
|
|
||||||
the blhost.exe tool provided by NXP and included in this repository. A GUI with a reduced set of features has also been created for Windows (KinetisFlashTool.exe).
|
the blhost.exe tool provided by NXP and included in this repository. A GUI with a reduced set of features has also been created for Windows (KinetisFlashTool.exe).
|
||||||
|
|
||||||
Key features:
|
## Key features
|
||||||
|
|
||||||
- Communication through HID with any PC without the need of an additional driver.
|
- Communication through HID with any PC without the need of an additional driver.
|
||||||
- Automatic timeout and jump to user application without any action from the user.
|
- Automatic timeout and jump to user application without any action from the user.
|
||||||
- If no valid application is present, Bootloader will keep waiting for a communication through the HID USB port.
|
- If no valid application is present, the bootloader will keep waiting for communication through the HID USB port.
|
||||||
- Every command sent to the BL includes a validation process inside the MCU to avoid any error in the communication.
|
- Every command sent to the bootloader includes a validation process inside the MCU to avoid any error in the communication.
|
||||||
- The memory area of the BL is protected, so even if the update fails, user just needs to do a Power on Reset (Plug and Unplug the Keyboard) in order to launch the bootloader again.
|
- The memory area of the bootloader is protected, so even if the update fails, user just needs to do a Power on Reset (Plug and Unplug the Keyboard) in order to launch the bootloader again.
|
||||||
- Smart reset behavior: If the MCU has been reset by the user (SW reset or Reset-pin-to-GND short) a timeout will be enabled.
|
- Smart reset behavior: If the MCU has been reset by the user (SW reset or Reset-pin-to-GND short) a timeout will be enabled.
|
||||||
If the reset is a Power on Reset (meaning that the user has just connected the Keyboard to the power) it will jump to the
|
If the reset is a Power on Reset (meaning that the user has just connected the keyboard to the power) it will jump to the
|
||||||
UHK application if its present on the memory.
|
application firmware if its present on the memory.
|
||||||
|
|||||||
Reference in New Issue
Block a user