UIFlow - EchoSTT

EchoSTT is a voice-to-text service that sends local voice to a cloud server through the network, and returns the recognition result to the machine or other M5 devices. Whether you use the service in UIFlow or Arduino, you need to bind the Token with the MAC address to obtain the permission. The specific steps are as follows:

The following tutorial will show you how to use other M5 devices to obtain Echo voice recognition results in UIFlow.

Driver Installation

Connect the device to the PC. If the port cannot be recognized normally, the user can manually install the FTDI driver to fix the problem. Take the win10 environment as an example, download the driver file that matches the operating system, unzip it, and install it through the device manager. (Note: In some system environments, the driver needs to be installed twice for the driver to take effect. The unrecognized device name is usually M5Stack or USB Serial. Windows recommends using the driver file to install directly in the device manager (custom Update), the executable file installation method may not work properly). Click here to download FTDI driver

For MacOS users, please tick System Preferences -> Security and Privacy -> General -> Allow downloadable apps from the following locations -> App Store and Approved Developer Options .


Burn Firmware

Please click the button below to download the corresponding M5Burner firmware burning tool according to your operating system. Unzip and open the application.

For MacOS users, please put the application in the Application folder after installation, as shown in the figure below.
For Linux users, please switch to the decompressed file path and run ./M5Burner in the terminal to run the application.


  • Find the ATOM option, select EchoSTT and click download to download the firmware, select English firmware or Chinese firmware according to the language you want to recognize. Connect ECHO to the computer USB port, select the corresponding COM port, click burn to burn, and wait for the serial port The monitor shows a prompt that the programming is complete.
  • Click Get Token to get the Token needed to connect to the STT server, record this Token, it will be used in your subsequent programming

UIFlow case program for EchoSTT service

Configure other M5 devices in WIFI programming mode and connect to UIFlow Web IDE (for related configuration tutorials, please refer to the UIFlow manual of the master you are using). Fill in the Token obtained in the above steps before running this example. During configuration, run the program.

After completing the above steps, press the middle button of Echo to start voice recording. After release, the voice will be automatically uploaded to the cloud for recognition, and the M5 device will automatically obtain the recognition result for display.

Arduino example program for EchoSTT service

LED description

  1. The red status light after booting means that the network is not connected

  2. The green status light after booting means that it is connected to the network

  3. Press the button and the status light turns yellow

  4. The recognition result recognition status light is red

  5. The successful status light of the recognition result is green

When using this case, you need to click to obtain Token through M5Burner, fill in the SSID and WIFI password in the example, and find rest.settoken("your_token"); fill in the obtained Token in it

Arduino sample program

  1. This example is used to test whether the LED, microphone, and speaker work normally. If you press the button while power is on, the speaker will always play music, otherwise it will only play once and then enter the test microphone link. You can check it through the serial monitor.

  2. This is an example of recording and playback. Recording starts when you press and hold the button. The recording time is no more than 6 seconds. After you release the button, the recorded content will be played.

  3. In this example, you can play music through url. Because the buffer memory is small, continuous noise will occur when the network is in a bad condition. Please choose the url link and your wifi network reasonably.

On This Page