diff --git a/.gitignore b/.gitignore index fe89975..8c43658 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,4 @@ __pycache__/* build/* dist/* *.egg-info - +.venv diff --git a/CHANGELOG.md b/CHANGELOG.md index e2f743b..a7104b9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,9 +6,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) ## Version Unreleased +### Added + +- support for Raspberry Pi OS 12 (Bookworm) and Python 3.11 through some dependency fixes + ### Changed - updated IT8951 repo link to build from source with RPI dependencies +- Waveshare drivers now loaded from [forked repo](https://github.com/mendhak/waveshare-epaper-sample) to fix Bookworm Rpi detection ## Version 0.3.5 diff --git a/README.md b/README.md index 614f39b..9544532 100644 --- a/README.md +++ b/README.md @@ -9,13 +9,10 @@ There are several great EPD projects all over the internet, many in written in P For EPD project builders this expands the number of displays you can use for your project without having to code around each one. To utilize this in your project read the usage instructions. For a list of (known) projects that use this abstraction see the [list below](#displays-implmented). -## Regarding Raspberry Pi OS 12 Bookworm - -There are some issues with the [Waveshare Library](https://github.com/waveshareteam/e-Paper/pull/307) and the latest Raspberry Pi OS (Bookworm). The preferred install method for now is to install the [legacy OS 11 (Bullseye)](https://downloads.raspberrypi.com/raspios_lite_arm64/images/raspios_lite_arm64-2023-05-03/) until these can be resolved. - ## Table Of Contents - [Install](#install) + - [Python Virtual Environments](#python-virtual-environments) - [Usage](#usage) - [VirtualEPD Object](#virtualepd-object) - [Display Testing](#display-testing) @@ -35,7 +32,7 @@ Installing this module installs any required _Python_ library files. Refer to in ``` -sudo pip3 install git+https://github.com/robweber/omni-epd.git#egg=omni-epd +pip3 install git+https://github.com/robweber/omni-epd.git#egg=omni-epd ``` @@ -45,8 +42,25 @@ This will install the abstraction library. The [test utility](#display-testing) git clone https://github.com/robweber/omni-epd.git cd omni-epd -sudo pip3 install --prefer-binary . +pip3 install --prefer-binary . + +``` + +### Python Virtual Environments + +It is best practice to install inside a [virtual environment]( http://rptl.io/venv). For implementing projects you may experience errors installing outside of a virtual environment. + +The [numpy](https://numpy.org/) package, required by Pillow, needs access to the system installed version of _numpy_ in order to work properly. When setting up your virtual environment be sure to pass in the `--system-site-packages` argument to enable using system packages if they're available. An example would be: + +``` +# create the environment +python3 -m venv --system-site-packages .venv + +# activate the environment +source .venv/bin/activate +# deactivate the environment +deactivate ``` ## Usage diff --git a/pyproject.toml b/pyproject.toml index 4e48d40..09eab80 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,8 +8,8 @@ build-backend = "setuptools.build_meta" [project] name = "omni_epd" -version = "0.3.5" -requires-python = ">=3.7, <3.11" +version = "0.3.6b1" +requires-python = ">=3.7" authors = [ {name = "Rob Weber", email = "robweberjr@gmail.com"} ] @@ -25,7 +25,7 @@ classifiers = [ dependencies = [ "Pillow>=9.1.0", - "waveshare-epd @ git+https://github.com/waveshare/e-Paper.git@4822c075f5df714f88b02e10c336b4eeff7e603e#subdirectory=RaspberryPi_JetsonNano/python&egg=waveshare-epd", + "waveshare-epd @ git+https://github.com/mendhak/waveshare-epaper-sample.git#subdirectory=RaspberryPi_JetsonNano/python&egg=waveshare-epd", "inky[rpi]>=1.3.1", "IT8951[rpi] @ git+https://github.com/GregDMeyer/IT8951.git" ]