Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bookworm Fixes #92

Merged
merged 12 commits into from
Nov 13, 2023
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ __pycache__/*
build/*
dist/*
*.egg-info

.venv
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down
26 changes: 20 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand All @@ -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

```

Expand All @@ -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
Expand Down
6 changes: 3 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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 = "[email protected]"}
]
Expand All @@ -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"
]
Expand Down