Device Hub — Note Air 1

Device Hub — Note Air 1

Canonical hardware reference for the Onyx Boox Note Air 1. All facts here are confirmed from physical device inspection (Phase 01) and EDL partition dumps. Use this as the ground truth when making porting decisions.


Hardware Identity

FieldValue
Marketing nameOnyx Boox Note Air
Model (ro.product)NoteAir
SoCQualcomm SDM636 (Snapdragon 636) — “sdm660” platform
CPUKryo 260 (4×A73 + 4×A53), arm64-v8a
GPUAdreno 509
RAM3 GB LPDDR4
StorageeMMC (not UFS)
Display10.3″ E-ink, 1872×1404, driver: onyx_epdc_fb
TouchWacom EMR (i2c@c1b6000/wacom@09) + capacitive overlay
Android version10 (SDK 29)
Kernel4.4.x (Onyx binary, no source published)
VNDK29
Boot image headerv0, page size 2048
TrebleEnabled (ro.treble.enabled=true, separate vendor partition)
Partition schemeSingle-slot, static (GPT)
EncryptionFDE (full-disk encryption, auto-encrypt, no password)
Userdata FSext4

Partition Table (from EDL printgpt)

PartitionSizeNotes
xbl3.5 MBExtensible bootloader (XBL) — chip-specific, do not replace
abl256 KBAndroid bootloader — custom ABL v2.4 currently flashed
boot64 MBKernel + ramdisk (header v0)
recovery64 MBTWRP v3.7 currently flashed
system3.5 GBAOSP + Onyx apps (ext4)
vendor1 GBQualcomm sdm660 HALs (ext4)
userdata~50 GBUser data (ext4, FDE)
persist32 MBCalibration data — never wipe
misc4 MBBCB (bootloader control block)
modem100 MBBaseband firmware
cache256 MBAndroid cache

Key HAL Blobs (vendor partition)

BlobPurpose
hwcomposer.sdm660.soDisplay composer — calls onyx_epdc_set_mode() kernel symbol
gralloc.sdm660.soGraphics buffer allocator
android.hardware.graphics.composer@2.1-serviceHWC service
libdisplayconfig.soDisplay config library

EPDC Driver Notes

The e-ink display controller (EPDC) driver is compiled into the kernel binary, not a loadable module. Device node: /dev/ebc. Sysfs: /sys/devices/sepdc/. Compatible string: onyx,sepdc.

Two update paths exist: (1) /dev/ebc ioctl — used by TWRP and recovery, subject to waveform transform; (2) onyx_epdc_set_mode() kernel symbol — called directly by HWC, bypasses transform. See Research → A2 Waveform Mode for full analysis.


Fastboot Behaviour

CommandResult
fastboot flash boot boot.imgWorks — verified
fastboot flash recovery recovery.imgWorks — verified
fastboot flash abl abl.elfWorks — verified (use qtestsign -v 5)
fastboot oem unlockNot needed — bootloader already unlocked
fastboot getvar allWorks — returns device info

Backups

Full EDL partition dumps stored locally in firmware/backups/ (excluded from git via .gitignore). Key partitions backed up: xbl, abl, boot, recovery, system, vendor, persist, misc, modem. Always verify MD5 checksums against the backup manifest before flashing.

More posts