Kaleidoscope/docs/plugins/FirmwareDump.md

44 lines
1.2 KiB

# FirmwareDump
This plugin provides a single Focus command: `firmware.dump`, which dumps the
firmware's executable code. One might rightfully wonder what purpose this serves
when the source code is available, but rest assured, there is one: in case one
wants to temporarily replace their firmware, then put it back on, without having
to carry the HEX file around, this command makes that possible: dump the
contents, turn them into HEX, and it can be re-flashed at any point. We get a
HEX file on-demand, and don't have to carry it around!
The intended primary user of this feature is [Chrysalis][chrysalis].
[chrysalis]: https://github.com/keyboardio/Chrysalis
## Using the plugin
To use the plugin, include the header, and add it to your list of plugins:
```c++
#include <Kaleidoscope.h>
#include <Kaleidoscope-FocusSerial.h>
#include <Kaleidoscope-FirmwareDump.h>
KALEIDOSCOPE_INIT_PLUGINS(FocusSerial, FirmwareDump);
void setup () {
Kaleidoscope.setup();
}
```
## Focus commands
The plugin provides a single [Focus][FocusSerial] command:
[FocusSerial]: FocusSerial.md
### `firmware.dump`
> Dumps the entire firmware (bootloader not included), even the unused parts.
## Dependencies
* [Kaleidoscope-FocusSerial][FocusSerial]