Adafruit GFX Library Compatibility
Graphics, text, bitmaps and fonts for compatible displays.
- Pinned version
- 1.12.6
- Last matching compile evidence
- 2026-10-25
- Toolchain
- avr-gcc-wasm@0.2.0
- Primary headers
- Adafruit_GFX.h, Adafruit_GrayOLED.h, Adafruit_SPITFT.h, gfxfont.h, Adafruit_SPITFT_Macros.h
Dependencies and practical limits
Graphics, text, bitmaps and fonts for compatible displays.
GFX provides drawing APIs; it needs a compatible display driver or a RAM canvas.
Font and framebuffer allocations can consume significant SRAM beyond a sketch’s apparent source size.
Pinned direct dependencies: Adafruit BusIO
For a missing header, first compare the include to the example below. For an undeclared identifier, inspect the first diagnostic and selected board rather than changing every library version.
Board compile matrix
These are recorded compile/link results for the current build and exact source hash. UNTESTED means no matching proof, not an assumed pass. Memory values belong to the listed example and exclude runtime stack/heap or dynamic buffers.
| Board/profile | Result | Flash bytes | Static SRAM bytes | Last tested |
|---|---|---|---|---|
| Arduino Uno R3 — ATmega328P | PASS | 10952 | 533 | 2026-10-25 |
| Arduino Nano V3 — ATmega328P (new bootloader) | PASS | 10952 | 533 | 2026-10-25 |
| Arduino Nano V3 — ATmega328P (old bootloader) | PASS | 10952 | 533 | 2026-10-25 |
| ATmega328PB — 16 MHz | PASS | 11168 | 533 | 2026-10-25 |
| Arduino Mega 2560 — ATmega2560 | PASS | 11808 | 533 | 2026-10-25 |
| Arduino Leonardo — ATmega32U4 · native USB | PASS | 13588 | 497 | 2026-10-25 |
| Arduino Micro — ATmega32U4 · native USB | PASS | 13590 | 497 | 2026-10-25 |
| Arduino Pro Mini — 5 V · 16 MHz | PASS | 10956 | 533 | 2026-10-25 |
| Arduino Pro Mini — 3.3 V · 8 MHz | PASS | 10944 | 533 | 2026-10-25 |
Build: e0f6d304cce4ae0a0989a9b1300cbc1a21a595e5e3e7f57ed0ab3468ecf7940b. Library source hash: bb954e850f80093f13f39df02a3fb4a7fcd87f4904671cc32a424fbb31f842ed. Compilation does not certify physical peripherals, timing or USB upload.
GFX canvas example
This is the actual pinned example available in Circuitera. Pin choices and wiring in a general example use Uno unless otherwise stated; review the selected board reference for other targets.
#include <Adafruit_GFX.h>
GFXcanvas1 canvas(16, 16);
void setup() {
Serial.begin(9600);
canvas.fillScreen(0); canvas.drawLine(0, 0, 15, 15, 1);
canvas.drawCircle(8, 8, 5, 1); canvas.setCursor(0, 0); canvas.print("A");
Serial.println(canvas.getPixel(8, 8));
Serial.println(canvas.getBuffer()[0], HEX);
}
void loop() {}
Projects using Adafruit GFX
Upstream source and documentation ↗
Pinned source archive (1.12.6) ↗
Read the test methodology →