Did you try using just Remote Control alone with MM?
[ ] I have and the error still happening
Description
I wanted to use the Module Controls tab in order to control the external modules.
Expected behavior
The Module Controls tab was supposed to show up on the Remote Control website and on clicking on it I was supposed to see all my modules listed down. On clicking on them, the module controls for these modules were supposed to show up.
pi@raspberrypi:~/MagicMirror $ npm run start
> magicmirror@2.21.0 start
> DISPLAY="${DISPLAY:=:0}" ./node_modules/.bin/electron js/electron.js
[16.12.2022 22:54.51.735] [LOG] Starting MagicMirror: v2.21.0
[16.12.2022 22:54.51.753] [LOG] Loading config ...
[16.12.2022 22:54.51.785] [LOG] Loading module helpers ...
[16.12.2022 22:54.52.192] [LOG] Initializing new module helper ...
[16.12.2022 22:54.52.201] [LOG] Module helper loaded: MMM-Remote-Control
[16.12.2022 22:54.52.246] [LOG] Initializing new module helper ...
[16.12.2022 22:54.52.248] [LOG] Module helper loaded: MMM-Face-Reco-DNN
[16.12.2022 22:54.52.254] [LOG] No helper found for module: MMM-Face-Multi-User-Recognition-SMAI.
[16.12.2022 22:54.52.290] [LOG] Initializing new module helper ...
[16.12.2022 22:54.52.297] [LOG] Module helper loaded: MMM-Remote-Control-Repository
[16.12.2022 22:54.52.305] [LOG] No helper found for module: MMM-Dynamic-Modules.
[16.12.2022 22:54.53.482] [LOG] Initializing new module helper ...
[16.12.2022 22:54.53.484] [LOG] Module helper loaded: MMM-GoogleAssistant
[16.12.2022 22:54.53.492] [LOG] Initializing new module helper ...
[16.12.2022 22:54.53.495] [LOG] Module helper loaded: EXT-Detector
[16.12.2022 22:54.54.249] [LOG] Initializing new module helper ...
[16.12.2022 22:54.54.251] [LOG] Module helper loaded: EXT-UpdateNotification
[16.12.2022 22:54.54.253] [LOG] No helper found for module: alert.
[16.12.2022 22:54.54.262] [LOG] Initializing new module helper ...
[16.12.2022 22:54.54.264] [LOG] Module helper loaded: updatenotification
[16.12.2022 22:54.54.266] [LOG] No helper found for module: clock.
[16.12.2022 22:54.54.268] [LOG] No helper found for module: MMM-MagicMover.
[16.12.2022 22:54.54.801] [LOG] Initializing new module helper ...
[16.12.2022 22:54.54.803] [LOG] Module helper loaded: calendar
[16.12.2022 22:54.54.807] [LOG] Initializing new module helper ...
[16.12.2022 22:54.54.808] [LOG] Module helper loaded: EXT-Background
[16.12.2022 22:54.55.959] [LOG] Initializing new module helper ...
[16.12.2022 22:54.55.961] [LOG] Module helper loaded: EXT-Spotify
[16.12.2022 22:54.56.658] [LOG] Initializing new module helper ...
[16.12.2022 22:54.56.659] [LOG] Module helper loaded: EXT-YouTubeCast
[16.12.2022 22:54.57.011] [LOG] Initializing new module helper ...
[16.12.2022 22:54.57.013] [LOG] Module helper loaded: MMM-Screencast
[16.12.2022 22:54.57.538] [LOG] Initializing new module helper ...
[16.12.2022 22:54.57.540] [LOG] Module helper loaded: Gateway
[16.12.2022 22:54.57.645] [LOG] Initializing new module helper ...
[16.12.2022 22:54.57.649] [LOG] Module helper loaded: MMM-Spotify
[16.12.2022 22:54.57.767] [LOG] Initializing new module helper ...
[16.12.2022 22:54.57.769] [LOG] Module helper loaded: MMM-network-signal
[16.12.2022 22:54.57.772] [LOG] No helper found for module: compliments.
[16.12.2022 22:54.57.774] [LOG] No helper found for module: weather.
[16.12.2022 22:54.57.830] [LOG] Initializing new module helper ...
[16.12.2022 22:54.57.832] [LOG] Module helper loaded: newsfeed
[16.12.2022 22:54.58.701] [LOG] Initializing new module helper ...
[16.12.2022 22:54.58.704] [LOG] Module helper loaded: MMM-DynamicWeather
[16.12.2022 22:54.58.706] [LOG] No helper found for module: MMM-AlarmClock.
[16.12.2022 22:54.58.709] [LOG] No helper found for module: MMM-pages.
[16.12.2022 22:54.58.712] [LOG] No helper found for module: MMM-page-indicator.
[16.12.2022 22:54.59.259] [LOG] Initializing new module helper ...
[16.12.2022 22:54.59.261] [LOG] Module helper loaded: MMM-GooglePhotos
[16.12.2022 22:54.59.985] [LOG] Initializing new module helper ...
[16.12.2022 22:54.59.988] [LOG] Module helper loaded: MMM-Todoist
[16.12.2022 22:54.59.990] [LOG] All module helpers loaded.
[16.12.2022 22:55.00.019] [LOG] Starting server on port 8080 ...
[16.12.2022 22:55.00.026] [WARN] You're using a full whitelist configuration to allow for all IPs
[16.12.2022 22:55.00.058] [LOG] Server started ...
[16.12.2022 22:55.00.060] [LOG] Connecting socket for: MMM-Remote-Control
[16.12.2022 22:55.00.063] [LOG] Starting node helper for: MMM-Remote-Control
[16.12.2022 22:55.00.077] [LOG] Connecting socket for: MMM-Face-Reco-DNN
[16.12.2022 22:55.00.079] [LOG] Starting module helper: MMM-Face-Reco-DNN
[16.12.2022 22:55.00.081] [LOG] Connecting socket for: MMM-Remote-Control-Repository
[16.12.2022 22:55.00.083] [LOG] Connecting socket for: MMM-GoogleAssistant
[16.12.2022 22:55.00.086] [LOG] [GA] Read config.js and check ConfigDeepMerge...
[16.12.2022 22:55.00.090] [LOG] [GA] Perfect ConfigDeepMerge activated!
[16.12.2022 22:55.00.092] [LOG] Connecting socket for: EXT-Detector
[16.12.2022 22:55.00.097] [LOG] [DETECTOR] EXT-Detector Version: 1.0.1 rev: 220315
[16.12.2022 22:55.00.100] [LOG] Connecting socket for: EXT-UpdateNotification
[16.12.2022 22:55.00.107] [LOG] [UN] EXT-UpdateNotification Version: 1.0.5 rev: 220921
[16.12.2022 22:55.00.114] [LOG] [UN] MagicMirror is running on pid: 7110
[16.12.2022 22:55.00.118] [LOG] Connecting socket for: updatenotification
[16.12.2022 22:55.00.121] [LOG] Starting module helper: updatenotification
[16.12.2022 22:55.00.124] [LOG] Connecting socket for: calendar
[16.12.2022 22:55.00.128] [LOG] Starting node helper for: calendar
[16.12.2022 22:55.00.132] [LOG] Connecting socket for: EXT-Background
[16.12.2022 22:55.00.136] [LOG] Starting module helper: EXT-Background
[16.12.2022 22:55.00.139] [LOG] Connecting socket for: EXT-Spotify
[16.12.2022 22:55.00.141] [LOG] Connecting socket for: EXT-YouTubeCast
[16.12.2022 22:55.00.142] [LOG] Starting module helper: EXT-YouTubeCast
[16.12.2022 22:55.00.144] [LOG] Connecting socket for: MMM-Screencast
[16.12.2022 22:55.00.147] [LOG] Connecting socket for: Gateway
[16.12.2022 22:55.00.152] [LOG] Connecting socket for: MMM-Spotify
[16.12.2022 22:55.00.157] [LOG] Connecting socket for: MMM-network-signal
[16.12.2022 22:55.00.161] [LOG] MMM-network-signal helper started ...
[16.12.2022 22:55.00.164] [LOG] Connecting socket for: newsfeed
[16.12.2022 22:55.00.166] [LOG] Starting node helper for: newsfeed
[16.12.2022 22:55.00.168] [LOG] Connecting socket for: MMM-DynamicWeather
[16.12.2022 22:55.00.170] [LOG] Connecting socket for: MMM-GooglePhotos
[16.12.2022 22:55.00.173] [LOG] Connecting socket for: MMM-Todoist
[16.12.2022 22:55.00.177] [LOG] Starting node helper for: MMM-Todoist
[16.12.2022 22:55.00.178] [LOG] Sockets connected & modules started ...
[16.12.2022 22:55.01.458] [LOG] Launching application.
MESA-LOADER: failed to retrieve device information
MESA-LOADER: failed to retrieve device information
MESA-LOADER: failed to retrieve device information
MESA-LOADER: failed to open kms_swrast (search paths /usr/lib/arm-linux-gnueabihf/dri:\$${ORIGIN}/dri:/usr/lib/dri)
failed to load driver: kms_swrast
MESA-LOADER: failed to open swrast (search paths /usr/lib/arm-linux-gnueabihf/dri:\$${ORIGIN}/dri:/usr/lib/dri)
failed to load swrast driver
[16.12.2022 22:55.07.652] [ERROR] ERROR! Could not find main module js file for MMM-pages-screencast
[7149:1216/225516.312007:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times!
[16.12.2022 22:55.18.236] [LOG] Create new calendarfetcher for url: https://calendar.google.com/calendar/ical/nonikavasipalli29%40gmail.com/public/basic.ics - Interval: 300000
[16.12.2022 22:55.18.665] [LOG] Create new newsfetcher for url: https://feeds.feedburner.com/ndtvnews-top-stories - Interval: 300000
[16.12.2022 22:55.18.683] [INFO] [MMM-DynamicWeather] Getting Holiday data
[16.12.2022 22:55.18.704] [INFO] [MMM-DynamicWeather] Getting Weather API data
[16.12.2022 22:55.20.290] [LOG] [DETECTOR] All needed @bugsounet library loaded !
[16.12.2022 22:55.20.296] [LOG] [DETECTOR] Platform: 'raspberry-pi'; attempting to use 'arecord' to access microphone ...
[16.12.2022 22:55.20.371] [ERROR] (node:7110) UnhandledPromiseRejectionWarning: Error: Porcupine failed to initialize
at pvStatusToException (/home/pi/MagicMirror/modules/EXT-Detector/node_modules/@picovoice/porcupine-node/errors.js:40:13)
at new Porcupine (/home/pi/MagicMirror/modules/EXT-Detector/node_modules/@picovoice/porcupine-node/index.js:116:7)
at PORCUPINE.init (/home/pi/MagicMirror/modules/EXT-Detector/node_modules/@bugsounet/porcupine/index.js:112:22)
at Class.initialize (/home/pi/MagicMirror/modules/EXT-Detector/node_helper.js:94:22)
at process.processTicksAndRejections (node:internal/process/task_queues:96:5)
(Use `electron --trace-warnings ...` to show where the warning was created)
[16.12.2022 22:55.20.373] [ERROR] (node:7110) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
[16.12.2022 22:55.20.517] [LOG] [RCREPO] Repository scanning...
[16.12.2022 22:55.20.541] [LOG] [GA] MMM-GoogleAssistant Version: 4.0.8 rev: 221210
[16.12.2022 22:55.20.552] [LOG] [GA] Platform: 'raspberry-pi'; attempting to use 'arecord' to access microphone ...
[16.12.2022 22:55.20.565] [LOG] [GA] RECIPE_LOADED: ../../EXT-Spotify/recipe/EXT-Spotify.js
[16.12.2022 22:55.20.568] [LOG] [GA] Google Assistant is initialized.
[16.12.2022 22:55.20.573] [INFO] Checking git for module: MMM-Remote-Control
[16.12.2022 22:55.20.665] [LOG] [BACKGROUND] EXT-Background Version: 1.0.2 rev: 220410
[16.12.2022 22:55.20.676] [LOG] [SPOTIFY] EXT-Spotify Version: 2.0.5 rev: 221127
[16.12.2022 22:55.20.792] [LOG] [CAST] EXT-YouTubeCast Version: 1.0.4 rev: 220805
[16.12.2022 22:55.20.849] [LOG] [GATEWAY] Gateway Version: 2.2.3 rev: 221210
[16.12.2022 22:55.20.895] [LOG] [SPOTIFY] MMM-Spotify Version: 2.2.1
[16.12.2022 22:55.21.193] [LOG] [SPOTIFY] MMM-Spotify Version: 2.2.1
[16.12.2022 22:55.21.710] [INFO] Checking git for module: MMM-Face-Reco-DNN
[16.12.2022 22:55.23.585] [LOG] [GATEWAY] Start app...
[16.12.2022 22:55.23.594] [WARN] [GATEWAY] WARN: You are using default username or default password
[16.12.2022 22:55.23.611] [WARN] [GATEWAY] WARN: Don't forget to change it!
[16.12.2022 22:55.26.237] [LOG] [HyperWatch] Logger is enabled
[16.12.2022 22:55.26.241] [LOG] [GATEWAY] Start listening on myip
[16.12.2022 22:55.26.790] [LOG] [DETECTOR] Starts listening. 0 Models
[16.12.2022 22:55.27.000] [ERROR] (node:7110) UnhandledPromiseRejectionWarning: Error: Porcupine failed to initialize
at pvStatusToException (/home/pi/MagicMirror/modules/EXT-Detector/node_modules/@picovoice/porcupine-node/errors.js:40:13)
at new Porcupine (/home/pi/MagicMirror/modules/EXT-Detector/node_modules/@picovoice/porcupine-node/index.js:116:7)
at PORCUPINE.init (/home/pi/MagicMirror/modules/EXT-Detector/node_modules/@bugsounet/porcupine/index.js:112:22)
at PORCUPINE.start (/home/pi/MagicMirror/modules/EXT-Detector/node_modules/@bugsounet/porcupine/index.js:117:37)
at Class.activate (/home/pi/MagicMirror/modules/EXT-Detector/node_helper.js:117:22)
at Class.socketNotificationReceived (/home/pi/MagicMirror/modules/EXT-Detector/node_helper.js:38:33)
at Socket.<anonymous> (/home/pi/MagicMirror/js/node_helper.js:108:11)
at Socket.emit (node:events:526:28)
at Socket.emitUntyped (/home/pi/MagicMirror/node_modules/socket.io/dist/typed-events.js:69:22)
at /home/pi/MagicMirror/node_modules/socket.io/dist/socket.js:475:39
[16.12.2022 22:55.27.015] [ERROR] (node:7110) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
[16.12.2022 22:55.27.101] [INFO] Checking git for module: MMM-Face-Multi-User-Recognition-SMAI
[16.12.2022 22:55.27.391] [INFO] [MMM-DynamicWeather] Received successful Weather API data
[16.12.2022 22:55.27.500] [LOG] Todoist api request status=410
[16.12.2022 22:55.27.742] [INFO] [MMM-DynamicWeather] Received successful Holiday data
[16.12.2022 22:55.27.909] [LOG] [SPOTIFY:ERROR] Token refreshing failed.
[16.12.2022 22:55.27.954] [ERROR] [SPOTIFY - user] Failed to refresh Token.
[16.12.2022 22:55.27.962] [ERROR] [SPOTIFY - user] Invalid response
[16.12.2022 22:55.27.966] [ERROR] [SPOTIFY - user] Response error code: 400
[16.12.2022 22:55.27.969] [ERROR] [SPOTIFY - user] Response error text: Bad Request
[16.12.2022 22:55.27.996] [ERROR] [SPOTIFY - user] Failed to refresh Token.
[16.12.2022 22:55.27.997] [ERROR] [SPOTIFY - user] Invalid response
[16.12.2022 22:55.28.002] [ERROR] [SPOTIFY - user] Response error code: 400
[16.12.2022 22:55.28.004] [ERROR] [SPOTIFY - user] Response error text: Bad Request
[16.12.2022 22:55.28.226] [INFO] Checking git for module: MMM-Remote-Control-Repository
[16.12.2022 22:55.29.661] [INFO] Checking git for module: MMM-Dynamic-Modules
[16.12.2022 22:55.29.823] [LOG] [RCREPO] modules.json is updated.
[16.12.2022 22:55.29.871] [INFO] Checking git for module: MMM-GoogleAssistant
[16.12.2022 22:55.30.240] [INFO] Checking git for module: EXT-Detector
[16.12.2022 22:55.30.418] [INFO] Checking git for module: EXT-UpdateNotification
[16.12.2022 22:55.30.748] [INFO] Checking git for module: MMM-MagicMover
[16.12.2022 22:55.31.115] [INFO] Checking git for module: EXT-Background
[16.12.2022 22:55.31.829] [INFO] Calendar-Fetcher: Broadcasting 2 events.
[16.12.2022 22:55.31.864] [INFO] Checking git for module: EXT-Spotify
[16.12.2022 22:55.31.998] [INFO] Newsfeed-Fetcher: Broadcasting 19 items.
[16.12.2022 22:55.32.104] [INFO] Checking git for module: EXT-YouTubeCast
[16.12.2022 22:55.32.534] [INFO] Checking git for module: MMM-Screencast
[16.12.2022 22:55.32.781] [INFO] Checking git for module: Gateway
[16.12.2022 22:55.32.920] [INFO] Checking git for module: MMM-Spotify
[16.12.2022 22:55.33.106] [INFO] Checking git for module: MMM-network-signal
[16.12.2022 22:55.33.458] [INFO] Checking git for module: MMM-DynamicWeather
[16.12.2022 22:55.33.640] [INFO] Checking git for module: MMM-AlarmClock
[16.12.2022 22:55.33.801] [INFO] Checking git for module: MMM-pages
[16.12.2022 22:55.34.056] [INFO] Checking git for module: MMM-page-indicator
[16.12.2022 22:55.34.475] [INFO] Checking git for module: MMM-GooglePhotos
[16.12.2022 22:55.34.671] [INFO] Checking git for module: MMM-Todoist
[16.12.2022 22:55.35.074] [INFO] Checking git for module: default
[16.12.2022 22:55.46.392] [LOG] [MMM-Face-Reco-DNN] loading encodings + face detector...
[16.12.2022 22:55.46.534] [LOG] [MMM-Face-Reco-DNN] starting video stream...
[16.12.2022 22:56.16.187] [LOG] Shutting down server...
[16.12.2022 22:56.16.191] [LOG] [MMM-Face-Reco-DNN] Terminate python
[16.12.2022 22:56.16.196] [LOG] Stopping module helper: MMM-Remote-Control-Repository
[16.12.2022 22:56.16.199] [LOG] Stopping module helper: MMM-GoogleAssistant
[16.12.2022 22:56.16.201] [LOG] Stopping module helper: EXT-Detector
[16.12.2022 22:56.16.204] [LOG] Stopping module helper: EXT-UpdateNotification
[16.12.2022 22:56.16.207] [LOG] Stopping module helper: updatenotification
[16.12.2022 22:56.16.210] [LOG] Stopping module helper: calendar
[16.12.2022 22:56.16.214] [LOG] Stopping module helper: EXT-Background
[16.12.2022 22:56.16.217] [LOG] Stopping module helper: EXT-Spotify
[16.12.2022 22:56.16.220] [LOG] Stopping module helper: EXT-YouTubeCast
[16.12.2022 22:56.16.223] [LOG] Stopping module helper: MMM-Screencast
[16.12.2022 22:56.16.226] [LOG] Stopping module helper: Gateway
[16.12.2022 22:56.16.228] [LOG] Stopping module helper: MMM-Spotify
[16.12.2022 22:56.16.230] [LOG] Stopping module helper: MMM-network-signal
[16.12.2022 22:56.16.232] [LOG] Stopping module helper: newsfeed
[16.12.2022 22:56.16.234] [LOG] Stopping module helper: MMM-DynamicWeather
[16.12.2022 22:56.16.237] [LOG] Stopping module helper: MMM-Todoist
[16.12.2022 22:56.16.569] [LOG] [MMM-Face-Reco-DNN] Terminate python
[16.12.2022 22:56.16.613] [LOG] [MMM-Face-Reco-DNN] finished running...
pi@raspberrypi:~/MagicMirror $
config.js
/* MagicMirror² Config Sample
*
* By Michael Teeuw https://michaelteeuw.nl
* MIT Licensed.
*
* For more information on how you can configure this file
* see https://docs.magicmirror.builders/configuration/introduction.html
* and https://docs.magicmirror.builders/modules/configuration.html
*/
let config = {
address: "0.0.0.0", // Address to listen on, can be:
// - "localhost", "127.0.0.1", "::1" to listen on loopback interface
// - another specific IPv4/6 to listen on a specific interface
// - "0.0.0.0", "::" to listen on any interface
// Default, when address config is left out or empty, is "localhost"
electronOptions: {
webPreferences: {
webviewTag: true
}
},
port: 8080,
basePath: "/", // The URL path where MagicMirror² is hosted. If you are using a Reverse proxy
// you must set the sub path here. basePath must end with a /
ipWhitelist: [], // Set [] to allow all IP addresses
// or add a specific IPv4 of 192.168.1.5 :
// ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"],
// or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format :
// ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],
useHttps: false, // Support HTTPS or not, default "false" will use HTTP
httpsPrivateKey: "", // HTTPS private key path, only require when useHttps is true
httpsCertificate: "", // HTTPS Certificate path, only require when useHttps is true
language: "en",
locale: "en-IN",
logLevel: ["INFO", "LOG", "WARN", "ERROR"], // Add "DEBUG" for even more logging
timeFormat: 12,
units: "metric",
// serverOnly: true/false/"local" ,
// local for armv6l processors, default
// starts serveronly and then starts chrome browser
// false, default for all NON-armv6l devices
// true, force serveronly mode, because you want to.. no UI on this device
modules: [
{
module: 'MMM-Remote-Control',
// uncomment the following line to show the URL of the remote control on the mirror
position: 'bottom_left',
// you can hide this module afterwards from the remote control itself
config: {
apiKey: ''
}
},
{
module: 'MMM-Face-Reco-DNN',
config: {
// Logout 15 seconds after user was not detected any more
// If they are detected within this period, the delay will start again
logoutDelay: 20000,
// How often the recognition starts in milliseconds
// With a Raspberry Pi 3+ it works well every 2 seconds
checkInterval: 2000,
// Module set used for when there is no face detected ie no one is in front of the camera
noFaceClass: 'noface',
// Module set used for when there is an unknown/unrecognised face detected
unknownClass: 'unknown',
// Module set used for when there is a known/recognised face detected
knownClass: 'known',
// Module set used for strangers and if no user is detected
defaultClass: 'default',
// Set of modules which should be shown for any user ie when there is any face detected
everyoneClass: 'everyone',
// Set of modules that are always shown - show if there is a face or no face detected
alwaysClass: 'always',
// XML to recognize with haarcascade
cascade: 'modules/MMM-Face-Reco-DNN/tools/haarcascade_frontalface_default.xml',
// Pre-encoded pickle with the faces
encodings: 'modules/MMM-Face-Reco-DNN/tools/encodings.pickle',
// Use Raspberry Pi camera or another type
// 1 = RasPi camera, 0 = other camera
usePiCamera: 0,
// If using another type of camera, you can choose
// i.e. 0 = /dev/video0 or 'http://link.to/live'
source: 0,
// Rotate camera
rotateCamera: 0,
// Method of facial recognition
// dnn = deep neural network, haar = haarcascade
method: 'dnn',
// Which face detection model to use
// "hog" is less accurate but faster on CPUs
// "cnn" is a more accurate deep-learning model which is GPU/CUDA accelerated
detectionMethod: 'hog',
// How long in milliseconds modules take to hide and show
animationSpeed: 0,
// Path to Python to run the face recognition
// null or '' means default path
pythonPath: null,
// Should a welcome message be shown using the MagicMirror alerts module?
welcomeMessage: true,
// Dictionary for person name mapping in welcome message
// Allows for displaying name with complex character sets in welcome message e.g. jerome => Jérôme, hideyuki => 英之
usernameDisplayMapping: null,
// Capture new pictures of recognized people, if unknown we save it in folder "unknown"
// So you can extend your dataset and retrain it afterwards for better recognitions
extendDataset: false,
// If extendDataset is true, you need to set the full path of the dataset
dataset: 'modules/MMM-Face-Reco-DNN/dataset/',
// How much distance between faces to consider it a match. Lower is more strict.
tolerance: 0.6,
// allow multiple concurrent user logins, 0=no, any other number is the maximum number of concurrent logins
multiUser: 1,
}
},
{
module: "MMM-Face-Multi-User-Recognition-SMAI",
classes: 'always',
position: "center",
config: {
useMMMFaceRecoDNN: true
}
},
{
module: "MMM-Remote-Control-Repository",
classes: 'always'
},
{
module: "MMM-Dynamic-Modules",
classes: 'always'
},
{
module: "MMM-GoogleAssistant",
position: "top_left",
classes: 'always',
configDeepMerge: true,
config: {
debug: false,
stopCommand: ["stop","bye"],
assistantConfig: {
lang: "en-IN",
latitude:,
longitude:,
},
responseConfig: {
chimes: {},
imgStatus: {},
zoom: {}
},
recipes: [
"../../EXT-Spotify/recipe/EXT-Spotify.js"
],
}
},
{
module: "EXT-Detector",
position: "top_left",
classes: 'always',
configDeepMerge: true,
config: {
debug: false,
useIcon: false,
touchOnly: false,
detectors: [
{
detector: "Snowboy",
Model: "jarvis",
Sensitivity: null
},
{
detector: "Porcupine",
Model: "ok google",
Sensitivity: null
},
{
detector: "Porcupine",
Model: "hey google",
Sensitivity: null
}
]
}
},
{
module: "EXT-UpdateNotification",
position: "top_bar",
classes: 'always',
configDeepMerge: true
},
{
module: "alert",
classes: 'always'
},
{
module: "updatenotification",
position: "top_bar",
classes: 'always'
},
{
module: "clock",
position: "top_left",
classes: 'always'
},
{
module: "MMM-MagicMover",
config: {
updateInterval: 10 * 60 * 1000,
ignoredRegions: [],
maxMove: 15,
},
classes: 'always',
},
{
module: "calendar",
header: "Schedule",
classes: 'always',
position: "top_left",
config: {
calendars: [
{
symbol: "calendar-check",
url: ""
}
]
}
},
{
module: "EXT-Background",
classes: 'always',
config: {
model: "jarvis",
myImage: null
}
},
{
module: 'EXT-Spotify',
classes: 'always',
config: {
updateInterval: 1000,
idleInterval: 10000,
useBottomBar: false,
CLIENT_ID: "",
CLIENT_SECRET: "",
mini: true,
forceSCL: false,
noCanvas: false
}
},
{
module: "EXT-YouTubeCast",
classes: 'always',
position: "bottom_right", // optional (can be deleted if using fullscreen)
config: {
debug: false,
fullscreen: false,
width: "30vw",
height: "30vh",
alwaysDisplayed: true,
castName: "MagicMirror",
port: 6360
}
},
{
module: 'MMM-Screencast',
classes: 'always',
position: 'center', // This position is for a hidden <div /> and not the screencast window
config: {
position: 'center',
height: 300,
width: 500,
}
},
{
module: 'Gateway',
classes: 'always',
config: {
debug: false,
port: 8081,
username: "admin",
password: "admin",
noLogin: false,
usePM2: false,
PM2Id: 0,
useMapping: false,
portMapping: 8081
}
},
{
module: "MMM-Spotify",
classes: 'always',
position: "top_left",
config: {
debug: false,
style: "mini"
}
},
{
module: "MMM-network-signal",
classes: 'always',
position: "top_right",
config: {
// Configuration of the module goes here
}
},
{
module: "compliments",
position: "lower_third",
classes: 'always',
},
{
module: "weather",
position: "top_right",
classes: 'always',
config: {
weatherProvider: "openweathermap",
type: "current",
location: "",
locationID: "", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city
apiKey: ""
}
},
{
module: "weather",
classes: 'always',
position: "top_right",
header: "Weather Forecast",
config: {
weatherProvider: "openweathermap",
type: "forecast",
location: "",
locationID: "", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city
apiKey: ""
}
},
{
module: "newsfeed",
classes: 'always',
position: "bottom_bar",
config: {
feeds: [
{
title: "",
url: ""
}
],
showSourceTitle: true,
showPublishDate: true,
broadcastNewsFeeds: true,
broadcastNewsUpdates: true
}
},
{
module: 'MMM-DynamicWeather',
position: 'fullscreen_above',
classes: 'always',
config: { // See https://github.com/scottcl88/MMM-DynamicWeather for more information.
api_key: "",
locationID: "",
effects: [
{
month: "2",
day: "14",
year: "2021",
images: ["heart1.png", "heart2.png"],
direction: "up"
}
],
}
},
{
module: 'MMM-AlarmClock',
classes: 'always',
position: 'top_right',
config: {
alarms: [
{time: "16:06", days: [1,2,3,4,5,6,7], title: "Test", message: "Test", sound: "alarm.mp3"},
{time: "22:30", days: [1,2,3,4,5,6,7], title: "Test2", message: "Test2", sound: "alarm.mp3"},
]
}
},
{
module: 'MMM-pages',
classes: 'always',
config: {
modules:
[["calendar", "MMM-Spotify", "compliments", "weather", "newsfeed", "MMM-AlarmClock", "MMM-network-signal","MMM-Face-Multi-User-Recognition-SMAI"],
["MMM-Trello", "MMM-Todoist", "MMM-Screencast", "MMM-GooglePhotos", "EXT-YouTubeCast","MMM-Face-Multi-User-Recognition-SMAI"]],
fixed: ["MMM-Face-Reco-DNN", "MMM-Remote-Control-Repository", "MMM-Dynamic-Modules", "MMM-GoogleAssistant", "EXT-Detector", "EXT-UpdateNotification", "alert", "updatenotification", "clock", "MMM-MagicMover", "EXT-Background", "Gateway", "MMM-page-indicator", "MMM-DynamicWeather" ],
hiddenPages: {
"screenSaver": [ "clock"],
},
},
},
{
module: 'MMM-page-indicator',
classes: 'always',
position: 'bottom_bar',
config: {
pages: 3,
inactiveHollow: true
}
},
{
module: "MMM-GooglePhotos",
classes: 'always',
position: "top_left",
config: {
albums: ["Hell"], // Set your album name. like ["My wedding", "family share", "Travle to Paris"]
updateInterval: 1000 * 60, // minimum 10 seconds.
sort: "new", // "old", "random"
uploadAlbum: null, // Only album created by `create_uploadable_album.js`.
condition: {
fromDate: null, // Or "2018-03", RFC ... format available
toDate: null, // Or "2019-12-25",
minWidth: null, // Or 400
maxWidth: null, // Or 8000
minHeight: null, // Or 400
maxHeight: null, // Or 8000
minWHRatio: null,
maxWHRatio: null,
// WHRatio = Width/Height ratio ( ==1 : Squared Photo, < 1 : Portraited Photo, > 1 : Landscaped Photo)
},
showWidth: 480, // These values will be used for quality of downloaded photos to show. real size to show in your MagicMirror region is recommended.
showHeight: 640,
timeFormat: "YYYY/MM/DD HH:mm", // Or `relative` can be used.
}
},
{
module: 'MMM-Todoist',
classes: 'always',
position: 'top_right', // This can be any of the regions. Best results in left or right regions.
header: 'Notes', // This is optional
config: { // See 'Configuration options' for more information.
accessToken: '',
projects: [2300582295],
interval: 200,
sortType: "priority",
wrapEvents: true,
maxTitleLength: 50
}
},
]
};
/*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== "undefined") {module.exports = config;}
OS
Buster 10
NodeJS Version
14.20.1
MagicMirror Version
2.21.0
Remote Control Version
2.3.7
Did you try using just Remote Control alone with MM?
Description
I wanted to use the Module Controls tab in order to control the external modules.
Expected behavior
The Module Controls tab was supposed to show up on the Remote Control website and on clicking on it I was supposed to see all my modules listed down. On clicking on them, the module controls for these modules were supposed to show up.
Current behavior
The Module Controls tab is not visible.
Possible solution
No response
Steps to reproduce
Log
config.js
Additional info
No response