The Wio Terminal is a microcontroller with WiFi support. It compares with Arduino when you add a WiFi Shield. Also, it compares well with the ESP8266/ESP32 which are also microcontrollers with built-in WiFi support. For the end-user, all these can be programmed using the Arduino IDE and MicroPython. That is, you can choose between any of these microcontrollers and the development experience will be almost the same.
A microcontroller is used in embedded systems. That is, electronic devices that need a small computer to work, but do not require this computer to run a full operating system like Linux. The Raspberry Pi is an example of a device that runs a full operating system and can be added to electronic devices that really need a full operating system to work. In practical terms, you can think of the microcontroller as a very small computer that does not run Linux but can run single programs that you develop, using a special tool like the Arduino IDE.
Disclaimer: I was approached by SeeedStudio to blog about a project that I will create, using the Wio Terminal, in exchange of a free Wio Terminal (I already received it). This introductory post is out of scope but I feel doing it because it will take me some time to complete the project.
Unboxing the Wio Terminal
Here is the Wio Terminal package.
Here are some photos of the Wio Terminal packaging.
Here are the contents of the package. It includes the printed User Manual, stickers, a USB Type-C cable, a spare button and the Wio Terminal.
What’s different with the Wio Terminal?
The big difference between the Wio Terminal and other microcontrollers, is that the Wio Terminal is opinionated. It comes with a case, an LCD screen, buttons, microSD slot and even sensors. Your first impression is that it is actually a retro games console.
Photos of the Wio Terminal
This is the front photo. It shows the 2.4″ LCD screen (320×240). On the right, there is a button that does up/down/left/right. On the left, is the microphone and buzzer. No, I did not remove the LCD protector film.
These are the four sides of the Wio Terminal.
The first photo shows the two multi-function Grove connectors. That is, you can buy sensors and other devices that support the Grove connector type and just plug them in. In the middle is the USB Type-C connector. The two holes are likely related to the two LEDs. The second photo shows the three user-programmable buttons. The third photo shows a very thin opening which I could not find what it does but I know that behind there is the WiFi and Bluetooth chip. The fourth and final photo shows the microSD memory card slot and the on-off switch.
Finally, this is the back of the Wio Terminal. There is a 40-pin GPIO Header, compatible with the Raspberry Pi. There is some transparent plastic that reveals the microcontroller board. There are two holes that lets you screw the Wio Terminal onto something. The four rubber pads around the corners? These are also magnets. You can either place the Wio Terminal securely on a flat surface or you can place it on a metal surface and it sticks really well.
Switching on the Wio Terminal for the first time
When you plug the Wio Terminal to a power source, it boots up with a default application. It’s a jumping game. You can jump to avoid the obstacles and shoot to kill the birds. The game is very fast and unless you have some experience with such games, you do not stand a chance to get a good high score (mine is 16).
And this brings up the first problem. When I upload my first app to the Wio Terminal, it is going to replace the jumping game! How do we save the game? Well, it’s not a problem but two solutions. First, the source code of the game is available at jumping game for the Wio Terminal. Second, if you are into gaming, you can get better at a game if you can make it go slower. Once you get better at the slower version, you switch back to the faster version and you perform better, with less frustration. The source code is there for you to make it go slower.
The Wio Terminal has a lot of features to make it do useful things with less hassle. In effect, you should focus on the programming of your application, rather than connecting bits and pieces together. The next steps are to setup Arduino Studio to work with the Wio Terminal and, optionally, try out MicroPython. There are lots of resources and the documentation is great.