Moode Forum
[How to do instruction] 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - Printable Version

+- Moode Forum (https://moodeaudio.org/forum)
+-- Forum: moOde audio player (https://moodeaudio.org/forum/forumdisplay.php?fid=3)
+--- Forum: FAQ and Guides (https://moodeaudio.org/forum/forumdisplay.php?fid=9)
+--- Thread: [How to do instruction] 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi (/showthread.php?tid=155)



RE: 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - adrii - 06-27-2024

Hi Francesco

I have updated the BCM 2835 library to the latest version 1.75, tested on a fresh install of Moode 9 on a Pi4 with an I2C and an SPI display, and pushed the changes to the mpd_oled reposiitory.

If you (or anyone else) builds the latest mpd_oled from source on a Pi5 then please let me know if it is working with an SPI display. Once I have confirmation then I will build a new mpd_oled binary package.

Regarding the mpd_oled binary package failure on Moode 9, it looks like the missing package libfftw3-3 is just a dummy package that causes other packages to be installed, and I can just list these individual packages instead, so should be a very minor change.


Adrian.


RE: 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - fdealexa - 06-28-2024

(06-27-2024, 05:28 PM)adrii Wrote: Hi Francesco

I have updated the BCM 2835 library to the latest version 1.75, tested on a fresh install of Moode 9 on a Pi4 with an I2C and an SPI display, and pushed the changes to the mpd_oled reposiitory.

If you (or anyone else) builds the latest mpd_oled from source on a Pi5 then please let me know if it is working with an SPI display. Once I have confirmation then I will build a new mpd_oled binary package.

Regarding the mpd_oled binary package failure on Moode 9, it looks like the missing package libfftw3-3 is just a dummy package that causes other packages to be installed, and I can just list these individual packages instead, so should be a very minor change.


Adrian.

Hi Adrian,
Thanks for your time; unfortunatly with the new modification, it does not run: I am not sure if the following feelings can help:
1. the system stucks at 100% of load (of 1 cpu of course) - (please note that on I2C it doesn't happen and runs correctly).
Code:
top - 08:54:27 up 18 min,  1 user,  load average: 1.10, 1.08, 0.73
Tasks: 175 total,   2 running, 173 sleeping,   0 stopped,   0 zombie
%Cpu(s): 25.8 us,  1.7 sy,  0.0 ni, 72.2 id,  0.0 wa,  0.0 hi,  0.3 si,  0.0 st
MiB Mem :   8052.4 total,   6873.5 free,    357.0 used,    926.3 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.   7695.5 avail Mem

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
 13053 root      20   0   24160   2048   2048 R 100.0   0.0   7:56.24 mpd_oled
  9392 mpd       20   0  634176  42464  29696 S   5.0   0.5   0:51.76 mpd
    22 root      20   0       0      0      0 S   0.3   0.0   0:00.12 ksoftir+
   655 root      20   0   91552  20992  15360 S   0.3   0.3   0:00.85 winbindd
   666 root      20   0   92256  18480  12800 S   0.3   0.2   0:00.81 winbindd
  8551 root      20   0  100512  23040  16896 S   0.3   0.3   0:00.60 rpcd_ls+
     1 root      20   0  170272  12192   8192 S   0.0   0.1   0:04.57 systemd
     2 root      20   0       0      0      0 S   0.0   0.0   0:00.00 kthreadd

2. it seems that "/dev/gpiomem" does not longer exists:


Code:
pi@MoOde-FdA-Test5:~/mpd_oled $ ls -lia /dev/g*
88 crw-rw---- 1 root gpio 254, 0 Jun 23 16:06 /dev/gpiochip0
89 crw-rw---- 1 root gpio 254, 1 Jun 23 16:06 /dev/gpiochip1
90 crw-rw---- 1 root gpio 254, 2 Jun 23 16:06 /dev/gpiochip2
91 crw-rw---- 1 root gpio 254, 3 Jun 23 16:06 /dev/gpiochip3
131 crw-rw---- 1 root gpio 254, 4 Jun 23 16:06 /dev/gpiochip4
333 crw-rw---- 1 root gpio 235, 0 Jun 23 16:06 /dev/gpiomem0
329 crw-rw---- 1 root gpio 239, 0 Jun 23 16:06 /dev/gpiomem1
330 crw-rw---- 1 root gpio 238, 0 Jun 23 16:06 /dev/gpiomem2
331 crw-rw---- 1 root gpio 237, 0 Jun 23 16:06 /dev/gpiomem3
332 crw-rw---- 1 root gpio 236, 0 Jun 23 16:06 /dev/gpiomem4
pi@MoOde-FdA-Test5:~/mpd_oled $

Please do not hesitate to ask to test more modifications: I just received the pi5 and I tested immediatelly the mpd_oled because somebody else had this problem and I would help him ( "lepetitdiable" at this thread ).
Best regards and thank you very much,
Francesco


RE: 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - adrii - 06-28-2024

Hi Francesco

Thanks for testing, and for the extra details.

Unfortunately, it looks like there is no easy fix for this, as the BCM 2835 library hasn't been (and may not ever be) updated to support the Pi 5

   https://groups.google.com/g/bcm2835/c/e44ttskxDv8?pli=1

In which case, some options are

a) The current version of mpd_oled won't be updated to support the Pi 5 (I don't like this option)

b) I could add some custom SPI functions that use the linux SPI devices.

c) I could tidy up the development "proof of concept" version ( https://github.com/antiprism/mpd_oled_dev ), which only uses linux devices for communication.

If I can find some suitable code then I will go for option b, as option c could turn into a support nightmare!

Adrian.


RE: 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - adrii - 06-29-2024

There is no easy fix.

For option b: I found some replacement code for SPI using the linux device driver (/dev/spidevX.X), but it needs to write DC using GPIO, and it looks like it uses the BCM 2835 library code for this, meaning that it won't work on the Pi 5.

For option c: mpd_oled_dev uses libu8g2arm which uses the sysfs GPIO interface, and this has been removed in bookworm, and so mpd_oled_dev won't work with SPI on Moode 9. 

I'll review the situation a bit more, but the only reasonable option I see is to update libu8g2arm and then review mpd_oled_dev, but this is a lot of work.

Adrian.


RE: 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - lepetitdiable - 06-30-2024

Hello Adrian,
Hello Francesco,

thanks for following up on the Moode / RPi5 / SPI / OLED problem - I had already given up. If I can help you (with my modest knowledge), please let me know.

Regards,
Manuel


RE: 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - Romanz - 07-09-2024

Greetings.
I have Raspberry Pi Zero 2W, pcm5102, Moode 8.3.9 Installed MPD oled, everything works. But there is one problem. I want to use the commands sudo systemctl stop mpd_oled / sudo systemctl start mpd_oled and bind them to buttons to turn off the display when listening to music for a long time, so that the display doesn't burn out. When a radio station is playing and I stop mpd oled in terminal - everything is fine, the display goes out. But when I start mpd oled - the indicator turns on, but the music is paused. Is this a bug or a feature, or have I configured something wrong?
Thanks


RE: 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - Nutul - 07-09-2024

(07-09-2024, 08:58 PM)Romanz Wrote: Greetings.
I have Raspberry Pi Zero 2W, pcm5102, Moode 8.3.9 Installed MPD oled, everything works. But there is one problem. I want to use the commands sudo systemctl stop mpd_oled / sudo systemctl start mpd_oled and bind them to buttons to turn off the display when listening to music for a long time, so that the display doesn't burn out. When a radio station is playing and I stop mpd oled in terminal - everything is fine, the display goes out. But when I start mpd oled - the indicator turns on, but the music is paused. Is this a bug or a feature, or have I configured something wrong?
Thanks

1. DO NOT CROSSPOST!!!

2. Check your other thread under support


RE: 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - Lalsacien - 07-12-2024

Hello,

I followed all the instructions to install from source but when I test, I have no bargraphs and nothing is moving on my I2C (date is not changing too) I have an error :

~ $ sudo mpd_oled -o 3 -a 3c -b 10 -g 1 -f 20 -c alsa,plughw:Loopback,1
sh: 1: mpd_oled_cava: not found

Could you help me to search the error ?

Many thanks for help.
Best Regards
Lalsacien


RE: 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - Lalsacien - 07-12-2024

(07-12-2024, 01:02 PM)Lalsacien Wrote: Hello,

I followed all the instructions to install from source but when I test, I have no bargraphs and nothing is moving on my I2C (date is not changing too) I have an error :

~ $ sudo mpd_oled -o 3 -a 3c -b 10 -g 1 -f 20 -c alsa,plughw:Loopback,1
sh: 1: mpd_oled_cava: not found

Could you help me to search the error ?

Many thanks for help.
Best Regards
Lalsacien

I reply to myself. I missed the option -k

I works well

Many thanks and sorry
Best Regards
Lalsacien


RE: 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi - adrii - 07-12-2024

Hi Lalsacien

Great! Pleased you found the problem

Adrian.