Skip to content

brainelectronics/micropython-nextion

Repository files navigation

MicroPython Nextion library

Downloads Release MicroPython License: MIT

MicroPython Nextion library


General

Ported library to interact with Nextion serial displays, based on the ITEAD Arduino Nextion library.

Installation

Install required tools

Python3 must be installed on your system. Check the current Python version with the following command

python --version
python3 --version

Depending on which command Python 3.x.y (with x.y as some numbers) is returned, use that command to proceed.

python3 -m venv .venv
source .venv/bin/activate

pip install -r requirements.txt

Setup

Install package

Connect the MicroPython device to a network (if possible)

import network
station = network.WLAN(network.STA_IF)
station.active(True)
station.connect('SSID', 'PASSWORD')
station.isconnected()

General

Install the latest package version of this lib on the MicroPython device

import mip
mip.install("github:brainelectronics/micropython-nextion")

For MicroPython versions below 1.19.1 use the upip package instead of mip

import upip
upip.install('micropython-nextion')

Specific version

Install a specific, fixed package version of this lib on the MicroPython device

import mip
# install a verions of a specific branch
mip.install("github:brainelectronics/micropython-nextion", version="feature/add-mip-package-file")
# install a tag version
mip.install("github:brainelectronics/micropython-nextion", version="0.15.0")

For MicroPython versions below 1.19.1 use the upip package instead of mip

import upip
upip.install('micropython-nextion')

Test version

Install a specific release candidate version uploaded to Test Python Package Index on every PR on the MicroPython device. If no specific version is set, the latest stable version will be used.

import mip
mip.install("github:brainelectronics/micropython-nextion", version="0.15.0-rc1.dev29")

For MicroPython versions below 1.19.1 use the upip package instead of mip

import upip
# overwrite index_urls to only take artifacts from test.pypi.org
upip.index_urls = ['https://test.pypi.org/pypi']
upip.install('micropython-nextion')

See also brainelectronics Test PyPi Server in Docker for a test PyPi server running on Docker.

Manually

Upload files to board

Copy the module to the MicroPython board and import them as shown below using Remote MicroPython shell

Open the remote shell with the following command. Additionally use -b 115200 in case no CP210x is used but a CH34x.

rshell --port /dev/tty.SLAB_USBtoUART --editor nano

Perform the following command inside the rshell to copy all files and folders to the device

mkdir /pyboard/lib
mkdir /pyboard/lib/nextion

cp nextion/* /pyboard/lib/nextion

cp examples/basic/main.py /pyboard
cp examples/boot.py /pyboard

Usage

Use one of the examples to get started. Read also the examples README to find all supported elements

Credits

Big thank you to ITEAD Studio for the implementation of the Arduino library.