MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    VoiceControl module

    Scheduled Pinned Locked Moved Utilities
    79 Posts 27 Posters 106.6k Views 29 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • D Offline
      DevilRev
      last edited by

      Is there a way to set a snowboy tolerance?
      Because even tho my command is 5 words long it gets triggered all the time when I talk normally with a friend or watch a TV show.

      1 Reply Last reply Reply Quote 0
      • D Offline
        DevilRev
        last edited by

        So, I found out that there is a sensitivity setting which can be changed in one of the snowboy configs permanently but it can also be controlled for each hotword individually.

        It would be a great feature if we could set a sensitivity for each hotword in the normal config file, if you find the time i would be really thankful for this addition.

        G 1 Reply Last reply Reply Quote 0
        • MedoM Offline
          Medo
          last edited by Medo

          Searching for endless hours now, but no solution in sight…

          Im trying to trigger the mm-music-player module with this voicecontrol module (i say “MUSIK ON” and the mm-music-player starts a certain mp3 file). But no luck…

          My microfone can record audio (tested with arecord …) …

          (note: i had to change my “sudo nano /usr/share/alsa/alsa.conf” and the entries “defaults.ctl.card 1” and “defaults.pcm.card 1” from “0” to “1” to get my USB microphone working/recording)

          …and my mp3 soundfile can be played (tested with “omxplayer -o hdmi …”) - and also if i click on the mm-music-player-module…

          pm2 logs mm (after a reboot) shows this:

          [STREAMING] Now streaming realtime logs for [mm] process
          0|mm | ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
          0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
          0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
          0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
          0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
          0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
          0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
          0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
          0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
          0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
          0|mm | ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
          0|mm | ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
          0|mm | ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
          0|mm | Cannot connect to server socket err = No such file or directory
          0|mm | Cannot connect to server request channel
          0|mm | jack server is not running or cannot be started
          0|mm | Expression ‘paInvalidSampleRate’ failed in ‘src/hostapi/alsa/pa_linux_alsa.c’, line: 2048
          0|mm | Expression ‘PaAlsaStreamComponent_InitialConfigure( &self->capture, inParams, self->primeBuffers, hwParamsCapture, &realSr )’ failed in ‘src/hostapi/alsa/pa_linux_alsa.c’, line: 2719
          0|mm | Expression ‘PaAlsaStream_Configure( stream, inputParameters, outputParameters, sampleRate, framesPerBuffer, &inputLatency, &outputLatency, &hostBufferSizeMode )’ failed in ‘src/hostapi/alsa/pa_linux_alsa.c’, line: 2843
          0|mm | Traceback (most recent call last):
          0|mm | File “./modules/voicecontrol/snowboy/kws-multiple.py”, line 34, in
          0|mm | detector = snowboydecoder.HotwordDetector(models, sensitivity=sensitivity)
          0|mm | File “/home/pi/MagicMirror/modules/voicecontrol/snowboy/snowboydecoder.py”, line 115, in init
          0|mm | stream_callback=audio_callback)
          0|mm | File “/usr/lib/python2.7/dist-packages/pyaudio.py”, line 747, in open
          0|mm | stream = Stream(self, *args, **kwargs)
          0|mm | File “/usr/lib/python2.7/dist-packages/pyaudio.py”, line 442, in init
          0|mm | self._stream = pa.open(**arguments)
          0|mm | IOError: [Errno Invalid sample rate] -9997

          I…

          • installed the voicecontrol and mm-music-player
          • double checked the code
          • changed the mp3 file with another
          • implemented the code like “GinSeng” stated some lines above.
          • created the hotwords over at snowboy and copied them to “/MagicMirror”, “voicecontrol” and “mm-music-player” directories
          • …
            But im not able to find the problem…

          Any suggestions?

          Thanks a lot for your help…

          J 1 Reply Last reply Reply Quote 0
          • thereisnotry87T Offline
            thereisnotry87
            last edited by yawns

            Hello guys, it seems I have the same problem as @frodrd00 and @Medo and cannot properly run the voicecontrol module. In my case I want to use the camera module which works together with the mentioned one. I’ve checked the voicemodule.js to match with its corresponding declaration in config.js and everything looks fine.

            **config.js**
            {
                	module: 'voicecontrol',
                	position: 'bottom_left',
                	config: {
                    	models: [
                        	{
                            	keyword: "Show Camera",
                            	description: "Say 'Show Camera' to display camera",
                            	file: "ShowCamera.pmdl",
                            	message: "SHOW_CAMERA"
                        	},
                        	{
                            	keyword: "Hide Camera",
                            	description: "Say 'Hide Camera' to hide camera",
                            	file: "HideCamera.pmdl",
                            	message: "HIDE_CAMERA"
                        	},
                        	{
                            	keyword: "Selfie",
                            	description: "Say 'Selfie' when camera is visible",
                            	file: "Selfie.pmdl",
                            	message: "SELFIE"
                        },
                    	]
                	}
            },
            

            voicecontrol.js

            models: [
            	{
            		keyword: "Show Camera",
            		description: "Say 'Show Camera' to display camera",
            		file: "ShowCamera.pmdl",
            		message: "SHOW_CAMERA"
            	},
            	{
            		keyword: "Hide Camera",
            		description: "Say 'Hide Camera' to hide camera",
            		file: "HideCamera.pmdl",
            		message: "HIDE_CAMERA"
            	},
            	{
            		keyword: "Selfie",
            		description: "Say 'Selfie' when camera is visible",
            		file: "Selfie.pmdl",
            		message: "SELFIE"
            	},
            ]
            

            How did you manage this problem?

            ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
            ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
            ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
            ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
            ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
            ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
            ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
            ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
            ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
            ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
            
            ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
            
            ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
            
            ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
            Cannot connect to server socket err = No such file or directory
            Cannot connect to server request channel
            jack server is not running or cannot be started
            

            Thanks a lot in advance ))

            S 1 Reply Last reply Reply Quote 0
            • S Offline
              shashank @thereisnotry87
              last edited by yawns

              @thereisnotry87 hi, no need to mention voicecontrol commands in config.js file, just mention only as below , make sure you have installed

              sudo apt-get install python-pyaudio python3-pyaudio sox
              

              and
              copy all pmdl files in MM root folder

              {
              module: 'voicecontrol',
              	    position: 'top_left',
              	config: {
                          }
              },
              

              go to /usr/share/alsa/alsa.conf and change 0 to 1 in below parameters

              defaults.ctl.card 1
              defaults.pcm.card 1,
              

              this worked for me.

              1 Reply Last reply Reply Quote 1
              • S Offline
                shramik49
                last edited by

                hi,
                i am having difficulty in adding voicecontrol module on my magic mirror.
                i want to use voicecontrol to use camera.
                so can someone help me with the steps to follow?

                1 Reply Last reply Reply Quote 0
                • P Offline
                  pepemujica
                  last edited by

                  Hi! is it possible with this module to hide/show different modules or even switch profile with profile switcher?

                  Kind regards

                  1 Reply Last reply Reply Quote 0
                  • D Offline
                    disakos
                    last edited by

                    Hello Guys , @alexyak .
                    I;m running this module and hot word detection is working ok, i used my own keyword and send notfication to other modules. I can see in console.log .

                    MMM-temp-ds18b20 received a module notification: LUSTRO from sender: voicecontrol
                    

                    In all my modules. but i’m unable to run for example script … I tried to modify node_helper.js

                    /* Magic Mirror
                     * Module: voicecontrol
                     *
                     * By Alex Yaknin
                     * MIT Licensed.
                     */
                    
                    const NodeHelper = require('node_helper');
                    const exec = require('child_process').exec;
                    
                    module.exports = NodeHelper.create({
                        start: function () {
                            this.started = false;
                    
                        },
                    
                        socketNotificationReceived: function(notification, payload) {
                                    if (notification === "CONNECT") {
                                            this.startRecognition(payload);
                                            return;
                                    }
                                    if (notification === "LUSTRO"’) {
                                            exec("/opt/vc/bin/tvservice -o", null);
                                    //      this.autosleep();
                                  }
                            },
                    
                    

                    but it is not working … ;)

                    1 Reply Last reply Reply Quote 0
                    • romainR Offline
                      romain
                      last edited by

                      Hello everybody, I try to use this voicecontrol module AND mmm-alexa in the same time (mmm-alexa need to be trigger by a notification. That where voicecontrol is interesting at the moment) but because both the module use the mic, it doesn’t work.
                      If I put only one module at the time no problem. Both of them in the same time, voice control doesn’t work.
                      How can I use the same mic for two different module ?

                      1 Reply Last reply Reply Quote 0
                      • D Offline
                        disakos
                        last edited by

                        @romain , do you use voicecontrol module to run some scripts ? If so please let me know how to do it … ;) my module is detecting my voice … but i’m unable to run something … ;)

                        romainR 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 6
                        • 7
                        • 8
                        • 2 / 8
                        • First post
                          Last post
                        Enjoying MagicMirror? Please consider a donation!
                        MagicMirror created by Michael Teeuw.
                        Forum managed by Sam, technical setup by Karsten.
                        This forum is using NodeBB as its core | Contributors
                        Contact | Privacy Policy