In this BLOG post, I’ll write about the experience of building a sample “Brazilian” Vuzix M300 App, integrated with a SAP server.
The Vuzix M300 is a model of Vuzix SmartGlasses, more info: https://www.vuzix.com/Products/m300-smart-glasses
Some control details:
The objective was to create a App, responding to voice controls in Portuguese (PT-br), that exchanged data between a SAP server. Creating a POC version of these video(please watch it before reading more): https://www.youtube.com/watch?v=sT3l_6_fsok
Image from the video…
Now let’s talk Tech!
The Android Project was created, as described on the Vuzix DEV. Documentation.
Using the following Vuzix libs:
My goal was to use 2 SDK features of the Glass, the Speech SDK (respond to voice commands) and the Barcode SDK (barcode scanner), and integrate the app with a SAP Server.
I’m not going to discuss the layout (screens) details, just the technical side, ok? 🙂
So, on the Main Activity of the Android Project, i’ve started the Voice Receiver class:
On this class, it receives the Voice commands and checks/executes actions based on it:
So, in any screen of the app, when the users executed a “correct” voice command, it will open the Barcode Scanner, read the barcode and send the data to the SAP server.
On the Vuzix M300, there is a icon on the screen that indicates if the Glass is receiving voice commands or not. The “trigger” to start it, it’s the “Hello Vuzix” command.
After Hello Vuzix, you would say the command to execute it. But the “issue” here is that the Vuzix Lib only “understands” English, but based on the end user company, some of them would not speak a “clean” English to be interpreted correctly by the App. So I’ve combined the Google Speech engine (Android.speech), that understands Brazilian Portuguese (PT-br) to be able to accomplish the Brazilian voice command goal.
Now back to the Android project, after the Hello Vuzix commands, and the M300 is correctly listening, the Android Speech is started (in PT-br), showing in the screen that is listening as well…
After the user finish his words, the class below is triggered:
For the Speech input code:
So if the user told the M300 “verificar item” or “concluir” if would execute some actions.
In case of “verificar item” (“Check item” in EN), it will in btncontinue() class open the Barcode SDK:
If the M300 reads a barcode with success, it will execute a SOAP WS call with it (integrating then with SAP).
You could create this WS using SOAMANAGER or PI/XI, or a REST service as well…
Some actual screens of the app running on the M300:
More details can be found here(Speech SDK and Barcode SDK), for this specific model Vuzix model:
Sample project for Download:
Looking forward on working with the next smart glass models (Vuzix, etc.).