Skip to content
MagicMirror module - New Google Assistant embeding with screen output
Branch: master
Clone or download
Latest commit 859d276 Mar 26, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Update issue templates Feb 25, 2019
gaction 2.1.4 Mar 26, 2019
profiles first Jul 9, 2018
recipes 2.1.4 Mar 26, 2019
resources 2.0.0 released Nov 6, 2018
scripts Update Nov 15, 2018
tmp under construction Nov 1, 2018
vendor 2.1.4 Mar 26, 2019
.gitignore 2.0.0 - under construction Nov 5, 2018 2.1.4 Mar 26, 2019 2.1.4 Mar 26, 2019
LICENSE Initial commit Jul 9, 2018
MMM-AssistantMk2.css fix:youtube on top and force stop issue Nov 14, 2018
MMM-AssistantMk2.js 2.1.4 Mar 26, 2019 Update Mar 26, 2019 2.1.4 Mar 26, 2019
auth_and_test.js first Jul 9, 2018
deviceInstance.sample.json deviceInstance.json sample is added Nov 9, 2018
node_helper.js 2.1.4 Mar 26, 2019
package.json 2.1.3 Mar 7, 2019


MMM-AssistantMk2 is an embedded google assistant on MagicMirror.


2.1.0 demo

New Update

[2.1.4] - 2019.03.26

  • Added : Now you can use recipes.

    recipe is an external js file containing definitions of command, transcriptionHook and action. Your configuration could be more shorter.

    Feel free to request PR to share your recipes to others.

  • Changed : onIdle, onDetected features are disabled by default.

  • For update from 2.1.0

cd ~/MagicMirror/modules/MMM-AssistantMk2
git pull

Install & Update

Read WIKI:Installation


Read WIKI:Configuration


Read WIKI:Usage

Incoming Notifications as ASSISTANT request.

Notification Payload Description
ASSISTANT_ACTIVATE {profile:String} Assistant will start with this profile name.
ASSISTANT_CLEAR null Current playing video or content will disappear. And Assistant will turn to sleep mode for waiting invocation.
ASSISTANT_QUERY String Ask to Assistant about String,
ASSISTANT_SAY String or {text:String, lang:"en-US"} Assistant will say this String

Outgoing Notifications as ASSISTANT response.

Notification Payload Description
ASSISTANT_ACTIVATED null Assistant is started now.
ASSISTANT_DEACTIVATED null Assistant is stopped now.
ASSISTANT_HOOK {hook:"HOOKED_STRING"} Your defined hooking phrase caught from your speech.
ASSISTANT_ACTION FOUND_ACTION_OBJECT When the response is defined or customized action of Assistant.


  • MagicMirror : 2.5.1
  • nodeJS : 8.11.3 & 10.0.x
  • SBC : Asus TinkerBoard & Raspberry Pi 3 / Kiosk mode and Serveronly mode both work.
  • Raspbian Stretch is recommended. Many problems would be possible in Raspbian Jessie.
  • on Pi Zero (or ARMv6 Architecture), You might need to rebuild modules from source. That is out of my ability, so I cannot help about that.

Known Issues

  • Invalid Parameters when youtube playing : Most of those cases, owner of video doesn't allow playing video out of youtube. try another.
  • Sometimes response without voice. : Yes, Google Tech team also knows that.
  • Some functions are not supported : Originally, screen output is made for REAL SMART TV (e.g. LG TV) with Google Assistant, thus REAL TV can interact the screen output with remotecontroller or something automatic processed. but we aren't.
  • Result of Image search? web search? : I'm considering how it could be used. it is not easy as my expectation.

Some Troubleshootings more

  • Error: /urs/lib/arm-linux-gnueabihf/ version 'GLIBCXX_3.4.21' not found
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essentials
sudo apt-get install gcc-5
  • grpc Electron-rebuild issues. (until proper binaries provided) grpc was updated recently, but their team havn't dispatched proper binaries for new version. So it could make problem when you try electron-rebuild. Here are some experimental trials;
  1. use grpc-js instead grpc
cd ~/MagicMirror/modules
rm -rf MMM-AssistantMk2/
git clone
cd MMM-AssistantMk2
npm install
cd node_modules
rm -rf grpc
cd ..
npm install @grpc/grpc-js
npm install --save-dev electron-rebuild
  1. downgrade grpc to v1.13
cd ~/MagicMirror/modules
rm -rf MMM-AssistantMk2/
git clone
cd MMM-AssistantMk2
npm install
cd node_modules
rm -rf grpc
cd ..
npm install grpc@1.13
npm install --save-dev electron-rebuild


  • debugging??
  • Touchscreen friendly
  • If response has additional info with external web page, showing full website. (But... how to control? eg. scrolling???)
  • map or carousel displaying... (screenOut for Assistant was developed for TV device, so not perfectly matched with UX on Mirror.)
You can’t perform that action at this time.