Skip to main content

Sonoff NSPanel - eWelink or ESPHome

The Sonoff NSPanel EU represents a smart control panel with an integrated touch display at a very reasonable price.

ESPHome info

Specifications

  • 3.5" Nextion touch display
  • 2x physical buttons below display
  • 2x relay for 240V
  • temperature sensor
  • Wi-Fi 2.4GHz support
  • dimensions 8.6 x 8.6 x 4.2 cm
  • color gray / white
  • based on ESP32 chip

Out of the box, the device comes with firmware that uses the eWeLink cloud service. Adding the NSPanel is done through the eWeLink mobile app. After pairing, the panel shows a user interface as seen in the image above.

Download on Google PlayDownload on the App Store

With the stock firmware, you can control relays directly with the bottom buttons, view internal temperature from the panel's sensor, and see outdoor weather information, which updates quite sporadically (seemed like 4 times a day to me).

You can add control of other devices added to eWeLink, but you cannot control devices outside this cloud, which is the biggest drawback for me.

eWeLink can be further integrated with Google Assistant, Alexa, SmartThings, or Philips Hue - the basic foundation of today's systems. Additionally, there's a Home Assistant integration SonoffLAN, which you can install from HACS.

Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.

Thanks to this integration, you'll have the ability to control both relays in Home Assistant, read temperature information, and see a few other details.

  • ✅ Control relays directly from the panel
  • ✅ Display temperature from internal sensor
  • ✅ View basic weather information
  • ✅ Add other eWeLink devices

What you CANNOT do

  • ❌ Control devices outside eWeLink cloud
  • ❌ Deep Home Assistant integration
  • ❌ Custom UI or scenes
  • ❌ Offline functionality during internet outage

Alternative Firmware

Since the NSPanel contains an ESP32 chip, several alternative firmware options have emerged that expand its capabilities and overcome the limitations of the original eWeLink firmware. Let's look at the three most significant projects (they also have the most stars on GitHub):

NSPanelManager

url: github.com/NSPManager/NSPanelManager

Key Features

  • Allows loading entities from Home Assistant and OpenHAB, expanding smart home control possibilities.
  • Can function standalone without needing to connect to other systems.
  • Great emphasis on easy configuration through web interface, enabling intuitive panel function setup.
  • Support for connecting multiple NSPanels together for synchronized control.

Who is it for

  • Ideal for users who don't need complex integration with Home Assistant or other smart home systems.
  • Suitable for those who prefer simple solutions with basic customization options.

NSPanelManager

nspanel-lovelace-ui (Tasmota)

url: github.com/joBr99/nspanel-lovelace-ui

Key Features

  • Uses Tasmota as base firmware, ensuring stability and flexibility when communicating via MQTT.
  • Offers a user interface inspired by Home Assistant's Lovelace UI – allows displaying and controlling a wide range of devices (lights, sensors, thermostats, alarms).
  • Configuration is done via YAML files, providing a high degree of customization without needing to modify source code.
  • Localization support for over 30 languages ensures availability for users worldwide.

Who is it for

  • For advanced Home Assistant users who want to fully customize the appearance and functions of NSPanel.
  • Ideal for those with YAML configuration experience looking for a flexible solution.

nsppanel-lovelace-ui

NSPanel_HA_Blueprint (ESPHome)

url: github.com/Blackymas/NSPanel_HA_Blueprint

Key Features

  • Built on ESPHome, which is now part of the Home Assistant team – guarantees deep integration and long-term support.
  • Offers direct Home Assistant integration without needing external tools or services.
  • Support for Bluetooth Proxy which enables connecting BLE sensors directly to the panel.
  • Simple setup via Blueprints in Home Assistant – configuration happens directly in the system's user interface.

Who is it for

  • For Home Assistant users looking for easy setup and deep NSPanel integration into their system.
  • Ideal choice for those who want to use advanced features like BLE or OTA updates.

NSPanel_HA_Blueprint

Which variant to choose?

Each of these firmware options has its advantages. If you're unsure, here's a quick summary:

  • NSPanelManager - simple installation, works even without Home Assistant
  • nspanel-lovelace-ui - maximum control via YAML, requires advanced knowledge
  • NSPanel_HA_Blueprint - best Home Assistant integration, active development
My recommendation

In this article, we'll focus on NSPanel_HA_Blueprint (ESPHome), which I consider the best solution for most Home Assistant users. It offers easy installation, deep integration, and active community development.

wifibluetooth
NSPanel EU, šedý

Sonoff NSPanel EU, Gray

Smart control panel with integrated touchscreen display.
wifibluetooth
NSPanel EU, bílý

Sonoff NSPanel EU, White

Smart control panel with integrated touchscreen display.
usb
CP2102 USB 2.0 to TTL UART Module

CP2102 USB 2.0 to TTL UART Module

USB adapter for firmware upload (3.3V / 5.0V).

What You'll Need

Before we begin the installation, prepare the following:

Hardware

  • Sonoff NSPanel (obviously 😊)
  • USB-TTL adapter with CP2102 or CH340 chip (see product below)
  • Jumper wires Female-to-Female type (minimum 4, ideally 5)

Software

  • Installed Home Assistant with ESPHome addon
  • Computer with web browser (Chrome or Edge - for Web Serial API)
tip

If you don't have ESPHome installed yet, check out my article about ESPHome.

Safety First!

Before any manipulation with the panel, disconnect 230V power! We're working with 3.3V logic, but safety first.

Preparing NSPanel for Flashing

Before we upload the new firmware, we need to open the NSPanel and connect a USB-TTL adapter. Don't worry, it's not as complicated as it sounds.

Opening the Panel

  1. Unclip the panel from the mounting base
  2. Unscrew 2 screws at the bottom of the plastic cover
  3. Lift the plastic cover
  4. You'll find the pinout for serial communication labeled TX, RX, GND, 3V3 (and optionally GPIO0)
GPIO0 Pin

For most flashing purposes, 4 pins are sufficient (TX, RX, GND, 3V3). The GPIO0 pin can be useful for manual boot mode switching, but in the case of NSPanel, a button is used (see next step).

Connecting to USB-TTL Adapter

Pinout NSPanel

Connect the cables as follows:

NSPanelUSB-TTL Adapter
TXRX
RXTX
GNDGND
3V33V3
Watch the Crossover!

TX from the panel goes to RX on the adapter and vice versa!

Entering Bootloader Mode

  1. Disconnect NSPanel from 230V power
  2. Press and hold the left button (below the display)
  3. While holding the button, connect the USB-TTL adapter to your computer
  4. Wait 2 seconds and release the button

The panel is now in bootloader mode and ready for firmware upload.

Installing ESPHome Firmware

Now comes the fun part - uploading custom firmware! We'll use the ESPHome Web tool, which simplifies the entire process.

Step 1: Web Flashing

  1. Open your browser (Chrome or Edge) and go to web.esphome.io
  2. Click Connect
  3. Select your USB-TTL adapter from the menu
  4. Click Install
  5. Choose the Prepare for first use option
tip

If the adapter doesn't appear, check that you have the cables connected correctly and that the panel is in bootloader mode.

Step 2: Wi-Fi Configuration

After successfully uploading the basic firmware, the tool will prompt you to set up Wi-Fi:

  1. Enter your Wi-Fi network name (SSID)
  2. Enter the password
  3. The panel will automatically connect to the network

Step 3: First Boot

After successful flashing:

  1. Disconnect the USB-TTL adapter (including 3.3V power!)
  2. Reassemble the NSPanel
  3. Connect to 230V power
  4. The panel will boot with the default ESPHome UI

NSPanel first boot

Important

After flashing, you MUST disconnect the 3.3V power from the USB-TTL adapter! The panel needs 230V or 5V power from the header for normal operation.

🎉 Congratulations! You have ESPHome firmware installed. Now let's connect it to Home Assistant.

Integrating into Home Assistant

Automatic Detection

Home Assistant should automatically detect the NSPanel:

  1. Open SettingsDevices & Services
  2. In the Discovered section, the NSPanel should appear
  3. Click Configure
  4. Enter the API key (if required)
  5. Confirm addition

Manual Addition

If automatic detection doesn't work:

  1. SettingsDevices & Services
  2. Click Add Integration
  3. Search for ESPHome
  4. Enter the NSPanel IP address
  5. Enter port: 6053
  6. Confirm
How to find the IP address

Check your router or in ESPHome Web after connecting via USB.

Uploading TFT Firmware for the Display

The NSPanel display (Nextion) has its own firmware that needs to be uploaded separately. Since newer Blueprint versions, this process is significantly simpler:

  1. Open your NSPanel's page in Home Assistant (Settings → Devices & Services → ESPHome)
  2. In the Configuration section, you'll find two controls:
    • "Update TFT display - Model" - expand and select your model:
      • NSPanel EU - for European model
      • NSPanel US - for American model (portrait)
      • NSPanel US Landscape - for American model in landscape orientation
      • Variants with (CJK languages) for Chinese/Japanese/Korean
    • "Update TFT display" - after selecting the model, press this button
  3. ESPHome will automatically download the correct TFT file from GitHub and start uploading to the display
  4. A progress bar with a black background will appear on the display
  5. Transfer takes 10-20 minutes
Automatic Download

ESPHome automatically selects the correct TFT file version based on your chosen model and downloads it directly from GitHub releases. You don't need to download anything manually!

If Transfer Doesn't Start

ESPHome will automatically retry several times with different parameters. Wait up to a minute for the transfer to start. If it still doesn't work, try restarting the panel.

Manual Upload (Only if Automatic Fails)

If automatic upload repeatedly fails:

  1. Download the correct TFT file from GitHub releases
    • For EU model: nspanel_eu.tft
    • For US model: nspanel_us.tft
  2. Upload the file to a local HTTP server (e.g., to /config/www/ folder in Home Assistant)
  3. In ESPHome YAML configuration, modify the parameter:
    nextion_update_url: "http://homeassistant.local:8123/local/nspanel_eu.tft"
  4. Select the "Use nextion_update_url" model in device settings
  5. Press the "Update TFT display" button

Configuration Using Blueprint

Now comes the best part - setting up what will be displayed on the panel!

Installing the Blueprint

  1. Open this link: NSPanel Blueprint
  2. Or use the button:
Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

Creating an Automation

  1. Go to SettingsAutomations & Scenes
  2. Click Add Automation
  3. Select NSPanel Blueprint
  4. Fill in:
    • NSPanel Name: Select your device
    • Weather Entity: Select a weather entity
    • Temperature Entity: You can use the internal sensor or an external one

Adding Pages and Controls

In the Blueprint, you can configure up to 4 pages with different controls:

Page 1 - Lights:

page_1_entities:
- entity: light.living_room
- entity: light.kitchen
- entity: light.bedroom
- entity: light.hallway

Page 2 - Climate:

page_2_entities:
- entity: climate.living_room
- entity: climate.bedroom

Page 3 - Scenes:

page_3_entities:
- entity: scene.movie_time
- entity: scene.evening_relax
- entity: scene.morning_routine

NSPanel Pages

Automatic Type Detection

The Blueprint automatically detects the entity type (light, switch, cover) and displays the appropriate controls.

Advanced Features

Bluetooth Proxy

NSPanel with ESP32 can function as a Bluetooth proxy for BLE sensors:

  1. Enable Bluetooth proxy in ESPHome configuration
  2. BLE devices within panel range will automatically appear in HA
  3. This extends your Bluetooth network range

Custom TFT Design

If you enjoy customization, you can create your own display design:

  1. Download Nextion Editor
  2. Modify the HMI file according to your preferences
  3. Compile to TFT
  4. Upload to the panel
Advanced Users Only

Requires knowledge of the Nextion platform, not for beginners.

wifibluetooth
NSPanel EU, šedý

Sonoff NSPanel EU, Gray

Smart control panel with integrated touchscreen display.
wifibluetooth
NSPanel EU, bílý

Sonoff NSPanel EU, White

Smart control panel with integrated touchscreen display.
usb
CP2102 USB 2.0 to TTL UART Module

CP2102 USB 2.0 to TTL UART Module

USB adapter for firmware upload (3.3V / 5.0V).

Evaluation

After several months of using NSPanel with ESPHome, I can say I'm very satisfied. Installation does require some technical knowledge and patience, but the result is worth it.

✅ Main Advantages

  • Complete control - no cloud dependency
  • Deep integration - everything from Home Assistant at your fingertips
  • Active community - regular updates and support
  • Great price/performance ratio - amazing solution for ~$50
  • Bluetooth proxy - bonus for BLE devices

⚠️ What Could Be Better

  • Display quality - average viewing angles, slightly faded colors
  • More complex installation - not for complete beginners
  • TFT upload - sometimes it's a bit of a lottery

Recommendation

I recommend NSPanel with ESPHome if you:

  • ✅ Use Home Assistant
  • ✅ Have basic technical knowledge
  • ✅ Don't want cloud solutions
  • ✅ Appreciate good value for money

I don't recommend if you:

  • ❌ Are a complete beginner
  • ❌ Want a plug-and-play solution
  • ❌ Require a premium display
Final Note

If you're looking for an intelligent control panel with a good price-to-performance ratio and don't want to be dependent on the cloud, NSPanel with ESPHome is an excellent choice. Installation isn't trivial, but thanks to this guide, anyone with some technical knowledge should be able to handle it.

Do you like this article?

Your support helps create the best smart home guides!

Support once

Comments