Boox removed much of the fastboot functionality from the NoteAir3 with update 3.5.3. I was able to restore that funcionality on my NoteAir3 (firmware 3.5.4_1) by flashing abl.img from firmware 3.5.1. If you try this on other firmware versions, please post your success (or failure) here. The following commands are for Linux. You may have to tweak them for Windows.
My abl.img file is attached, or you can perform the following steps to download your own.
# Download 3.5.1 firmware full update from
http://firmware-us.boox.com/7e49cc40...7c5/update.upx
# Download DeBooxUpx.py and BooxKeys.csv from
https://github.com/Hagb/decryptBooxUpdateUpx
Code:
python DeBooxUpx.py NoteAir3 ./update.upx
unzip update.zip
# Download payload-dumper-go from
https://github.com/ssut/payload-dumper-go
# Extract abl.img from payload.bin
Code:
payload-dumper-go -p abl ./payload.bin
# Install edl from
https://github.com/bkerler/edl
# If you are on Windows, you can use @Renate's EDL from
https://www.temblast.com/android.htm
# Download this loader <url>https://www.temblast.com/download/goco7.bin</url>
# Make a full backup just in case. This will require 64G free disk space and take about 30 minutes.
Code:
mkdir -p backup-3.5.4_1/full
adb reboot edl
./edl/edl --loader=./edl/goco7.bin --memory=ufs rl ./backup-3.5.4_1/full/
# Back critical partitions.
Code:
mkdir backup-3.5.4_1/img
./edl/edl --loader=.edl/goco7.bin --memory=ufs r devinfo backup-3.5.4_1/img/devinfo.img
./edl/edl --loader=.edl/goco7.bin --memory=ufs r boot_a backup-3.5.4_1/img/boot_a.img
./edl/edl --loader=.edl/goco7.bin --memory=ufs r boot_b backup-3.5.4_1/img/boot_b.img
./edl/edl --loader=.edl/goco7.bin --memory=ufs r vbmeta_a backup-3.5.4_1/img/vbmeta_a.img
./edl/edl --loader=.edl/goco7.bin --memory=ufs r vbmeta_b backup-3.5.4_1/img/vbmeta_b.img
./edl/edl --loader=.edl/goco7.bin --memory=ufs r vbmeta_system_a backup-3.5.4_1/img/vbmeta_system_a.img
./edl/edl --loader=.edl/goco7.bin --memory=ufs r vbmeta_system_b backup-3.5.4_1/img/vbmeta_system_b.img
./edl/edl --loader=.edl/goco7.bin --memory=ufs r recovery_a backup-3.5.4_1/img/recovery_a.img
./edl/edl --loader=.edl/goco7.bin --memory=ufs r recovery_b backup-3.5.4_1/img/recovery_b.img
./edl/edl --loader=.edl/goco7.bin --memory=ufs r abl_a backup-3.5.4_1/img/abl_a.img
./edl/edl reset
# Get the current slot - remember it, you will need it later
Code:
adb reboot bootloader
fastboot getvar current-slot
current-slot: b
# Flash the abl from 3.5.1
Code:
fastboot reboot
adb reboot edl
# Note - on my first attempt at writing abl, edl hung on "Mode Detected". I held down the power button until the Note rebooted, then tried a different USB cable and port. It worked fine on the second attempt.
Code:
./edl/edl --loader=./edl/goco7.bin --memory=ufs w abl_a ./extracted_20251227_160009/abl.img
./edl/edl --loader=./edl/goco7.bin --memory=ufs w abl_b ./extracted_20251227_160009/abl.img
./edl/edl --loader=./edl/goco7.bin setactiveslot b (use a or b from getvar current-slot above)
./edl/edl reset
# Test fastboot
Code:
adb reboot bootloader
fastboot boot ./backup-3.5.4_1/img/boot_b.img