A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.
Read the statement by Michael Teeuw here.
Need help with MM-Google Assistant Mk2
-
For some reason, the hotword is working, but when I get ready to say the command for Google Assistant, it doesn’t respond, or pick up what I am saying at all. Please help, posting config.js file below.
Using Raspberry Pi 3 Model B+, running Raspbian Stretch./* Magic Mirror Config Sample * * By Michael Teeuw http://michaelteeuw.nl * MIT Licensed. * * For more information how you can configurate this file * See https://github.com/MichMich/MagicMirror#configuration * */ var config = { address: "localhost", // 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, is "localhost" port: 8080, ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1"], // 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"], language: "en", timeFormat: 24, units: "metric", modules: [ { module: "alert", }, { module: "updatenotification", position: "top_bar" }, { module: "clock", position: "top_left" }, { module: "calendar", header: "US Holidays", position: "top_left", config: { calendars: [ { symbol: "calendar-check", url: "webcal://www.calendarlabs.com/ical-calendar/ics/76/US_Holidays.ics" } ] } }, { module: "compliments", position: "lower_third" }, { module: "currentweather", position: "top_right", config: { location: "New York", locationID: "", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city appid: "YOUR_OPENWEATHER_API_KEY" } }, { module: "weatherforecast", position: "top_right", header: "Weather Forecast", config: { location: "New York", locationID: "5128581", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city appid: "YOUR_OPENWEATHER_API_KEY" } }, { module: "newsfeed", position: "bottom_bar", config: { feeds: [ { title: "New York Times", url: "http://www.nytimes.com/services/xml/rss/nyt/HomePage.xml" } ], showSourceTitle: true, showPublishDate: true, broadcastNewsFeeds: true, broadcastNewsUpdates: true } }, { module: "MMM-Hotword", position: "top_right", config: { chimeOnFinish: true, mic: { recordProgram: "arecord", device: "plughw:1" }, models: [ { hotwords : "smart_mirror", file : "smart_mirror.umdl", sensitivity : "1", }, ], commands: { "smart_mirror": { notificationExec: { notification: "ASSISTANT_ACTIVATE", payload: (detected, afterRecord) => { return {profile:"default"} } }, restart:false, afterRecordLimit:0 } } } }, { module: "MMM-AssistantMk2", position: "top_right", config: { // --- ESSENTIALS / modifying for your environment might be needed. deviceLocation: { coordinates: { // set the latitude and longitude of the device to get localized information like weather or time. (ref. mygeoposition.com) latitude: 29.558190, // -90.0 - +90.0 longitude: -95.413352, // -180.0 - +180.0 }, }, defaultProfile: "default", // If you have several profiles and want to set one of them as default profile, describe here. profiles: { "default" : { // profile name. profileFile: "default.json", // profile file name. lang: "en-US" //currently available (estimation, not all tested): // de-DE, en-AU, en-CA, en-GB, en-US, en-IN // fr-CA, fr-FR, it-IT, ja-JP, es-ES, es-MX, ko-KR, pt-BR // https://developers.google.com/assistant/sdk/reference/rpc/languages }, /* Add your other profiles here, if exists. "other_profile" : { profileFile: "other.json", lang: "de-DE" } */ }, record: { // Full values are in `FOR EXPERTS` section. recordProgram: "arecord", // Defaults to "arecord" - also supports "rec" and "sox" device: null // recording device (e.g.: "plughw:1") }, play: { // Full values are in `FOR EXPERTS` section. playProgram: "mpg321", // recommended. }, // --- OPTIONAL / not important but customizable for your usage responseVoice: true, // If available, Assistant will response with her voice. responseScreen: true, // If available, Assistant will response with some rendered HTML responseAlert: true, // If available, Assistant will response with Alert module of MM // Sometimes, any response might not be returned. responseAlert is useful for displaying error. screenZoom: "80%", // Adjust responseScreen to your mirror size. screenDuration: 15, // milliseconds. How long responseScreen will be shown after speech. //If you set 0, Screen Output will be closed after Response speech finishes ASAP. youtubeAutoplay: true, //If set as true, found Youtube video will be played automatically. pauseOnYoutube:true, //If set as true, You cannot activate Assistant during youtube playing. Recommended for the performance (Because permanent hotword detecting might make performance lower) youtubePlayerVars: { // You can set youtube playerVars for your purpose, but should be careful. "controls": 0, "loop": 1, "rel": 0, }, youtubePlayQuality: "hd1080", //small, medium, large, hd720, hd1080, highres or default useWelcomeMessage: "What's the weather", //Try "brief today" as this value. You can use this value to check module working when MM is starting. onIdle: { //timer: 1000*60*30, // if you don't want to use this feature, just set timer as `0` or command as "" //command: "HIDEMODULES", timer: 0, command: null, }, onActivate: { timer: 0, //command: "SHOWMODULES" command: null, }, // --- FOR EXPERTS / For development, debug or more verbose:false, // You can get error or some logs when this value is set as true. ignoreNoVoiceError: true, //To avoid some annoying youtube stop bug. startChime: "connection.mp3", // you can use `mp3` to play chime when your mic is ready. It should be playable with your `play.playProgram` noChimeOnSay: false, // When using the `ASSISTANT_SAY` trigger, you can prevent the chime from being played before your words auth: { // I believe you don't need to change this. keyFilePath: "./credentials.json" }, record: { // Full version sampleRate : 16000, // audio sample rate threshold : 0.5, // silence threshold (rec only) thresholdStart: null, // silence threshold to start recording, overrides threshold (rec only) thresholdEnd : null, // silence threshold to end recording, overrides threshold (rec only) silence : 1.0, // seconds of silence before ending verbose : false, // log info to the console recordProgram : "arecord", // Defaults to "arecord" - also supports "rec" and "sox" device : null // recording device (e.g.: "plughw:1") }, play: { // Full version encodingOut: "MP3", //'MP3' or 'WAV' is available, but you might not need to modify this. sampleRateOut: 24000, playProgram: "mpg321", //Your prefer sound play program. By example, if you are running this on OSX, `afplay` could be available. playOption: [], // If you need additional options to use playProgram, describe here. (except filename) // e.g: ["-d", "", "-t", "100"] }, useGactionCLI: false, // If set as true, you can update your gAction when MM is rebooted. projectId: "", // Google Assistant ProjectId (Required only when you use gAction.) deviceModelId: "", // It should be described in your config.json. In most of case, you don't need to this. deviceInstanceId: "", // It should be described in your config.json. In most of case, you don't need to this. recipes:["hide_and_show_all_modules.js", "reboot.js", "screen_onoff.js", "shutdown.js"], transcriptionHook: {}, action: {}, // You can catch your gAction command. command: {}, // You can catch transcription hook and be able to make your own `COMMAND` with this. //See the `transcriptionHook` section. action:{}, // You can make your own MM command for gAction and transcriptionHook //See the `command` section. notifications: { // You can redefine these notifications to communicate with specific modules. ASSISTANT_ACTIVATE: "ASSISTANT_ACTIVATE", ASSISTANT_DEACTIVATE: "ASSISTANT_CLEAR", ASSISTANT_ACTIVATED: "ASSISTANT_ACTIVATED", ASSISTANT_DEACTIVATED: "ASSISTANT_DEACTIVATED", ASSISTANT_ACTION: "ASSISTANT_ACTION", ASSISTANT_UNDERSTOOD: "ASSISTANT_UNDERSTOOD", ASSISTANT_RESPONSE_END: "ASSISTANT_RESPONSE_END", DEFAULT_HOOK_NOTIFICATION: "ASSISTANT_HOOK", TEXT_QUERY: "ASSISTANT_QUERY", SAY_TEXT: "ASSISTANT_SAY", } } }, ] }; /*************** DO NOT EDIT THE LINE BELOW ***************/ if (typeof module !== "undefined") {module.exports = config;}
-
Try using a simply version
{ module: "MMM-AssistantMk2", position: "top_right", config: { deviceLocation: { coordinates: { latitude: -29.730320, // -90.0 - +90.0 longitude: 30.038760 // -180.0 - +180.0 }, }, record: { recordProgram : "arecord", device : "plughw:1", }, notifications: { ASSISTANT_ACTIVATED: "HOTWORD_PAUSE", ASSISTANT_DEACTIVATED: "HOTWORD_RESUME", }, useWelcomeMessage: "brief today", profiles: { "default" : { lang: "en-US" } }, } },
-
Thanks, but i already figured it out. Appreciate the help
-
@09succotash said in Need help with MM-Google Assistant Mk2:
Thanks, but i already figured it out. Appreciate the help
For the benefit of other users you could post what the problem was and how you solved it.
Just a thought. :-)
-
The actual problem was that the module script wasn’t configured correctly to use my microphone like the MMM-Hotword module was, so I copied the information under “mic” into “record”.