iMX93 Voice Command DemoVoipac webshop

From Voipac Wiki
Jump to navigation Jump to search

This section shows information about testing iMX93 Voice Command Demo. The iMX93 Industrial Development Kit in this configuration is equipped with Yocto 5.0 (Scarthgap) (Linux version 6.6.52) which supports LVDS display with a touchscreen layer.

iMX93 Voice Command Demo baseboard.png

Required Components

The iMX93 Industrial Kit Display Set includes a compact ready-to-use solution. To assemble them together, the following mechanical and electrical accessories were designed and selected to be parts of the Display set:

  • Voice Command Demo
  • LVDS LCD Display Set (Optional)

iMX93 VCD Top Bottom.png

Software instructions

iMX93 Industrial kit is preinstalled with Yocto 5.0 (Scarthgap) operation system enabling LVDS and touchscreen capabilities by default. Manual configuration is necessary, Devicetree in U-Boot have to by set to BOE LCD to work/control Voice Command Demo.

Hit any key to stop a u-boot autobooting. Run setenv fdtfile imx93-voipac-evk-boe-wxga-lvds-panel.dtb
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot:  0
u-boot=> fatls mmc 0:1
 35564032   Image
    69445   imx93-11x11-evk-aud-hat.dtb
    66749   imx93-11x11-evk-boe-wxga-lvds-panel.dtb
    65705   imx93-11x11-evk-flexio-i2c.dtb
    66009   imx93-11x11-evk-flexspi-m2.dtb
    66799   imx93-11x11-evk-i2c-spi-slave.dtb
    65062   imx93-11x11-evk-i3c.dtb
     2725   imx93-11x11-evk-inmate.dtb
    51134   imx93-11x11-evk-iw612-otbr.dtb
    65362   imx93-11x11-evk-ld.dtb
    65520   imx93-11x11-evk-lpuart.dtb
    65983   imx93-11x11-evk-mqs.dtb
    68814   imx93-11x11-evk-mt9m114.dtb
    65819   imx93-11x11-evk-rm67199.dtb
    65573   imx93-11x11-evk-root.dtb
    66108   imx93-11x11-evk-rpmsg-lpv.dtb
    66132   imx93-11x11-evk-rpmsg.dtb
   130428   imx93-11x11-evk_m33_TCM_low_power_wakeword.bin
    19080   imx93-11x11-evk_m33_TCM_power_mode_switch.bin
    18708   imx93-11x11-evk_m33_TCM_rpmsg_lite_pingpong_rtos_linux_remote.bin
    17228   imx93-11x11-evk_m33_TCM_rpmsg_lite_str_echo_rtos.bin
    47472   imx93-11x11-evk_m33_TCM_sai_low_power_audio.bin
    49066   imx93-voipac-evk-boe-wxga-lvds-panel.dtb
    47948   imx93-voipac-evk.dtb
   593744   tee.bin

25 file(s), 0 dir(s)

u-boot=> setenv fdtfile imx93-voipac-evk-boe-wxga-lvds-panel.dtb
u-boot=> saveenv
Saving Environment to MMC... Writing to MMC(0)... OK
u-boot=> boot

Login to system with user root and run /opt/gopoint-apps/scripts/multimedia/smart-kitchen/run.sh

iMX93 VCD command TeraTerm log.png

Use voice detection 'Hey hood' followed by command [Light ON, Light OFF, Fan ON, Fan OFF, Fan LOW, Fan HIGH] to get feedback.

root@imx93-voipac:~# /opt/gopoint-apps/scripts/multimedia/smart-kitchen/run.sh
++ dirname /opt/gopoint-apps/scripts/multimedia/smart-kitchen/run.sh
+ mypath=/opt/gopoint-apps/scripts/multimedia/smart-kitchen
++ uname -n
+ evk=imx93-voipac
+ rm /dev/mqueue/wakeword_queue
rm: cannot remove '/dev/mqueue/wakeword_queue': No such file or directory
+ rm /dev/mqueue/command_queue
rm: cannot remove '/dev/mqueue/command_queue': No such file or directory
+ mv /etc/asound.conf /etc/asound.conf.original
+ mv /unit_tests/nxp-afe/Config.ini /unit_tests/nxp-afe/Config.ini.original
+ [[ imx93-voipac == \i\m\x\8\m\p\-\l\p\d\d\r\4\-\e\v\k ]]
+ [[ imx93-voipac == \i\m\x\8\m\p\e\v\k ]]
+ [[ imx93-voipac == \i\m\x\9\3\-\1\1\x\1\1\-\l\p\d\d\r\4\x\-\e\v\k ]]
+ [[ imx93-voipac == \i\m\x\9\3\e\v\k ]]
+ [[ imx93-voipac == \i\m\x\8\m\m\-\l\p\d\d\r\4\-\e\v\k ]]
+ [[ imx93-voipac == \i\m\x\8\m\m\e\v\k ]]
+ '[' imx93-voipac == imx93-voipac ']'
+ audiocard=wm8904audio
+ cp -v /opt/gopoint-apps/scripts/multimedia/smart-kitchen/conf/asound.conf_imx93voipac /etc/asound.conf
'/opt/gopoint-apps/scripts/multimedia/smart-kitchen/conf/asound.conf_imx93voipac' -> '/etc/asound.conf'
+ cp /opt/gopoint-apps/scripts/multimedia/smart-kitchen/vit-notify/WakeWordNotify /usr/bin/
+ cp /opt/gopoint-apps/scripts/multimedia/smart-kitchen/vit-notify/WWCommandNotify /usr/bin/
+ cp /opt/gopoint-apps/scripts/multimedia/smart-kitchen/conf/Config.ini /unit_tests/nxp-afe/
+ cp /unit_tests/nxp-afe/afe /opt/gopoint-apps/scripts/multimedia/smart-kitchen/
+ killall voice_ui_app
killall: voice_ui_app: no process killed
+ killall smart-kitchen-gui
killall: smart-kitchen-gui: no process killed
+ killall afe
killall: afe: no process killed
+ sleep 0.1s
+ amixer set Capture 31
Simple mixer control 'Capture',0
  Capabilities: cvolume cswitch
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 31
  Front Left: Capture 31 [100%] [on]
  Front Right: Capture 31 [100%] [on]
+ amixer set 'Left Capture Inverting Mux' IN2L
Simple mixer control 'Left Capture Inverting Mux',0
  Capabilities: enum
  Items: 'IN1L' 'IN2L' 'IN3L'
  Item0: 'IN2L'
+ amixer set 'Right Capture Inverting Mux' IN2R
Simple mixer control 'Right Capture Inverting Mux',0
  Capabilities: enum
  Items: 'IN1R' 'IN2R' 'IN3R'
  Item0: 'IN2R'
+ amixer sset 'Capture Input' DMIC
Simple mixer control 'Capture Input',0
  Capabilities: enum
  Items: 'ADC' 'DMIC'
  Item0: 'DMIC'
+ modprobe snd-aloop
+ sleep 0.1s
+ sleep 0.1s
+ /opt/gopoint-apps/scripts/multimedia/smart-kitchen/smart-kitchen-gui
Disp -1058845976
ui_ext_init:
ui_init:
ui_Home_screen_init:
rm: cannot remove '/dev/mqueue/wakeword_queue': No such file or directory
rm: cannot remove '/dev/mqueue/command_queue': No such file or directory
CommandHandler::CommandHandler()::WakeWord Queue: message queue successfully opened!
CommandHandler::CommandHandler()::Command Queue: message queue successfully opened!
Leaving:control_light_gpio
+ sleep 0.1s
+ /opt/gopoint-apps/scripts/multimedia/smart-kitchen/voice_ui_app -notify
Leaving:control_fan_pwm_output
Command Interface Thread Created!
VIT Model info
  VIT Model Release = 0x40a00
  Language supported : English
  Number of WakeWords supported : 3
  Number of Commands supported : 17
  WakeWord supported :
   'HEY HOOD'
   'HEY OVEN'
   'HEY AIRCON'
  Voice commands supported :
   'ENTER'
   'EXIT'
   'RUN DEMO'
   'STOP DEMO'
   'FAN OFF'
   'FAN ON'
   'FAN LOW'
   'FAN HIGH'
   'LIGHT OFF'
   'LIGHT ON'
   'DRY MODE'
   'COOL MODE'
   'FAN MODE'
   'SWING OFF'
   'SWING ON'
   'CLOSE DOOR'
   'OPEN DOOR'
Using VIT for wakeword detection.
+ /opt/gopoint-apps/scripts/multimedia/smart-kitchen/afe libvoiceseekerlight
 - Wakeword detected 1 HEY HOOD StartOffset 12800
Wakeword arrived!! Id= 1

running /usr/bin/WakeWordNotify
wakeword id: 1
ended
 - Voice Command detected 9 LIGHT OFF

Command arrived!! Id= 9

running /usr/bin/WWCommandNotify
command id: 9
ended
Leaving:control_light_gpio
 - Wakeword detected 1 HEY HOOD StartOffset 13280
Wakeword arrived!! Id= 1

running /usr/bin/WakeWordNotify
wakeword id: 1
ended
 - Voice Command detected 5 LIGHT ON

Command arrived!! Id= 5

running /usr/bin/WWCommandNotify
command id: 5
ended

iMX93 VCD Light OFF ON.png

NOTE: Link to project github imx93-voice-command-demo

Demo Example

iMX93 BOE Display Voice Command Demo 1.png

Demo video