Skip to main content

A library to drive PCD8544, HT1621, ST7735, ST7567 and UC1701X-based LCDs

Project description

luma.core | luma.docs | luma.emulator | luma.examples | luma.lcd | luma.led_matrix | luma.oled

Luma.LCD

PCD8544, ST7735, ST7567, HT1621, UC1701X Display Drivers

https://travis-ci.org/rm-hull/luma.lcd.svg?branch=master https://coveralls.io/repos/github/rm-hull/luma.lcd/badge.svg?branch=master Documentation Status https://img.shields.io/pypi/pyversions/luma.lcd.svg https://img.shields.io/pypi/v/luma.lcd.svg https://img.shields.io/maintenance/yes/2019.svg?maxAge=2592000

Python library interfacing LCD displays with the PCD8544, ST7735, ST7567, HT1621 and UC1701X driver using SPI on the Raspberry Pi and other linux-based single-board computers - it provides a Pillow-compatible drawing canvas, and other functionality to support:

  • scrolling/panning capability,

  • terminal-style printing,

  • state management,

  • color/greyscale (where supported),

  • dithering to monochrome

All modules can be picked up on ebay with a breakout board for a few pounds.

https://raw.github.com/rm-hull/luma.lcd/master/doc/images/pcd8544.png https://raw.github.com/rm-hull/luma.lcd/master/doc/images/st7735.jpg https://raw.github.com/rm-hull/luma.lcd/master/doc/images/ht1621.jpg https://raw.github.com/rm-hull/luma.lcd/master/doc/images/uc1701x.png

Documentation

Full documentation with installation instructions and examples can be found on https://luma-lcd.readthedocs.io.

License

The MIT License (MIT)

Copyright (c) 2013-17 Richard Hull & Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Contributing

Pull requests (code changes / documentation / typos / feature requests / setup) are gladly accepted. If you are intending to introduce some large-scale changes, please get in touch first to make sure we’re on the same page: try to include a docstring for any new method or class, and keep method bodies small, readable and PEP8-compliant. Add tests and strive to keep the code coverage levels high.

GitHub

The source code is available to clone at: https://github.com/rm-hull/luma.lcd.git

Contributors

  • Thijs Triemstra (@thijstriemstra)

  • Dougie Lawson (@dougielawson)

  • WsMithril (@WsMithril)

  • Peter Martin (@pe7er)

  • Saumyakanta Sahoo (@somu1795)

  • Philip Howard (@Gadgetoid)

ChangeLog

Version

Description

Date

1.1.1

  • Add support for 160x80 display size for ST7735

  • Minor documentation updates

2019/03/30

1.1.0

  • Add ST7567 Monochrome LCD display driver (courtesy of @Gadgetoid)

  • Change HT1621 tests

  • Update dependencies

2018/09/07

1.0.3

  • Changed version number to inside luma/lcd/__init__.py

2017/11/23

1.0.2

  • Documentation and dependencies updates

2017/10/30

1.0.1

  • Update dependencies

2017/09/14

1.0.0

  • Stable version

  • Remove deprecated methods

2017/09/09

0.5.0

  • Add UC1701X Monochrome LCD display driver

2017/06/11

0.4.1

  • luma.core 0.9.0 or newer is required now

2017/04/22

0.4.0

  • Add HT1621 seven-segment driver

2017/04/22

0.3.3

  • Add deprecation warning for bcm_LIGHT

2017/03/14

0.3.4

  • Add support for 128x128 display size for ST7735

  • Implement horizontal and vertical offsets (for ST7735)

  • Make backlight configurable as active high or active low

2017/04/17

0.3.3

  • Add deprecation warning for bcm_LIGHT

2017/03/14

0.3.2

  • Raise error.UnsupportedPlatform if RPi.GPIO is not available

2017/03/08

0.3.0

  • Add ST7735 Color TFT LCD display driver

  • Removed width and height parameters from device constructors

  • BREAKING CHANGES: Move backlight class to different package

2017/03/05

0.2.3

  • Allow PCD8544 driver constructor to accept any args

2017/03/02

0.2.2

  • Restrict exported Python symbols from luma.lcd.device

2017/03/02

0.2.1

  • Bugfix: Backlight didn’t switch off properly

  • Add tests

2017/01/23

0.2.0

  • BREAKING CHANGES: Package rename to luma.lcd

2017/01/13

0.0.1

  • Bit-bang version using wiringPi

2013/01/28

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

luma.lcd-1.1.1.tar.gz (6.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

luma.lcd-1.1.1-py2.py3-none-any.whl (12.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file luma.lcd-1.1.1.tar.gz.

File metadata

  • Download URL: luma.lcd-1.1.1.tar.gz
  • Upload date:
  • Size: 6.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.7

File hashes

Hashes for luma.lcd-1.1.1.tar.gz
Algorithm Hash digest
SHA256 9bed86c5af3eb008d9d255b873f14f86d98d6770f6221bb9a61bbc8d94150b1e
MD5 b5b9aa98f0fefc2405201487fbd1024c
BLAKE2b-256 95925f3da4de7ea0390a7d1a1c49416a2ff2b8c44d3fd30329c5478766712424

See more details on using hashes here.

File details

Details for the file luma.lcd-1.1.1-py2.py3-none-any.whl.

File metadata

  • Download URL: luma.lcd-1.1.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.7

File hashes

Hashes for luma.lcd-1.1.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e384a6a3df21b41fa6344bf75202f1c8aba34fb69ce7d085653366fd34fc04eb
MD5 acae4303ce67cd6acd6ebbffbf9e0e9b
BLAKE2b-256 98aef3453eef5f4684ef903164cac5fce7f2a2e53fa1026097f43853b6663d35

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page