Welcome to OpenHC32Boot, your gateway to advanced firmware updates for the HC32F460 series of microcontrollers! 🎉
OpenHC32Boot is more than just a bootloader; it's a powerhouse of features tailored to enhance your HC32F460 microcontroller experience. Here's what it offers:
Say goodbye to complicated update procedures! OpenHC32Boot simplifies firmware updates by allowing you to simply place a firmware binary on an SD card. Keep your device up-to-date effortlessly.
Stay informed throughout the update process with our screen support feature. Get real-time feedback and updates on your device's status.
Currently supporting these screens:
- DWIN screens (as used by Voxelab Aquila X2).
Never accidentally re-flash the same firmware again! OpenHC32Boot verifies firmware integrity to ensure efficient use of flash memory and prevent unnecessary cycles.
We've designed OpenHC32Boot to be nearly unbrickable. Our bootloader prevents overwriting during updates and safeguards critical flash areas, ensuring your device stays safe even during erroneous updates.
Protect your device from malfunctioning or incompatible applications. OpenHC32Boot verifies user applications before booting, ensuring a smooth and responsive user experience every time.
All these features come with minimal flash usage. OpenHC32Boot is designed to be lightweight and efficient, leaving more space for your applications. In practice, OpenHC32Boot consistently uses less flash than the stock bootloaders shipped with most HC32F460 devices, even with all features enabled.
To install OpenHC32Boot, you'll need:
- HC32F460-based 3D printer or development board
- VSCode with PlatformIO installed
- CMSIS-DAP compatible SWD debug probe (e.g., Raspberry Pi Debug Probe)
Note
other debug probes may work as long as they are supported by pyOCD
Follow these simple steps to install OpenHC32Boot:
- Backup your current bootloader so you can revert if needed.
- Clone or download the OpenHC32Boot repository.
- Open it in VSCode, ensure PlatformIO is installed and active.
- Configure the bootloader by editing
config.h
andconfig_adv.h
. - Select the appropriate build environment in PlatformIO.
- Upload the bootloader using PlatformIO and your debug probe.
- Reboot your device into the new bootloader, ready for firmware updates!
Tip
If your board is not supported, you may need to add a new board configuration. Use existing configurations as a reference, while referring to Marlins board definition file for your board (if it happens to be a 3D-printer).
We welcome contributions to OpenHC32Boot! Whether you've found a bug, have an improvement idea, or want to add new features, feel free to open an issue or submit a pull request.
While we strive for excellence, please understand that OpenHC32Boot comes with no guarantees of stability or suitability for specific purposes. Use it at your own risk, and evaluate its performance in your particular use case. Support is provided on a best-effort basis, and developers may not be able to address all issues.
OpenHC32Boot is licensed under GPL-3.0.
README authored by ChatGPT 🤖