Get Started with Wio Terminal¶
The Wio Terminal is a SAMD51-based microcontroller with Wireless Connectivity supported by Realtek RTL8720DN that’s compatible with Arduino and MicroPython. It runs at 120MHz (Boost up to 200MHz), 4MB External Flash and 192KB RAM. It supports both Bluetooth and Wi-Fi providing backbone for IoT projects. The Wio Terminal itself is equipped with a 2.4” LCD Screen, onboard IMU(LIS3DHTR), Microphone, Buzzer, microSD card slot, Light sensor, and Infrared Emitter(IR 940nm). On top of that, it also has two multifunctional Grove ports for Grove Ecosystem and 40 Raspberry pi compatible pin GPIO for more add-ons.
- Highly Integrated Design
- MCU, LCD, WIFI, BT, IMU, Microphone, Speaker, microSD Card, Light Sensor, 5-Way Switch, Infrared Emitter (IR 940nm), Crypto-authentication Ready
- Powered by Microchip ATSAMD51P19
- ARM Cortex-M4F core running at 120MHz(Boost up to 200MHz)
- 4 MB External Flash, 192 KB RAM
- Comprehensive Protocol Support
- SPI, I2C, I2S, ADC, DAC, PWM, UART(Serial)
- Powerful Wireless Connectivity
- Powered by Realtek RTL8720DN
- Dual Band 2.4Ghz / 5Ghz Wi-Fi (802.11 a/b/g/n)
- BLE / BLE 5.0
- USB OTG Support
- USB Host
- USB Client
- Grove Ecosystem
- Software Support
- AT Firmware
- Wio Terminal x 1
- Computer x 1
- USB Type-C Cable x 1
Connect the Wio Terminal to your computer via USB cable. The blue LED on the back should light up.
- Step 1. You need to Install an Arduino Software.
Launch the Arduino application
Double-click the Arduino IDE application you have previously downloaded.
If the Arduino Software loads in a different language, you can change it in the preferences dialog. See the Arduino Software (IDE) page for details.
- Step 2. Open the Blink example
Open the LED blink example sketch: File > Examples >01.Basics > Blink.
- Step 3. Add the Wio Terminal Board Library
1.Open your Arduino IDE, click on File > Preferences, and copy below url to Additional Boards Manager URLs:
2.Click on Tools > Board > Board Manager and Search Wio Terminal in the Boards Manager.
- Step 4. Select your board and port
You'll need to select the entry in the Tools > Board menu that corresponds to your Arduino. Selecting the Wio Terminal.
Select the serial device of the Wio Terminal board from the Tools -> Port menu. This is likely to be COM3 or higher (COM1 and COM2 are usually reserved for hardware serial ports). To find out, you can disconnect your Wio Terminal board and re-open the menu; the entry that disappears should be the Arduino board. Reconnect the board and select that serial port.
For Mac User, it will be something like
- Step 5. Upload the program
Now, simply click the Upload button in the environment. Wait a few seconds and if the upload is successful, the message "Done uploading." will appear in the status bar.
A few seconds after the upload finishes, you should see the LED on the back of the Wio Terminal start to blink. If it does, congratulations! You've gotten Wio Terminal up-and-running. If you have problems, please see the troubleshooting suggestions.
Please feel free to go though other tutorials of Wio Terminal and start building your IoT projects!
To reset Wio Terminal:
To Enter Bootloader:
This is very useful when Wio Terminal crashes or somehow USB serial is not showing up in Arduino IDE.
Testing with SWD
There are two ways to use SWD to test and debug with Wio Terminal:
From the back of the PCB testing ports.
On the left is the testing ports for ATSAMD51:
On the right is the testing ports for RTL8720DN:
If you have very frequent debugging needs, you can add SWD debugging to one of the Grove interfaces in the following ways:
The picture shows the two unmounted resistor positions. You can connect these two pads by soldering a 0 ohm resistor or shorting it. This will connect the SWD interface (SWDIO / SWCLK) of ATSMAD51 to Grove in parallel on the interface.
After our test, the SWD interface is connected in parallel in this way. When powering on and resetting, you need to make sure that the Grove interface is not connected to any Grove module (the module may have pull-up / pull-down resistors, which will affect it), otherwise it will Enter SWD mode directly and cannot run in normal mode (that is, SWDCLK cannot be pulled low during power-on or reset)
In addition to power-on and reset, when using SWD, Digital, Analog, Serial, I2C, there will be no interference, you can switch at any time, but in order to avoid possible problems, we still recommend removing this after completing the program debugging Connection of two pads.
Please submit any technical issue into our forum