Read the statement by Michael Teeuw here.
Electron CPU usage
-
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:
-
hi @binderth
the fake-kms was created for keeping omxplayer compatibility but you need to add the “–no-osd” flag to the omxplayer command lineyou might want to try it
dont bet on it, but changing line 101 of node_helper.js to
var args = ["--no-osd", "--live", "--video_queue", "4", "--fps", "30",
might do the trick
-
MM 2.4.1 - if anyone is trying to look for it while searching for forums. Apologies if it has already been stated
So i’ve done it both ways:
dtoverlay=vc4-kms-v3d
I noticed that my CPU temp is well into the 60-70 degree Celsius with CPU loads mostly in the 1.x, 2.x, and sometimes 3.x rangesWhen i try the other way :
dtoverlay=vc4-fkms-v3d
CPU is much lower in temp under 50 degrees Celsius and CPU load rarely goes above 1.x
and i am able to use the tvservice -o and tvservice -p to schedule my monitor to go on and off at certain timesHopefully this helps anyone searching for this issue on new installs like myself
-
So i ran into this issue as well. I started MM stuff 2-3 weeks ago.
When everything was working my logs show:
- I had the previous mm version ( probably 2.3.1)
- Enable the Open GL driver, fake KMS (via raspi-config)
- Disabling the screensaver https://www.raspberrypi.org/forums/viewtopic.php?t=57552
- Autohiding the Mouse Pointer
- rotate screen 270deg(CW),
display_rotate=3
at /boot/config.txt - I also had the
dtoverlay=vc4-fkms-v3d
line there - I was getting this error though (thru
npm start
):
libGL error: MESA-LOADER: failed to retrieve device information MESA-LOADER: failed to retrieve device information MESA-LOADER: failed to retrieve device information
Anyway I messed something on my modules and had to reinstall the Raspbian. Same as before, Stretch 7/-18
- Rotate screen at /boot/config.txt
- installed the MM 2.4.1 and tried it straight away default config and modules. It was working alright
- Disabling the screensaver https://www.raspberrypi.org/forums/viewtopic.php?t=57552
- Autohiding the Mouse Pointer
- I think I added the
dtoverlay=vc4-fkms-v3d
line…- and boom animations started lagging (+high CPU)
- also
npm start dev
didnt work. It launched but no mirror was shown and if i had mm running it would stop refreshing.
Any way I figured out that taking that commenting out that
# dtoverlay=vc4-fkms-v3d
everything works flawlessy. I dont get the “libGL”-error
and I also updated npm 5.6.0 → 6.2.0sudo npm i -g npm
andnpm start dev
started working (dev or no dev).My Rpi temperature is under 50C when mm is running (no heatsink).
Hope this helps out someone!
-
@vinp and @jaffons WOW! Thank you for your comments… Made a huge difference.
After some months I needed to reinstall from scratch (now also hosting octoprint and a remote desktop simultaneously). I thought MM animations were just generally slow, but this made a huge difference compared to the more orthodox setup.
I don’t see why this configuration shouldn’t be preferred over the normal Pi configuration, and the OpenGL driver was also much trickier to get working. -
Is it just me, that after the most recent rpi firmware update display_rotate/display_hdmi_rotate is not working with the fkms driver?
I found the following in the official documentation:
If using the VC4 FKMS V3D driver (this is the default on the Raspberry Pi 4), then 90 and 270 degree rotations are not supported. The Screen Configuration utility provides display rotations for this driver.
Unfortunately I have no clue how to run the screen configuration utility. There’s always a black screen even if I run
pm2 stop mm
.