Read the statement by Michael Teeuw here.
Electron CPU usage
-
pm2 stop mm
pm2 delete mm
pm2 save
rm ~/mm.sh -
@cdelaorden I think you’ve found the issue! Awesome work!
For others please note that when you start raspi-config and go to “Advanced Options” > “GL Driver”, the top one will always be selected, no matter which one is active. After selecting one of the two top drivers (GL), it might solve the hi CPU load issue …
It solved it on a clean installed Pi 3 for me.
-
I added some info about the Open GL driver to the Wiki:
https://github.com/MichMich/MagicMirror/wiki/Configuring-the-Raspberry-Pi#enable-the-open-gl-driver-to-decrease-electrons-cpu-usage -
I seem to be running into some kind if trouble. My SD card failed, so I had to do a clean install. I decided to immediately go for the full KMS driver.
“$ tail /boot/config.txt | grep dtoverlay” results in “dtoverlay=vc4-kms-v3d”.The CPU usage is alright, but “/home/pi/.pm2/logs/mm-error-o.log” states:
libGL error: MESA-LOADER: failed to retrieve device information MESA-LOADER: failed to retrieve device information MESA-LOADER: failed to retrieve device information
I am having trouble with the monitor. I am using MMM-Remote-Control.
“MONITOROFF” results in “/home/pi/.pm2/logs/mm-error-o.log”:Powering off HDMI
“MONITORON” results in “/home/pi/.pm2/logs/mm-error-o.log”:
Powering on HDMI with preferred settings [E] Failed to power on HDMI with preferred settings { Error: Command failed: tvservice --preferred && sudo chvt 6 && sudo chvt 7 [E] Failed to power on HDMI with preferred settings at ChildProcess.exithandler (child_process.js:217:12) at emitTwo (events.js:106:13) at ChildProcess.emit (events.js:194:7) at maybeClose (internal/child_process.js:899:16) at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5) killed: true, code: null, signal: 'SIGTERM', cmd: 'tvservice --preferred && sudo chvt 6 && sudo chvt 7' } Powering off HDMI
I may be wrong but I feel this is related to the Full KMS driver.
Can anyone confirm? Does anyone have a solution?
I am way out of my depth here… -
@Hein-Jan I got the same issue.
A few minutes, the monitor could be controlled, but then “tvservice -p” fails to power on the monitor. -
Please use the fake kms driver instead “dtoverlay=vc4-fkms-v3d”
it its known that the full kms driver isnt compatible with tvservice plus other restrictions
EDIT:
Also with the fake KMS you can rotate the display from /boot/config.txt so I suggest @michmich using it as the preferred method in the wiki -
@cdelaorden said in Electron CPU usage:
the full kms driver isnt compatib
hy now i use the fake kms driver, everything is working fine and realy fast.
but i have the problem that the mirror will go to a black screen after some hours.only a pm2 restart mm helps in this case -.-
-
@schmo90 mmm havent had that problem, everything its working fine
Have you deactivated the screensaver as its shown in the wiki?
Also, are you using a module like MMM-Remote-Control to turn off the screen?
If you see a black screen and the mouse but nothing else you are probably missing “sudo chvt 6 && sudo chvt 7” in your statement after turning hdmi back on. You can test it in ssh after forcing the issue.
Also if you are concatenating commands like Hein-Jan did with “tvservice --preferred && sudo chvt 6 && sudo chvt 7” have in mind that commands after && are only executed if no errors are found. So maybe “tvservice -p” its working correctly but its giving some feedback and things after && aren’t executed.
You could force it by using ; as a separator instead of && so it doesn’t look for an answear
-
hy i didnot turn off the hdmi,
i will turn off the lcd with the gpio’s
screen is turning on normal but electron browser is showing a black screen (mous appears at moving)
-
adding another flavour:
As my Foscam FI9900P got an ONVIF-Update lately and is now capable of RTSP-streaming I installed MMM-RTSPStream.- activated fake (or full) OpenGL Desktop driver:
omxplayer crashes - activated non-GL desktop driver:
omxplayer runs
So, as I see it, the omxplayer problem doesn’t concern MagicMirror - is there another way to reduce Electron CPU usage - except using an Open-GL dekstop driver?
PS: activating fake KMS reduced CPU usage as recommended in this thread - but I’d like to have the video-stream of my cam on the MM (unfortunately it doesn’t provide MJPEG)
- activated fake (or full) OpenGL Desktop driver: