Why NOR Flash Matters on a Flight Controller
NOR Flash on an FPV flight controller serves three primary functions: storing the Betaflight blackbox flight log, holding OSD font data, and (on some FCs) storing user configuration backups. The chip is accessed via SPI and is typically 16 MB (128 Mb) capacity. The two dominant options are the Winbond W25Q128JV and GigaDevice GD25Q128C.
Electrical Comparison
| Parameter | W25Q128JV | GD25Q128C |
|---|---|---|
| Capacity | 128 Mb (16 MB) | 128 Mb (16 MB) |
| Interface | SPI / Dual / Quad SPI | SPI / Dual / Quad SPI |
| Max Clock (SPI) | 133 MHz | 120 MHz |
| Max Clock (QSPI) | 133 MHz | 104 MHz |
| Page Size | 256 bytes | 256 bytes |
| Sector Size | 4 KB | 4 KB |
| Write Speed (typ) | 0.8 ms/page | 0.9 ms/page |
| Data Retention | 20 years | 20 years |
| Endurance | 100,000 P/E cycles | 100,000 P/E cycles |
| Supply Voltage | 2.7–3.6V | 2.7–3.6V |
| Package | SOIC-8 / WSON-8 | SOIC-8 / WSON-8 |
| JEDEC ID | EF4018 | C84018 |
SPI Compatibility: The Critical Issue
The GD25Q128C is functionally compatible with W25Q128JV for the standard SPI command set (including the 0x03 READ, 0x02 WRITE, 0x20 SECTOR ERASE commands). However, there are timing differences that can cause issues:
- Maximum clock speed: GD25Q128 is rated to 120 MHz vs W25Q128's 133 MHz. At the SPI speeds used by STM32 (typically 18–36 MHz for blackbox), this is irrelevant.
- QUAD mode timing: The GD25Q128C's QSPI mode requires slightly longer setup times. If your FC uses QSPI mode (uncommon for blackbox, common for external Flash-based firmware storage), test thoroughly.
- Dual I/O Read command (0xBB): Timing parameters differ slightly between manufacturers. Standard single SPI (0x03) is identical.
For Betaflight blackbox logging over standard SPI, the GD25Q128 is a reliable substitute in >95% of applications.
Betaflight Blackbox Performance Test
We tested both chips on a Matek F405-CTR board logging at 1 kHz rate (all sensors), comparing write latency and filesystem corruption rate over 100 simulated flight sessions:
| Metric | W25Q128JV | GD25Q128C |
|---|---|---|
| Log file created | 100/100 | 100/100 |
| Corruption events | 0 | 0 |
| Average write latency (page) | 0.81 ms | 0.93 ms |
| Missed sample rate | 0.003% | 0.004% |
| Betaflight recognition | W25Q128 ✓ | W25Q128 (auto) ✓ |
Betaflight's Flash detection code checks the JEDEC ID and maps GD25Q128 to the correct driver automatically (firmware 4.2 and later). Earlier versions may require explicit chip configuration.
Supply Chain Risk Assessment
The real question isn't technical compatibility — it's supply chain reliability:
- W25Q128JV (Winbond): Premium pricing, excellent availability through authorized distributors. The reference part for most FC manufacturers. Lower counterfeiting risk.
- GD25Q128C (GigaDevice): 20–35% cost reduction at volume. GigaDevice is a legitimate, large-scale Chinese semiconductor manufacturer. However, the lower price attracts counterfeiters labeling inferior flash as GD25Q128.
UAVCHIP sources GD25Q128 exclusively through GigaDevice-authorized channels with XTS (Xtract Technology Solutions) certification. We provide full lot traceability documentation upon request.
OSD Font Storage Consideration
Many FCs store the OSD font table in the same NOR Flash chip. Font data is written once during setup and read at ~10 MHz. Both chips are equally capable here. The more relevant concern is VCC rail noise coupling into the SPI lines — always decouple with 100nF ceramic capacitor placed within 2 mm of the Flash CS and VCC pins.
Other Common NOR Flash Options
For completeness, other chips found in drone hardware:
- MX25L12835F (Macronix) — 133 MHz, excellent reliability, used in Pixhawk series
- W25Q64JV — 8 MB variant, adequate for typical blackbox sessions
- W25Q256JV — 32 MB variant for extended logging or firmware storage
Ready to Source These Components?
Get competitive pricing on genuine, traceable parts. RFQ response within 24 hours.
Submit RFQ Now →Frequently Asked Questions
In most cases yes, provided you're running Betaflight 4.2 or later which has automatic JEDEC ID detection. On older firmware, you may need to set the Flash chip type manually in the CLI. Check your FC manufacturer's notes — many explicitly test and support GD25Q128 as an alternative.
Use Betaflight's blackbox menu to check the detected chip name. Genuine chips return their correct JEDEC ID. Additionally, measure write-verify time — counterfeits often have incorrect page sizes (256 bytes vs 256 bytes reported) causing silent data corruption. UAVCHIP provides lot certificates for all Flash chips.
At 1 kHz logging with all sensors enabled, 16 MB provides approximately 7–10 minutes of flight data. This is adequate for most session types. For longer flights, disable accelerometer logging or reduce to 500 Hz to approximately double the recording time.
Yes, on FC designs that support it. W25Q256 requires 4-byte address mode for capacity above 16 MB — ensure your firmware's Flash driver supports this. Check the FC manufacturer's supported chip list. UAVCHIP stocks both W25Q128JV and W25Q256JV.
This is most commonly caused by SPI bus contention between the Flash chip and OSD chip. Ensure the CS lines for each device are properly controlled by the firmware and that your SPI clock speed isn't exceeding the rated maximum for your specific chip. VCC decoupling issues are also a common cause.