Thank you for your donation!


Cloudsmith graciously provides open-source package management and distribution for our project.


PeppyMeter and moOde
(08-06-2025, 09:16 AM)Syma753dfx Wrote:
(08-05-2025, 05:03 PM)fdealexa , Wrote: With reference to your second question, please have a look to the Additional developments(Auto start)and let us know.
Best regards,
Francesco
Where, on github?

At the moOde UI: go to
Code:
Menu /
Configure /
System Config /
Local Services
I din't find local services at system config.
Reply
@Tim Curtis

(08-06-2025, 02:08 PM)TheOldPresbyope Wrote:
(08-06-2025, 01:20 PM)Tim Curtis Wrote: Testing with a Pi Touch 2 was not successful.

This is prolly because its natively a portrait orientation display i.e., 720x1280 which IMO was a really strange design decision. It can be rotated to landscape orientation via a special entry in /boot/firmware/cmdline.txt


Code:
video=DSI-1:720x1280@60,rotate=90

But PeppyMeter still displays in portrait orientation and thus is unusable. Setting screen.width and screen.height in PeppyMeter/config.txt has no effect.

It's been years since I looked at the PeppyMeter code, but off the top of my head I'd guess this is because it writes directly to the framebuffer. I expect @fdealexa has some thoughts. 

I'm tied up most of today but I'll have a look myself when I can get to it.

Regards,
Kent

I was overthinking this.

Took a moOde 9.3.5 player that was already running with a Touch2 local display. Performed an insitu upgrade to 9.3.7.

Installed Pettymeter_and_moode from @fdealexa's github repo following his 4-step procedure, including the minimal changes in config.txt (chose the 800x480 resolution as something already available that was "close"). 

Fired up the Peppymeter functional test and the display came up fresh as paint superimposed in the webUI and in landscape orientation. 

Here's a random snap taken as it stepped through the demo (some of the display faces put me in mind of the old saying "there's no accounting for taste"!).

   

Regards,
Kent
Reply
(08-07-2025, 02:31 PM)TheOldPresbyope Wrote: @Tim Curtis

(08-06-2025, 02:08 PM)TheOldPresbyope Wrote:
(08-06-2025, 01:20 PM)Tim Curtis Wrote: Testing with a Pi Touch 2 was not successful.

This is prolly because its natively a portrait orientation display i.e., 720x1280 which IMO was a really strange design decision. It can be rotated to landscape orientation via a special entry in /boot/firmware/cmdline.txt


Code:
video=DSI-1:720x1280@60,rotate=90

But PeppyMeter still displays in portrait orientation and thus is unusable. Setting screen.width and screen.height in PeppyMeter/config.txt has no effect.

It's been years since I looked at the PeppyMeter code, but off the top of my head I'd guess this is because it writes directly to the framebuffer. I expect @fdealexa has some thoughts. 

I'm tied up most of today but I'll have a look myself when I can get to it.

Regards,
Kent

I was overthinking this.

Took a moOde 9.3.5 player that was already running with a Touch2 local display. Performed an insitu upgrade to 9.3.7.

Installed Pettymeter_and_moode from @fdealexa's github repo following his 4-step procedure, including the minimal changes in config.txt (chose the 800x480 resolution as something already available that was "close"). 

Fired up the Peppymeter functional test and the display came up fresh as paint superimposed in the webUI and in landscape orientation. 

Here's a random snap taken as it stepped through the demo (some of the display faces put me in mind of the old saying "there's no accounting for taste"!).



Regards,
Kent

That will work because the orientation is being set by xserver. 

The problem is that having both xserver/chromium/WebUI running plus pygame/peppy is a no-go as far as performance goes and there are other issues I experienced where the display would beome corrupted :-0

Conclusion is that peppy has to be a standalone display process. This is also why metadata and coverart would have to be implemented in the peppy python scripts that also display the meters.

If you turn off Local display and then run peppy from the console you should be able to repro the orientation issue I described earlier:

That is, even after adding "video=DSI-1:720x1280@60,rotate=90" to cmdline.txt which does put the Touch 2 in Landscape orientation the meters still display in portrait orientation, heavily cropped. It could be something in one of the python scripts or possibly even in the PeppyMeter/config.txt file ???
Enjoy the Music!
moodeaudio.org | Mastodon Feed | GitHub
Reply
Ah, sorry, I didn't catch that you were running Peppymeter from the console.

I remember I wasn't happy with pygame 4 years ago when I was shadowing Francesco's journey with Peppymeter. Most of its machinery is unnecessary for our application but I'm not volunteering to write bare-metal code at this stage of my life Angel

If I get a chance I'll do a bit more poking around. Possibly I could come up with a fix for the orientation issue but i'll pass on the question of coverart and metadata.

Regards,
Kent
Reply
I'll prolly have a test image available this weekend that includes the ALSA plumbing and a start/stop display slider. This means that when you configure the audio output in Audio Config the peppy confs will be automatically updated.

You would still need to manually install peppymeter and configure PeppyMeter/config.txt and the particular meters.txt file. I'll include the necessary steps.
Enjoy the Music!
moodeaudio.org | Mastodon Feed | GitHub
Reply
(08-06-2025, 05:14 PM)Syma753dfx Wrote:
(08-06-2025, 09:16 AM)Syma753dfx Wrote:
(08-05-2025, 05:03 PM)fdealexa , Wrote: With reference to your second question, please have a look to the Additional developments(Auto start)and let us know.
Best regards,
Francesco
Where, on github?

At the moOde UI: go to
Code:
Menu /
Configure /
System Config /
Local Services
I din't find local services at system config.

Sorry: you are right, the location has been changed.


Code:
Menu /
Configure /
Audio /
MPD Options /
General

Best regards,
Francesco
Reply
(08-07-2025, 03:58 PM)Tim Curtis Wrote: I'll prolly have a test image available this weekend that includes the ALSA plumbing and a start/stop display slider. This means that when you configure the audio output in Audio Config the peppy confs will be automatically updated.

You would still need to manually install peppymeter and configure PeppyMeter/config.txt and the particular meters.txt file. I'll include the necessary steps.

GREAT!!!
Thank youuu
Francesco
Reply
TNX Tim !!!!
Reply
(08-07-2025, 04:32 PM)fdealexa Wrote:
(08-06-2025, 05:14 PM)Syma753dfx Wrote:
(08-06-2025, 09:16 AM)Syma753dfx Wrote:
(08-05-2025, 05:03 PM)fdealexa , Wrote: With reference to your second question, please have a look to the Additional developments(Auto start)and let us know.
Best regards,
Francesco
Where, on github?

At the moOde UI: go to
Code:
Menu /
Configure /
System Config /
Local Services
I din't find local services at system config.

Sorry: you are right, the location has been changed.


Code:
Menu /
Configure /
Audio /
MPD Options /
General

Best regards,
Francesco

Grazie Francesco
Reply
(08-07-2025, 02:47 PM)Tim Curtis Wrote:
(08-07-2025, 02:31 PM)TheOldPresbyope Wrote: @Tim Curtis

(08-06-2025, 02:08 PM)TheOldPresbyope Wrote:
(08-06-2025, 01:20 PM)Tim Curtis Wrote: Testing with a Pi Touch 2 was not successful.

This is prolly because its natively a portrait orientation display i.e., 720x1280 which IMO was a really strange design decision. It can be rotated to landscape orientation via a special entry in /boot/firmware/cmdline.txt


Code:
video=DSI-1:720x1280@60,rotate=90

But PeppyMeter still displays in portrait orientation and thus is unusable. Setting screen.width and screen.height in PeppyMeter/config.txt has no effect.

It's been years since I looked at the PeppyMeter code, but off the top of my head I'd guess this is because it writes directly to the framebuffer. I expect @fdealexa has some thoughts. 

I'm tied up most of today but I'll have a look myself when I can get to it.

Regards,
Kent

I was overthinking this.

Took a moOde 9.3.5 player that was already running with a Touch2 local display. Performed an insitu upgrade to 9.3.7.

Installed Pettymeter_and_moode from @fdealexa's github repo following his 4-step procedure, including the minimal changes in config.txt (chose the 800x480 resolution as something already available that was "close"). 

Fired up the Peppymeter functional test and the display came up fresh as paint superimposed in the webUI and in landscape orientation. 

Here's a random snap taken as it stepped through the demo (some of the display faces put me in mind of the old saying "there's no accounting for taste"!).



Regards,
Kent

That will work because the orientation is being set by xserver. 

The problem is that having both xserver/chromium/WebUI running plus pygame/peppy is a no-go as far as performance goes and there are other issues I experienced where the display would beome corrupted :-0

Conclusion is that peppy has to be a standalone display process. This is also why metadata and coverart would have to be implemented in the peppy python scripts that also display the meters.

If you turn off Local display and then run peppy from the console you should be able to repro the orientation issue I described earlier:

That is, even after adding "video=DSI-1:720x1280@60,rotate=90" to cmdline.txt which does put the Touch 2 in Landscape orientation the meters still display in portrait orientation, heavily cropped. It could be something in one of the python scripts or possibly even in the PeppyMeter/config.txt file ???

Seems I had the wrong end of the stick. 

After wasting a lot of time with a lot of framebuffer tricks, I finally planted a probe in the peppymeter.py code basically to ask "what driver are you using?" Turns out it isn't fbcon, it's a SDL2 driver called "kmsdrm". That's part of the acceleration-enabled Digital Rendering Manager" portfolio.

Code:
rho@touch2.local:~/Peppymeter $ python3 peppymeter.py
pygame 2.1.2 (SDL 2.26.5, Python 3.11.2)
Hello from the pygame community. https://www.pygame.org/contribute.html
SDL video driver: KMSDRM
Reported width: 720, height: 1280
...

There's posts scattered across the InterWeb™ which lament problems with Raspbian/Raspberry Pi OS, SDL, Pygame, and dealing with screen orientation.  Some date back 4 years or so to PyGame 1.x and SDL1 and the newest I found is dated 2024.

Most of the flip answers to the posts suggest involving X11 or Wayland.

Sorry, I don't have any chops with SDL2. SDL3 supposedly has yet more changes.

Regards,
Kent

PS - the plexiglas holder and stand I bought for my Touch2 orients the screen the opposite way from yours. I have to rotate the framebuffer 270 deg to get upright console output.
Reply


Forum Jump: