MiczFlor / RPi-Jukebox-RFID

A Raspberry Pi jukebox, playing local music, podcasts, web radio and streams triggered by RFID cards, web app or home automation. All plug and play via USB. GPIO scripts available.
http://phoniebox.de
MIT License
1.3k stars 394 forks source link

🚀 | Support displays on future3 #2364

Open s-martin opened 2 months ago

s-martin commented 2 months ago

Feature

Phoniebox V3 should support displays (e.g. Pirate Audio HATs or HD44780 or SH1106).

User perspective

Displays should show information about currently played songs (e.g. album, title, etc), maybe even cover art.

Further information

s-martin commented 2 months ago

1112 would be replaced by a new implementation

Lippsson commented 2 months ago

I'm currently testing whether I can rewrite a script for the small 1.3" displays (128x64 pixels). The script from Splitti still works, but I'm missing things like the battery symbol and the indicators for shuffle and repeat. If anyone has the time, desire and knowledge, help is welcome and appreciated.

display

s-martin commented 1 month ago

👍 I don't know how much the script from splitti relies on the Phoniebox implementation (V2).

This issue should target the V3 implementation.

s-martin commented 1 month ago

I envision the implementation in two parts:

Access/control of the display hardware ("backend", if you will)

This should be specific to the used display hardware, but every backend should provide a show() method, which is called by the frontend to show stuff on the display.

In addition methods like reload, clear, etc.

Generic, configurable display ("frontend")

The user should be able to configure the information to be displayed, e.g. artist, song name, cover art, maybe meta info (such as battery status or Phoniebox version, etc.).

This is of course dependent of the used backend/hardware, e.g. resolution etc.

This part should handle the RPC to retrieve information to be displayed.

s-martin commented 1 month ago

1710

s-martin commented 1 month ago
Lippsson commented 1 month ago

Some more ideas for display integration: display

Lippsson commented 1 month ago

This is just a first test to see what is possible.

photo_2024-05-16_11-25-12

display2

gschnitzler commented 2 weeks ago

Have a look at this implementation. Its sort of a drop in replacement for splittis script. Just follow splittis install script, then install any missing python dependencies. This might provide a better starting point for your own implementation.