txoof / PaperPi

E-Paper display loop with plugins
95 stars 10 forks source link

Non IT8951 screens incompatible with hifi berry #150

Open txoof opened 5 months ago

txoof commented 5 months ago

Describe the bug Boards that use gpiozero are incompatible with HiFiBerry due to a pin conflict on GPIO 24 (pin 18). gpiozero stops all sound output.

To Reproduce Steps to reproduce the behavior:

  1. Start music playing via go-librespot/LMS client
  2. Start paperpi
  3. music stops

Expected behavior Paperpi should not stop audio

Hardware

Plugin Issues Impacts librespot and LMS plugins

Additional context solution is to remap GPIO 24 to any other unused GPIO other than 18-21 (HiFiBerry GPIO pins). This will require patching epdconfig.py in the waveshare library.

txoof commented 4 months ago

The solution looks like either monkey-patching the waveshare epdconfig or rewriting it entirely. This is a pretty difficult fix because simply loading the proper waveshare module for a non-IT8951 screen opens a gpiozro GPIO 24 pin and crashes the HiFiBerry sound output in an irrecoverable way.