Review Nextion HMI Touchscreen with GPIO

I don't think the people who sent me this touchscreen are going to be very happy with this review. But that's the peril of asking bloggers to assess your kit, isn't it?

The good folks at Sonoff have sent me a review unit of their "7.0" Nextion Enhanced HMI Capacitive Touch Display with Enclosure". A USB powered touchscreen - with a range of hackable goodies.

A screen with some wires

It's a device which sadly fails to live up to its promise.


Let's get the specs out of the way, then see how it works!

  • Display Resolution: 800 x 480
  • Realtime Clock, if you add a battery
  • GPIO
  • Up to 32G Micro SD card (FAT32 file format)
  • Internal flash data storage space: 32MB
  • EEPROM: 1024 bytes
  • RAM: 8192 bytes (not a typo - miniscule RAM)
  • Instruction buffer: 1024 bytes
  • Colour: 65536 colours
  • Brightness: 0~230 nit
  • Display Interface: Serial
  • Board Size: 181mm*108mm
  • Weight: 598 g
  • Cost $88 - $108 depending on options

So, a pretty simple screen with some connectivity options. This isn't an Android tablet, it's more like a Raspberry Pi - waiting for you to have adventures with it.

Just a note on that - this is not a display screen. You can't just plug in an HDMI cable - you program the display directly either using an Arduino Foca to flash it or saving the interface to an SD card.

The output is ideally suited to an Arduino, but you can make it work with a Raspberry Pi.

The price is simply far too high for the spec and functionality. For less money you can get a range of HDMI & USB touch screens which will work directly with a Pi or any computer.

What's in the box?

This touchscreen comes in a range of styles - this is the one with a plastic enclosure. Want to 3D print your own mount? Model files are available - which is pretty nifty!

It's powered by a standard USB 5V/1A supply. You get this little adapter if you don't want to wire the power in directly.


Nextion provide software for creating interfaces like this:

The GUI design software is Windows only. That's an annoying limitation. There seems to be no way to run on a Mac. I was unable to get the software to run in WINE for Linux. Instead, you need to install PlayOnLinux, use WineTricks to install DotNet, and then use this script to install the Nextion Editor. It took a few hours and was a pain in the arse!

Eventually, after installing, you'll get to this rather complex screen:

A complex and confusing configuration screen

Good luck figuring out what it does. There is a Quick Start Guide - which is rather long-winded. It's probably best to start with the demo file

Demo Project

I downloaded the demo project, loaded it into the editor, and then hit compile. Then got confused.

The editor doesn't tell you where it has saved the compiled file. It wasn't in the same directory as the demo. Weirdly, the compiled .tft file was automatically placed in this folder:

./.PlayOnLinux/wineprefix/Nextion/drive_c/users/edent/Application Data/Nextion Editor/bianyi/example.tft

I copied the file to a micro SD card and shoved that into the Nextion. It is possible to transfer the files directly via the serial port, but I wasn't sure how well it would work with Linux.

I inserted the card, powered it on, and got this screen.

Nextion Screen Uploading

9600 Baud. Wow. The demo file is around 5MB. That should take around 90 minutes to install! After two hours, it still hadn't moved. I pulled out the SD card, rebooted it, and got the demo screen!

Nextion Screen Displaying Contents

Well... it works. The screen is a bit murky and has very restricted viewing angles. Turn it a few degrees and colours go weird. The contrast on the colours isn't great. When on, the screen is tiny compared to the casing around it. The screen reacted rapidly to touches.


There is a support forum and a wiki. I found both to be rather disorganised - they left me with more questions than answers.

As with all tinkering hardware, I don't expect a fully polished website - but I found it really hard to find out basic information like how to upload new images. I'll admit to being rather intimidated by the hostile nature of the Q&A section.


I know I've been sent this product free of charge to review - but I cannot recommend it.

The lack of Linux support really grates. This screen is aimed at the maker community and we don't all run Windows! Given that it is expressly designed to work with Arduino and Raspberry Pi, it is unfathomable that Linux support is so poor.

Creating a UI is also painful. The software allows for rich and intricate GUIs - but it is hidden behind an atrocious interface. For something this complex, I'd expect decent tutorials and instructions - but there are none.

Uploading GUIs takes ages. It is impossible to make a quick change to something. For a prototyping board, that's unacceptable. I want to be able to design a GUI, try it out, fiddle with it, then change it again. I can't.

I think that, ideally, it would make sense for an interactive display like this to run a tiny embedded browser and have the GUI designed in HTML, CSS, and JavaScript. Even if it is compiled down to something which could be run on a low power device, that's got to be better than working with the default editor.

If you want an interactive screen - I'd recommend a cheap Android tablet. If you desperately need GPIO pins - get a Raspberry Pi and HDMI touchscreen. Either one of them will have a WiFi connection - which this is sorely lacking.

You can buy the Nextion Touch Display direct from the manufacturer.

3 thoughts on “Review Nextion HMI Touchscreen with GPIO

  1. Generally speaking, the HMI product line is not made to server as a main display for RPI nor any other platform with linux system.
    A plain HDMI display is more than enough for these systems.

    Nextion HMI is born for embedded systems like Arduino and other MCUs developers.
    These guys are suffering from GUI development.
    Think about that, making GUI in C language for a ST or Atmel microcontroller is a nightmare.
    And here comes Nexiton to help you turn your technology into art.

    I think you would have to write exactly the same about 4dSystems, MikroElektronica and all the others out.
    None of them offer MAC or Linux software support, none of them offer a plain HDMI connect ...
    And indeed their virtual Designer Software is even more complex ...

    BTW, the major market of Nextion product line is industrial market.

    Yep, as a marketing director from ITEAD, obviously I am not happy with this review.
    But the foundation we work with the reviewers is "tell the readers what you really think".
    So, it's OK, the cooperation continues.

    Actions speak louder than words. Would you please do an experiment?

    Step #1

    Adopt Arduino and a plain LCD, develop the same thing, same function like the demo

    Step #2

    Do it again follow the demo video.

    And tell the readers what you think.


    Jerry Shi
    ITEAD Studio

  2. I find this review very unfair. I have experience with PLC HMI interfaces that costs 500USD at least and most of them have worst capabilities than Nextion. Saying that Nextion has poor Linux support is not correct too. Every program communicating by RS232 can communicate with Nextion screen. Keeping graphical interface inside screen is great idea in Arduino projects where computer's memory would be insufficient. At this time I'm making "intelligent home" project on which I'm going to consolidate weather station, internet interface, home temerature controlls, LPG and carbon-monoxide allarms and home heating system on one main device with screen control. Without Nextion visualisarion would be very poor. On Nextion I can make photo-based screens with many buttons and bars. It's ideal for my project.
    Of cours Nextion is not an perfect product. I have previous version of it. 16MB memory insufficient. I think that using SD-card as additional store would be useful. Another thing that could be done better is lack of transparrency of images. Mabe Itead should think about adding custom masks for crop images?

    1. I'm sorry you feel this way - but nothing I've written is untrue. The lack of Linux support refers to the Nextion Editor GUI design software. The colour reproduction on the screen is not great. The screen is small. It does take a long time to upload files to the display. I believe you when you say that other vendors produce worse products - but I haven't been asked to review them.

Leave a Reply to Jerry Cancel reply

Your email address will not be published. Required fields are marked *