Thank you for your donation!


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


Instruction Guide 128x64 OLED with Song Status and Spectrum Display on Raspberry Pi
Hi Tim

After the failure to start mpd_oled the wrkready parameter is not set to 1, it still has a value of 0


Code:
pi@moode832:~ $ systemctl status mpd_oled
● mpd_oled.service - MPD OLED Display
     Loaded: loaded (/etc/systemd/system/mpd_oled.service; enabled; vendor preset: enabled)
     Active: failed (Result: timeout) since Wed 2023-05-03 12:11:29 CEST; 55min ago
    Process: 395 ExecStartPre=/usr/bin/mpd_oled_launch_test (code=killed, signal=TERM)
        CPU: 3.967s

May 03 12:08:12 moode832 systemd[1]: Starting MPD OLED Display...
May 03 12:11:29 moode832 systemd[1]: mpd_oled.service: start-pre operation timed out. Terminating.
May 03 12:11:29 moode832 systemd[1]: mpd_oled.service: Control process exited, code=killed, status=15/T>
May 03 12:11:29 moode832 systemd[1]: mpd_oled.service: Failed with result 'timeout'.
May 03 12:11:29 moode832 systemd[1]: Failed to start MPD OLED Display.
May 03 12:11:29 moode832 systemd[1]: mpd_oled.service: Consumed 3.967s CPU time.

pi@moode832:~ $ moodeutl -q "select value from cfg_system where param='wrkready'"
0

Adrian.
Reply
(05-03-2023, 11:11 AM)adrii Wrote: Hi Tim

After the failure to start mpd_oled the wrkready parameter is not set to 1, it still has a value of 0


Code:
pi@moode832:~ $ systemctl status mpd_oled
● mpd_oled.service - MPD OLED Display
     Loaded: loaded (/etc/systemd/system/mpd_oled.service; enabled; vendor preset: enabled)
     Active: failed (Result: timeout) since Wed 2023-05-03 12:11:29 CEST; 55min ago
    Process: 395 ExecStartPre=/usr/bin/mpd_oled_launch_test (code=killed, signal=TERM)
        CPU: 3.967s

May 03 12:08:12 moode832 systemd[1]: Starting MPD OLED Display...
May 03 12:11:29 moode832 systemd[1]: mpd_oled.service: start-pre operation timed out. Terminating.
May 03 12:11:29 moode832 systemd[1]: mpd_oled.service: Control process exited, code=killed, status=15/T>
May 03 12:11:29 moode832 systemd[1]: mpd_oled.service: Failed with result 'timeout'.
May 03 12:11:29 moode832 systemd[1]: Failed to start MPD OLED Display.
May 03 12:11:29 moode832 systemd[1]: mpd_oled.service: Consumed 3.967s CPU time.

pi@moode832:~ $ moodeutl -q "select value from cfg_system where param='wrkready'"
0

Adrian.

That would suggest worker.php has exited, possibly after the 3 min wait for Linux startup.

Code:
pgrep worker.php
Enjoy the Music!
moodeaudio.org | Mastodon Feed | GitHub
Reply
Hi Tim

Yes, worker.php is no longer running

Code:
pi@moode832:~ $ pgrep worker.php
pi@moode832:~ $

Adrian.
Reply
I have updated the mpd_oled repository and binary packages with a fix for mpd_oled not starting on Moode 8.3.2.

Adrian.
Reply
(05-14-2023, 10:43 AM)adrii Wrote: I have updated the mpd_oled repository and binary packages with a fix for mpd_oled not starting on Moode 8.3.2.

Adrian.

Hi Adrian,
I am sorry to disturb you: probably I am too old to see any difference beetwen "launch" and previous "launch_test"; would you please bo so kind to explain me?
Thanks a lot and best regards,
Francesco
Reply
Hi Francesco

mpd_oled_launch_test was a script that the service ran as a test before executing mpd_oled, when it returned the service knew that the Moode startup flag was set and it could execute mpd_oled directly.

mpd_oled_launch is a script that the service runs instead of executing mpd_oled directly, and does not use a separate test script. The script waits for Moode to set the startup flag, and then the script executes mpd_oled.

The difference is, the service now indicates it has started correctly before the Moode startup flag is set, and so the Moode startup is not blocked by the failure to start the mpd_oled service, but execution of mpd_oled is still deferred until after the startup flag is set.

Adrian.
Reply
(05-14-2023, 11:47 AM)adrii Wrote: Hi Francesco

mpd_oled_launch_test was a script that the service ran as a test before executing mpd_oled, when it returned the service knew that the Moode startup flag was set and it could execute mpd_oled directly.

mpd_oled_launch is a script that the service runs instead of executing mpd_oled directly, and does not use a separate test script. The script waits for Moode to set the startup flag, and then the script executes mpd_oled.

The difference is, the service now indicates it has started correctly before the Moode startup flag is set, and so the Moode startup is not blocked by the failure to start the mpd_oled service, but execution of mpd_oled is still deferred until after the startup flag is set.

Adrian.

Thanks, Adrian,
Have a nice Sunday,
Francesco
Reply
For anyone updating Moode to 8.3.2 (or greater) and then updating mpd_oled because it is not working correctly, mpd_oled may continue to not work correctly. This is because reinstalling mpd_oled will not overwrite the old service file. For anyone affected...

Print your current mpd_oled options that are in the service file
Code:
grep ExecStart= /etc/systemd/system/mpd_oled.service

Now uninstall the mpd_oled service, install it again, and configure your mpd_oled options again. To do this, run the following commands, but in the final command use your mpd_oled options instead of the example ones

Code:
sudo mpd_oled_service_uninstall
sudo mpd_oled_service_install
sudo mpd_oled_service_edit -o 0 -b 20 -g 1 -f 20 -c alsa,plughw:Loopback,1

mpd_oled should now be working correctly!

Adrian.
Reply
(05-17-2023, 06:05 PM)adrii Wrote: For anyone updating Moode to 8.3.2 (or greater) and then updating mpd_oled because it is not working correctly, mpd_oled may continue to not work correctly. This is because reinstalling mpd_oled will not overwrite the old service file. For anyone affected...

Print your current mpd_oled options that are in the service file
Code:
grep ExecStart= /etc/systemd/system/mpd_oled.service

Now uninstall the mpd_oled service, install it again, and configure your mpd_oled options again. To do this, run the following commands, but in the final command use your mpd_oled options instead of the example ones

Code:
sudo mpd_oled_service_uninstall
sudo mpd_oled_service_install
sudo mpd_oled_service_edit -o 0 -b 20 -g 1 -f 20 -c alsa,plughw:Loopback,1

mpd_oled should now be working correctly!

Adrian.
Brilliant ! worked first time for 8.3.3   You deserve a medal for your ongoing support !
Where can I donate a coffee or two ?
----------
bob
Reply
Hi Bob

Your kind message is thanks enough!

Adrian.
Reply


Forum Jump: