Hi to all members!
First I want to thank all contributor for the Magic Mirror project. I really enjoy this project to build my own mirror and learn new things.
I have a pi 3b+ running on the latest OS :
stretch V9.6
I have installed MM and followed all documentations then implemented a few modules.
the defaults one they are working fine ( some are commented such as alert and notifications (For debugging the blank screen issue I have and make sure the cause was not those modules)
MMM-AssistantMk2 & MMM-Hotword ( perfectly works )
MMM-NowPlayingOnSpotify working fine but commented for as well because getting too much errors ( when nothing was played )
mmm-systemtemperature : Works OK
MMM-DarkSkyForecast :Works OK
MMM-Hue : Works OK
MMM-Traffic : Works OK
MMM-PIR-Sensor (To turn off&on the HDMI Port) : Works OK
You will tell me all “works OK” so what’s wrong with you guy :)
Well after I start my MM all is “work ok” (Again)
The Pir sensor delay works and well shutdown the HDMI port and it comes back when a movement is detected. My delay is set to 10 mins and if I come back after 15mins the screen is back ON, So far so good .
Now my issue : When I come back after a while let’s say an hour or more, the PIR sensor turn ON the HDMI port and my screen goes on.
Then surprise I get a blank screen.
I know I’m not in screen saver mode because after a VNC connection I see the little popup on screen and I can see the mouse moving as well.
My conclusion is that the MM is in a kind of “sleep” mode waiting to be wake up.
I can bring the MM modules back on screen for example by giving input via the Hotword/assistant module so when I say “Jarvis” the hotword is detected and MM & all modules directly come back on screen.
No error in the MM error log from PM2 nor in the out file.
Dev mode ( Shift CTRL I ) show me that the modules are still well receiving notification from other modules )
Before posting this thread here as I said I read the full installation documentation and more. I did many research for a similar problem and didn’t find . I looked at many places and applied several solutions. Unfortunately without success ).
It look like it’s a matter in the MM code itself ( But I maybe wrong I do not want to bother anyone by saying this ) Just a personnal thought.
Here is my setup :
/etc/lightdm/lightdm.conf
[SeatDefaults] ( I had to create this entry in the file )
xserver-command=X -s 0 -dpms
As well added to
[Seat:*] ( which was existing prior editing the file )
xserver-command=X -s 0 -dpms
Just in case ( but I have added this after and that didn’t help )
The file /etc/xdg/lxsession/LXDE-pi/autostart
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
point-rpi
@xset s noblank
@xset s off
@xset -dpms
And /etc/xdg/lxsession/LXDE/autostart
@lxpanel --profile LXDE
@pcmanfm --desktop --profile LXDE
@xscreensaver -no-splash
@xset s noblank
@xset s off
@xset -dpms
I didn’t make it in /.config/lxsession/LXDE-pi/autostart because when creating this file my system boot in openbox and not in desktop session.
And I want to keep the desktop for other reason.
I installed xscreen and turn of powersaving on screen and screen saver.
My config.js file :
/* Magic Mirror Config Sample
*
* By Michael Teeuw http://michaelteeuw.nl
* MIT Licensed.
*/
var config = {
"port": 8080,
"language": "fr",
"timeFormat": 24,
"units": "metric",
"modules": [
// {
// "module": "alert"
// },
// {
// "module": "updatenotification",
// "position": "top_bar"
// },
{
"module": "clock",
"position": "top_left"
},
/* {
"module": "MMM-NowPlayingOnSpotify",
"position": "top_left",
"config": {
"clientID": "f---------------------------0",
"clientSecret": "7------------------------------6",
"accessToken": "B------------------------------------------A",
"refreshToken": "A------------------------------------A"
}
},
*/
{
"module": "MMM-AssistantMk2",
"position": "top_right",
"config": {
"record": {
"recordProgram": "arecord",
"device": "plughw:1"
},
"play": {
"playProgram": "mpg321"
},
"deviceLocation": {
"coordinates": {
"latitude": 48.739464,
"longitude": 2.557584
}
},
"defaultProfile": "default",
"profiles": {
"default": {
"profileFile": "default.json",
"lang": "fr-FR"
}
},
"responseVoice": true,
"responseScreen": true,
"responseAlert": true,
"screenZoom": "80%",
"screenDuration": 3000,
"youtubeAutoplay": true,
"pauseOnYoutube": false,
"youtubePlayerVars": {
"controls": 0,
"loop": 1,
"rel": 0
},
"youtubePlayQuality": "default",
"verbose": false,
"auth": {
"keyFilePath": "./credentials.json"
},
"action": {},
"transcriptionHook": {},
"command": {},
"notifications": {
"ASSISTANT_ACTIVATE": "ASSISTANT_ACTIVATE",
"ASSISTANT_DEACTIVATE": "ASSISTANT_CLEAR",
"ASSISTANT_ACTIVATED": "HOTWORD_PAUSE",
"ASSISTANT_DEACTIVATED": "HOTWORD_RESUME",
"ASSISTANT_ACTION": "ASSISTANT_ACTION",
"DEFAULT_HOOK_NOTIFICATION": "ASSISTANT_HOOK",
"TEXT_QUERY": "ASSISTANT_QUERY",
"SAY_TEXT": "ASSISTANT_SAY"
}
}
},
{
"module": "MMM-Hotword",
"config": {
"snowboy": [
/* {
"hotwords": "smartmirror",
"file": "resources/models/smart_mirror.umdl",
"sensitivity": "0.5"
},
{
"hotwords": "snowboy",
"file": "resources/models/snowboy.umdl",
"sensitivity": "0.5"
},
*/
{
"file": "resources/models/jarvis.umdl",
"sensitivity": "0.6,0.60",
"hotwords": [
"jarvis",
"jarvis"
]
}
],
"record": {
"sampleRate": 16000,
"threshold": 0.5,
"thresholdStart": null,
"thresholdEnd": null,
"silence": 1,
"verbose": false,
"recordProgram": "arecord",
"device": "plughw:1"
},
"autostart": true,
"autorestart": true,
"notifications": {
"PAUSE": "HOTWORD_PAUSE",
"RESUME": "HOTWORD_RESUME",
"LISTENING": "HOTWORD_LISTENING",
"SLEEPING": "HOTWORD_SLEEPING",
"ERROR": "HOTWORD_ERROR"
},
"onDetected": {
notification: function (payload) {
return "ASSISTANT_ACTIVATE";
},
payload: function (payload){
return {
profile: payload.hotword
};
}
},
},
},
{
"module": "MMM-Traffic",
"position": "lower_third",
"config": {
"api_key": "A--------------------------------------------E",
"mode": "driving",
"origin": "my street France",
"destination": "my street , France",
"route_name": "De la maison au travail",
"changeColor": true,
"showGreen": true,
"limitYellow": 5,
"limitRed": 20,
"traffic_model": "best_guess",
"interval": 1000000
},
"classes": "dimmed medium"
},
{
"module": "MMM-Hue",
"position": "top_center",
"config": {
"bridgeip": "192.168.0.44",
"userid": "H---------------------------------u",
"colour": false,
"refreshTime": "30000"
}
},
{
module: "MMM-DarkSkyForecast",
header: "Weather",
position: "top_right",
classes: "default everyone",
disabled: false,
config: {
apikey: "4------------------------------------------5",
latitude: "48.725610",
longitude: "2.572350",
updateInterval: "60",
language: "fr",
label_timeFormat: "k[h]",
label_days: ["Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"],
iconset: "4c",
concise: false,
forecastLayout: "tiled"
}
},
{
module: 'MMM-PIR-Sensor',
config: {
"sensorPIN": "23",
"powerSavingDelay": 600,
}
},
{
module: 'mmm-systemtemperature',
position: 'bottom_left', // This can be any of the regions.
classes: 'small dimmed', // Add your own styling. Optional.
config: {
// See 'Configuration options' for more information.
}
},
{
"module": "newsfeed",
"position": "bottom_bar",
"config": {
"feeds": [
{
"title": "BFMTV",
"url": "https://www.bfmtv.com/rss/info/flux-rss/flux-toutes-les-actualites/"
}
],
"showSourceTitle": true,
"showPublishDate": true
}
}
],
"address": "localhost",
"ipWhitelist": [
"127.0.0.1",
"192.168.0.21",
"::ffff:192.168.0.23/24",
"192.168.0.23/24"
]
};
/*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== 'undefined') {module.exports = config;}
Finally I’m up to date on MM and all Modules.
I didn’t use the OpenGL driver in /boot/config.txt as in was generating error in the logs, and my pi is Fan cooled So I don’t worry for now about system temp ( always around 50°C) and CPU usage ( around 40% when MM + VNC are running )
So if anyone have clue / good question to ask my to help me dig out this issue and resolve it you are most that welcome !!! I hope that this post was not too long but I wanted to give as much details as I can.
If you need any other info feel free to ask me.
Thank you again for all your work and help .