What is Nextion Editor?
Nextion Editor is the official free software for designing user interfaces for Nextion HMI displays. It's a WYSIWYG (What You See Is What You Get) editor that lets you create professional touchscreen interfaces without complex programming.
Nextion Editor Features
- Drag-and-drop interface design
- Real-time simulator preview
- Event-driven programming
- Image and font import
- One-click upload to display
Installation
- Download Nextion Editor from nextion.tech
- Run the installer (Windows only, use Wine on Mac/Linux)
- Launch Nextion Editor from Start menu
- Create a new project and select your display model
Editor Interface
| Panel | Purpose |
|---|---|
| Toolbox | UI components (buttons, text, gauges, sliders) |
| Canvas | Design area matching your display size |
| Page List | Manage multiple screens/pages |
| Attributes | Properties of selected component |
| Events | Code for touch/release/timer events |
| Output | Compilation messages and errors |
UI Components
Basic Components
- Text (t0, t1...) - Static or dynamic text labels
- Number (n0, n1...) - Numeric values with formatting
- Button (b0, b1...) - Clickable buttons with states
- Picture (p0, p1...) - Image display from memory
- Crop (q0, q1...) - Partial image display
Advanced Components
- Progress Bar (j0) - Horizontal/vertical progress
- Gauge (z0) - Circular meter display
- Slider (h0) - User-adjustable value input
- Waveform (s0) - Real-time data plotting
- Timer (tm0) - Periodic code execution
Nextion Instruction Set
Nextion uses a simple instruction set. Here are the most common commands:
// Change text
t0.txt="Hello World"
// Change number value
n0.val=123
// Change component color
t0.pco=RED // or use number: t0.pco=63488
// Navigate to another page
page 1 // or: page pagename
// Send data to MCU
print "data"
printh 65 01 02 03 // hex values
// Variables
va0.val=100
sys0=50 // system variable
// Conditional
if(bt0.val==1) {
t0.txt="ON"
} else {
t0.txt="OFF"
}
Display Models
| Series | Features | Best For |
|---|---|---|
| Basic | Resistive touch, 256 colors | Hobbyist projects |
| Discovery | Resistive, GPIO pins | Simple HMI |
| Enhanced | More RAM, RTC, GPIO | Professional |
| Intelligent | Capacitive touch, 65K colors | Industrial |
Arduino Integration
Wiring (5V tolerant)
- Nextion TX → Arduino RX (pin 0 or SoftwareSerial)
- Nextion RX → Arduino TX (pin 1 or SoftwareSerial)
- Nextion 5V → Arduino 5V
- Nextion GND → Arduino GND
#include <SoftwareSerial.h>
SoftwareSerial nextion(2, 3); // RX, TX
void setup() {
nextion.begin(9600);
delay(500);
// Set text on display
nextion.print("t0.txt=\"Hello\"");
nextion.write(0xFF);
nextion.write(0xFF);
nextion.write(0xFF);
}
void loop() {
// Read touch events
if (nextion.available()) {
// Handle incoming data
}
}
Nextion Displays
We're official Nextion distributors for Europe. Browse our full range!
See our Nextion Smart Home Interface project.
Frequently Asked Questions
Do I need programming experience to use the Nextion Editor?
No, the Nextion Editor is designed to be accessible for beginners. While programming experience helps with advanced features, you can create functional interfaces using the drag-and-drop interface and simple commands. The event-based system is much simpler than traditional GUI programming.
Can I use custom fonts in my Nextion project?
Yes, the Nextion Editor allows you to import TrueType fonts (.ttf). Go to Tools > Font Generator, import your font file, select the characters you need, and generate the font. Remember that fonts consume memory, so only include necessary characters and sizes.
What is the difference between Basic, Enhanced, and Intelligent Nextion displays?
Basic series are entry-level with core HMI features. Enhanced series add GPIO pins, larger flash memory, and RTC functionality - best for most projects. Intelligent series include SD card support, more memory, and enhanced processing for complex applications with extensive graphics or data logging.
How do I upload my compiled TFT file to the Nextion display?
There are two methods: 1) microSD card upload (recommended) - copy the TFT file to a microSD card, insert into the Nextion, power on, it will auto-update; 2) Serial upload - use the Nextion Editor's upload tool to send the file via serial connection, though this is slower for large files.
Can I animate elements on a Nextion display?
Yes, you can create animations using timer components to update component properties at regular intervals, crop images to create sprite-based animations, or use the picture component to cycle through image sequences. While not as smooth as dedicated animation engines, Nextion can produce effective animated effects for HMI applications.
