Read the statement by Michael Teeuw here.
Rpi 4 and two monitors
-
Hey @sdetweil , thanks for the info on this - I am grateful.
I think I am nearly there but just missing a bit or two.
I copied the ‘MagicMirror’ to ‘MagicMirror2’ folder, updated the config.js, run-start.sh and the pm2_MagicMirror.json files.
When I reboot I now get MM and MM2 load up but both on the same screen.
I have messed around with the chromium line from the ‘run-start.sh’ and I don’t think it is actually be used in this case, I even commented the line out and this did not prevent me from running ‘npm start’ and MM2 still loaded albeit on top of the first MM.
Any ideas on where it is getting it’s info on how to start up chromium?
Thanks
Nathan
-
@NathTheDude sorry. I left out the pm2 steps
From mm2 folder do
pm2 start installers/pm2???.json pm2 save
Where the json file is the one u modified.
It should start the second mirror app.
The only difference is that window-positio info. And on reboot
pm2 status should show both.
Can u show the two chromium browser lines?
I will attempt to recreate here
-
Hey @sdetweil , after looking at how the current MM is setup with pm2 (pm2 show MagicMirror) this had the ‘mm.sh’ as the target.
Within the MM2 folder I ran: ‘pm2 start ./installers/mm.sh --name MagicMirror2’ which started the MM2 but on the first screen. Then used pm2 save.
I just setup pm2 with the .json file instead of the mm.sh file and the results seem to be the same from what i can see with it getting displayed on the first screen.
Within the start-run.sh, I can comment out the chromium line and and it will not break anything which makes me think this line is not being referenced.
MM line:
chromium-browser --noerrdialogs --kiosk --user-data-dir='Default' --window-position=0,0 --disable-infobars --app=http://localhost:$port --ignore-certificate-errors-spki-list --ignore-ssl-errors --ignore-certificate-errors 2>/dev/null
MM2 line:
chromium-browser --noerrdialogs --kiosk --disable-infobars --app=http://localhost:8082 --ignore-certificate-errors-spki-list --ignore-ssl-errors --ignore-certificate-errors --window-postion=1920,0 --user-data-dir='Test2' 2>/dev/null
-
@NathTheDude if u start the json file, pm2 reads the info, gives u a nice name etc.
pm2 delete 0 or 1
pm2 saveThen pm2 start the json file.
And pm2 save
To save for reboot -
I was able to recreate the problem, and good news its just a typo
--window-postion=1920,0
should be
--window-position=1920,0
missing i in position
-
Thank you for this although it is still producing 2 x MM’s on the first screen (MM and MM2), not sure what could be wrong. If you have it working it obviously must me something I have done wrong…hmmmmm.
I will review all the files and let you know if I find anything.
-
@sdetweil . I know it is a bit extreme but thought I would just start again and burn another image to the SD card. I am in the same position though
- burnt image to sd card, booted rpi and did an update, enabled SSH and VNC
- installed MM with your automation script
- copied the ‘MagicMirror’ Folder to ‘MagicMirror2’, in the new folder I updated:
– config.js - just updated port to 8082
– run-start.sh - updated with window position and profile
– mm.sh - new location
– pm2_MagicMirror.json - updated with new locations - within the MagicMirror2 folder,
– pm2 start ./installers/pm2_MagicMirror.json
– pm2 save - This then started another MM from the MM2 folder on to screen 1
- htop confirms that processes are running from both MagicMirror and MagicMirror2
- pm2 status confirms that both are up
In your setup, if you update the chromium line within run-start.sh with bad entries does that break your setup. Does not seem to be running this command from what I can see in my setup
-
well, I finally got it to work , note I have two displays that support 4k, 3840x2160, so my screen pos is double yours
in /boot/config.txt
[pi4] # Enable DRM VC4 V3D driver on top of the dispmanx display stack dtoverlay=vc4-fkms-v3d max_framebuffers=4
and in /boot/cmdline.txt
add cma=384M to the end of the line, like this…plymouth.ignore-serial-consoles cma=384M
then you must power down and back up for these changes to be applied
found here
https://retropie.org.uk/forum/topic/24436/drm_ioctl_mode_create_dumb-failed-cannot-allocate-memory/9I was getting the DRM cannot allocate memory error
MagicMirror/run-start.sh line for chromium
chromium-browser -noerrdialogs -kiosk --user-data-dir='Default' --window-position=0,0 -start_maximized --disable-infobars --app=http://localhost:$port --ignore-certificate-errors-spki-list --ignore-ssl-errors --ignore-certificate-errors 2>/dev/null
MagicMirror2/run-start.sh line for chromium
chromium-browser --disable-bundled-ppapi-flash -noerrdialogs -kiosk -start_maximized --window-position="3840,0" --disable-infobars --app=http://localhost:$port --ignore-certificate-errors-spki-list --ignore-ssl-errors --ignore-certificate-errors --user-data-dir='Test2' # 2>/dev/null
this boots up and both MM start via pm2 and display on separate screens, with different content (modules in different positions)
here is a screenshot of my dev system connected to both MM servers at the same time
(the displays are two hdmi ports on the same TV, so I can’t show them physically at the same time)
-
@sdetweil - nice 2 x 4k’s.
So, I did what you mentioned in your last post but unfortunetly I am in the same issue. I wonder if your problem was more to do with 2 x 4k’s which is perhaps different to mine? I am not sure.
-
@sdetweil - if you comment out the chromium line in the run-start.sh does this cause you any issues/errors?