Visual programming is now a very popular method to teach programming to kids and M5Stack relies on UIFlow for their ESP32-based IoT development kit. Like most other companies, M5Stack provides either a Web IDE accessible from their server or a desktop program available for Windows, MacOS, or Linux, but the company has now released a local server implementation that allows users to run a Web IDE instance in their local network.
The local server is available for Windows 11 x64, MacOS, Ubuntu 22.04, and Linux Arm (e.g. Raspberry Pi), so I downloaded the Ubuntu version to give it a try on my laptop. Somehow the Ubuntu release is full of Windows DLLs, but let’s ignore that for now, and the README.txt tells us to install one dependency and run the program as follows:
apt install ttf-mscorefonts-installer
A window pops up letting us start or stop the server. It can be accessed with localhost:8800 in a web browser. I’m using Firefox below, but Chrome or Edge are better browsers for that purpose since WebUSB is required to flash the firmware to the target.
We are asked to select between UIFlow 1.0 and UIFlow 2.0, but there’s really only one local choice right now because UIFlow 2.0 points to uiflow2.m5stack.com. So I went with UIFlow 1.0, selected one of the boards, and wrote a little program by moving blocks around.
There’s just one issue using Linux… The program requires M5Burner to flash the resulting firmware to the devkit and it’s only shown to be available for Windows and MacOS in the web interface.
But there’s a Linux version (M5Burner Linux x64 v3.0) on the aforelinked download page. I installed it, and it looks to be working fine on Ubuntu 22.04.
I haven’t gone further since I don’t own any M5Stack hardware. The M5Burner will flash the latest firmware to the selected devkit and provide the API key required to run the program at the end of the process in the “Configure” menu.
While UIFlow 2.0 is not available in the local server implementations, I still think it’s a nice initiative from M5Stack as there’s no need to install desktop software on all computers in a classroom and some people may have intermittent internet or be wary of using a web service hosted in a different country. Releasing a local server implementation solves all those issues.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.