Professional Firmware for the Voxelab Aquila and Creality Ender-3 3D Printers
(Or any other compatible 3D Printer)
Visit the Wiki for more information about this firmware and the features it provides
Checkout this Universal 3D Printer Adapter Breakout Board
I designed and made it to be used for upgrading the hotend.
And don't forget about the thingiverse models I've designed:
Minimalist Dual Cooling Fan Shroud for Aquila / Ender-3 V2
Tool Box for Middle Extrusion "VOXELAB" engraved
Fantastic Filament Guide for Aquila
Raspberry Pi Zero Case Mount 30mm case width
G32, N32, H32, Creality 4.2.7 and 4.2.2 boards
(Also available for E3 Free-runs, BTT SKR Mini E3, STM32F401, GD32F303, and others)
Important
Please read the following:
Note
Many Updates have been included in the most recent MRiscoCProUI for the 2025-July release. This release has many changes to the UI. New ICON's have been added, and old ones enhanced. Whoever edited them before saved directly as .JPG which in many editors lowers the quality of the image. I painstakingly remastered almost every single one; preserving the original quality.
You must REFLASH the LCD Display with the new DWIN_SET; which is located in the
display assets
folder.
If you encounter any issues, have a suggestion, or feature requests please feel free to post it on the Issues tab, otherwise if everything is going well please leave a comment on the Discussions tab.
I will be working on more upgrades and features and tweaks along the way. Enjoy using this fork of Marlin as I intend it to be the best; easy to use and convenient. So far I really enjoy the new settings and toolbar for the main menu. There is a variety of parameters and options that can be changed without having to reflash the firmware.
Tip
If you start printing and it says Advance Pause
while Runout is enabled, you may have to change the state in which it triggers "no filament" to HIGH or LOW (depending on what is already selected).
This is found in:
Prepare -> Filament Management -> Filament Settings -> Runout Active
Important
Information regarding HC32:
Warning
FOREWARNING: So far everything has been working great - as normal - except there is an issue with the initialization of the SD card media. If you get a message saying this has failed, just reinsert the card or reboot. Keep trying if this doesn't work the first time.
Caution
G-code Thumbnail Preview has been disabled for HC32 boards for the time being. When enabled, the screen may freeze and restart when the SD card is inserted. This means that everything so far seems to work correctly as it should, except for when an SD card is inserted, so printing may not be possible unless you use USB serial interface to upload the file (through a slicer or something like OctoPrint, or Pronterface).
Note
H32->HC32 support has been added to the Marlin Firmware repository. Please post any Issues there first, otherwise if there are any ProUI specific issues or anything else to report please do so under Issues tab here. You can find the original HC32 repo here @shadow578/Marlin-H32
General information about the firmware and updates is located in the Wiki page What's New In This Release.
Other changes and updates are addressed here.
There is a MarlinSimulator file provided to test out for yourself. It simulates a pre-built configuration of this firmware.
The MarlinSimulator can compile for Manual Mesh Bed Leveling or Auto Bed Leveling w/BLTOUCH
enabled.
Start in Configuration.h and change the MOTHERBOARD
to BOARD_SIMULATED
, then disable ENDSTOP_INTERRUPTS_FEATURE
and PROUI_EX
.
Then in platformio.ini at default_envs =
change to simulator_windows
(for Windows) | simulator_linux_release
(for Linux).
If there is an error run ./buildroot/share/scripts/simulator_error.sh
or change the following manually:
- Replace
#define INVERT_E0_DIR HMI_data.Invert_E0
with#define INVERT_E0_DIR false
(or comment it and#undef INVERT_E0_DIR
out) in proui/dwin_defines.h. - Comment out
#undef Z_MIN_ENDSTOP_HIT_STATE
in inc/Conditionals-5-post.h. - Replace
-flto
with-fno-lto
atrelease_flags =
under[simulator_common]
in native.ini.
For MacOS you're on your own...sorry.
Then you have to extract SDL2-devel-2.32.2-mingw.zip from /docs. Or for the latest releast go to libsdl-org/SDL/releases and look for the latest SDL2 version (NOT SDL3) You can either copy/paste the files directly, or install them. It's recommended to install them, but if you have any issues, then try copy/paste method.
Navigate to the extracted SDL2 directory in an MSYS2 or bash terminal (Run as Administrator):
To install SDL for native (32-bit) development:
make native
To install SDL for cross-compiling development:
make cross
It's recommended to do both make native
and make cross
.
For 64-bit - If you receive an error, then try the following:
make install-package arch=x86_64-w64-mingw32 prefix=/usr
Copy/Paste Files You may have to first Build so the directory can be created, but you can:
- Copy the contents of ~\SDL2-2.32.2\x86_64-w64-mingw32\include\SDL2\*, paste into the directory .pio\libdeps\simulator_windows\imgui
-OR-
- Copy the just folder ~\SDL2-2.32.2\x86_64-w64-mingw32\include\SDL2, paste into the directory .pio\libdeps\simulator_windows
Once all that is done, just Build like you would normally and MarlinSimulator.exe will be created.
These are the files you need to install:
sudo apt install libsdl2 libsdl2-dev libsdl2-net-dev libsdl2-2.0-0 libglm-dev
- There may be other basic ones if you don't have already; like python, cmake, pip...
- Open the executable program found in .pio\build\simulator_<windows/linux>
-
- For Linux, enter in a terminal
./MarlinSimulator
- For Linux, enter in a terminal
- Under
SD Card
, underComponents
on the right side, select or load an image - Select Serial Monitor(1)
- Use like a normal terminal, enter
G28
to watch it Home
The Precompiled binary files of this firmware can work with STM32 (STM32F103RET6/RCT6 - STMicroelectronics) and it's clones:
- G32 (GD32F103Rx - GigaDevice)
- N32 (N32F103Rx / N32G455x - Nation)
- H32 (HC32F460x - Huada Semiconductor/HDSC)
They can be downloaded here:
Releases
Thank you for your support.
Please consider making a donation, as large or as small and as often as you'd like.
Ko-fi
Venmo
Paypal - Single payment
- Voxelab Aquila Facebook Group
- Telegram
- r/VoxelabAquila on Reddit
- r/ender3V2 on Reddit
- r/Ender3v2Firmware on Reddit
- E3V2 Facebook
- E3S1 Facebook
The Issue Queue is reserved for Bug Reports and Feature Requests. Please use the following resources for help with configuration and troubleshooting:
- Marlin Documentation - Official Marlin documentation
- Marlin Discord - Discuss issues with Marlin users and developers
- Facebook Group "Marlin Firmware"
- RepRap.org Marlin Forum
- Facebook Group "Marlin Firmware for 3D Printers"
- Marlin Configuration on YouTube
Thanks to Reddit u/schuh8 and GitHub @whasupjohn for donating his board to help test the firmware.
Join the Voxelab Aquila Facebook Group
This fork of MRiscoC's Professional Firmware is maintained by @classicrocker883 (yours truly)
ProUI is a Marlin based firmware maintained by @mriscoc
The fork for H32|HC32 firmware is maintained by @shadow578
Marlin is maintained mainly by @thinkyhead
This work would not be possible without me spending time working on it for free.
I would greatly appreciate supporters, helpers, and beta testers whenever possible.
Please show your support by considering making a donation, or giving your input if you end up using this firmware.
It wasn't easy getting it to this point. I am just a basic programmer and the work is mostly trial and error. Thank goodness for VS Code's compiler and also AI like ChatGPT which shows me what changes need to be made as I make them.
- Marlin Firmware is an Open Source project and owned and maintained by the maker community.
- VS Code is an IDE program owned and maintained by Microsoft.
THIS FIRMWARE AND ALL OTHER FILES IN THE DOWNLOAD ARE PROVIDED FREE OF CHARGE WITH NO WARRANTY OR GUARANTEE. SUPPORT IS NOT INCLUDED JUST BECAUSE YOU DOWNLOADED THE FIRMWARE. WE ARE NOT LIABLE FOR ANY DAMAGE TO YOUR PRINTER, PERSON, OR ANY OTHER PROPERTY DUE TO USE OF THIS FIRMWARE. IF YOU DO NOT AGREE TO THESE TERMS THEN DO NOT USE THE FIRMWARE.
For the license, check the header of each file, if the license is not specified there, the project license will be used. Marlin is licensed under the GPL.