Soracom IoT Starter Kit with Wio LTE
Welcome!
Cellular connectivity opens up a world of possibilities for IoT development, letting you build devices that can connect to the cloud from almost anywhere — and we're excited to help you get started!
This Starter Kit includes a Wio LTE Tracker, which provides a familiar Arduino programming environment to capture data from sensors, and a Soracom Air IoT SIM card, which will let you send the data to the Soracom cloud and beyond over a cellular connection.
Starter Kit Contents
-
Soracom Air IoT SIM Card - The Soracom IoT SIM provides cellular data connectivity and SMS functionality on 2G, 3G, and 4G/LTE networks in Over 140 countries around the world, fully managed right from your browser on the Soracom User Console.
-
Wio LTE board (by Seeed Studio) - The Wio (Wireless Input/Output) board is an open source microcontroller gateway for IoT application development, which provides an easy-to-use Arduino development environment and is compatible with a wide variety of Grove sensors.
-
Grove Starter Kit for Wio LTE (included with Wio LTE US kits only) - This kit includes seven of Grove’s most popular sensors and interfaces, to make rapid prototyping easy:
- Ambient light sensor
- Temperature and humidity sensor
- 3-axis accelerometer
- Relay
- Servo
- Button
- Buzzer
Setup your Soracom Account
Before we dive in, let's make sure your Soracom account is all set up.
Create a Soracom Account
-
Access the Soracom User Console by visiting: console.soracom.io
-
Click Sign up.
- Select the type of account you would like to create and the country where you are located. If you are located in the European Union or the United Kingdom, you will also be able to choose whether you would like to be billed in USD (US Dollars) or EUR (Euros). Then follow the instructions to register a new account, confirm your email address, and enter your contact information.
Register your Payment Information
As Soracom services are post-paid, a credit card is required in order to begin using services. While any fees from Soracom services will be billed to your credit card, your Starter Kit also includes USD $10.00, enough to cover service fees for this project for approximately 3 months. First, let’s get our payment information set up.
-
Access the Soracom User Console by visiting: console.soracom.io
-
Login using your email address and password.
-
Click your email address at the top right corner, and select Payment settings:
-
Click New payment method, and enter your credit card information.
If you have trouble adding your credit card, please try another card, or refer to the Additional Resources and Support section at the end of this guide in order to contact Soracom Support.
Apply your Starter Kit Coupon
Next, let’s add the coupon that was included in the Starter Kit.
-
Click your email address at the top right corner, and select Manage coupons:
-
Then click Register coupon.
-
In the popup, enter the coupon code you received, and click Apply.
We should now see our coupon balance reflected in our account. At the end of each month, any usage charges will be deducted from our coupon balance (once the balance is used up, charges will be billed to our credit card normally). Now we can continue with building our project—and also try other ideas—without having to worry about initial usage charges.
Your account is now set up! For reference, the following fees apply for this project:
- Basic maintenance fee of USD $0.06 per day for the Soracom IoT SIM card
- Data usage fee of USD $0.073 per 1MB of cellular data used (upload and download) in the United States and Canada (for other countries, refer to the Supported Carriers documentation)
- Soracom Harvest fee of USD $0.05 per SIM card per day (first 30 days free)
You can suspend or terminate your Soracom SIM card, and disable Soracom Harvest at any time to stop fees associated with this project.
Register your Soracom IoT SIM Card
Now that your Soracom account is set up, let’s register the Soracom IoT SIM card that was included in this Starter Kit.
-
Click the Menu button at the top left corner, and select SIM Management.
-
Click Register SIM.
-
A dialog will appear asking for the ICCID and PUK of the SIM card. Enter the numbers printed on the back of the SIM card, leaving the Name and Group fields blank for now. Then click Register:
Your SIM card will now appear in the list, and you can confirm it is Ready for cellular connections and currently Offline:
If you have trouble registering your SIM card, please refer to the Additional Resources and Support section at the end of this guide in order to contact Soracom Support.
Your SIM card is now ready for use! In addition to registering and managing Soracom SIM cards, the Soracom User Console gives you access to additional Soracom services, such as Soracom Beam and Soracom Lagoon.
Later, we will return to the User Console to configure Soracom Harvest for this project.
For more information on using the User Console, refer to the Additional Resources and Support section.
Setup your Wio LTE
Insert the Soracom IoT SIM Card
- Insert Soracom Air SIM card into Wio LTE, ensuring the SIM card is oriented correctly:
- Attach the two antennas to the Wio LTE, using the antenna connectors LTE Main and LTE.
- Connect the Wio LTE to your computer using the micro-USB cable:
When attaching sensors, please refer to the Wio LTE and Grove sensor manuals to ensure that your sensors are plugged into an appropriate plug.
Certain sensors included with your Wio LTE kit require additional power to function. This power is provided by specific sensor ports on the Wio LTE. As each port on the Wio LTE differs, ensure that you use the correct port for each sensor. Incorrect usage may result in damage to the sensor or to the Wio LTE controller.
Switching Modes
The Wio LTE has two different modes:
- Normal mode - This mode automatically runs the program in the Wio LTE firmware.
- DFU mode - This mode allows you to flash a program to the Wio LTE firmware.
You can switch modes by using the RST button located on the front of the board next to the 3.5mm aux port, and the BOOT button located on the rear of the board across from the SIM/micro-SD slot.
Normal Mode
By default, when you connect the Wio LTE to your computer or to a USB power source, it will boot up in Normal mode.
When connected to your computer, the Wio LTE will appear as:
- Windows (Device Manager) - STMicroelectronics Virtual COM Port
- Mac OS (System Report) - STM32 Virtual ComPort
If your Wio LTE is currently connected to your computer in DFU mode, you can switch to Normal mode without unplugging the USB cable by simply pressing the RST button once. Here’s a video showing the switch.
DFU Mode
To enter DFU mode, your Wio LTE should be connected to your computer in Normal mode. Then:
- Press and hold the BOOT button.
- Press and release the RST button.
- Release the BOOT button.
The Wio LTE will switch to DFU mode. Here’s a video showing the switch.
When the Wio LTE is connected to your computer in DFU mode, it will appear as:
- Windows (Device Manager) - STM32 BOOTLOADER
- Mac OS (System Report) - STM32 BOOTLOADER
Driver Installation
Install Windows Drivers
When using Windows, the following drivers are required:
- WinUSB driver - Driver for flashing firmware in DFU mode.
- Virtual COM Port driver - Driver for connecting to serial port in normal mode.
- TeraTerm - A serial monitor that will let us connect to the Wio LTE to view its output.
WinUSB Driver
-
Download Zadig 2.3 (zadig-2.3.exe) from the official site .
-
Switch the Wio LTE to DFU mode.
-
Run zadig-2.3.exe.
-
From Zadig 2.3, click Options List All Devices.
-
Select STM32 BOOTLOADER. Once the Driver line changes to STTub30 → WinUSB, click Replace Driver.
Once installed, the Wio LTE should show up in Device Manager underneath Universal Serial Bus controllers as STM32 BOOTLOADER.
Virtual COM Port Driver
- Download and extract Virtual Com Port (stsw-stm32102.zip) from the Wio LTE Github page (Japanese).
- Run VCP_V1.4.0_Setup.exe. This will extract several Virtual COM Port drivers to
C:\Program Files (x86)\STMicroelectronics\Software\Virtual comport driver
. - Open the Virtual comport driver folder and run the driver installation file that corresponds to your Windows version:
- Windows 10 or Windows 8.1 (64-bit):
…\Win8\dpinst_amd64.exe
. - Windows 10 or Windows 8.1 (32-bit):
…\Win8\dpinst_x86.exe
. - Windows 7 (64-bit):
…\Win7\dpinst_amd64.exe
. - Windows 7 (32-bit):
…\Win7\dpinst_x86.exe
.
- Windows 10 or Windows 8.1 (64-bit):
TeraTerm
Download and install TeraTerm from the official website .
Install Mac OS Drivers
When using Mac OS, the following driver is required:
- libusb - Driver for flashing firmware in DFU mode.
Before installing libusb, you must first install Xcode and Command Line Tools .
Then, open the Terminal app and run the following commands to install Homebrew and libusb:
/usr/bin/ruby -e '$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)'
>
brew install libusb
Setup Arduino IDE
In order to develop for the Wio LTE, you will need to install:
- Arduino IDE (version 1.8.3 or later)
- Wio LTE board definitions
- Wio LTE libraries
Install Arduino IDE
The official Arduino IDE is where you will write your program to read sensors, control interfaces, and send data to/from the cloud. First, let’s download and install the latest version of Arduino IDE from the official site .
Install Wio LTE Board Definitions
Next, we need to tell Arduino IDE that we are working with the Wio LTE board. To do this, let’s install the Wio LTE board definition.
-
Run Arduino IDE.
-
From Arduino IDE, click File Preferences.
-
Copy and paste the following URL to the Additional Boards Manager URLs field:
https://raw.githubusercontent.com/Seeed-Studio/Seeed_Platform/master/package_seeeduino_boards_index.json
-
Click OK.
-
Next, click Tools Boards Boards Manager....
-
Search for
Seeed STM32F4 Boards
(by Seeed Studio), and click Install. -
Click Close.
- Finally, activate the new board definition by clicking Tools Board: Wio Tracker LTE.
Install Wio LTE Libraries
Now that Arduino IDE is installed and knows about our Wio LTE board, let’s download the Wio LTE libraries. These libraries include the code required to manage the cellular connectivity and connect with Grove sensors/interfaces, and also includes sample code to help you get started.
-
From Arduino IDE, click Sketch Include Library Manage Libraries....
-
Search for
Wio LTE for Arduino
(by Seeed K.K.), and click Install. - You can check that the libraries were successfully installed by clicking File Examples. In the menu, you will see a Wio LTE for Arduino menu, which contains several sample code sketches.
Sample Programs
LED Test
Let's check that we can flash a simple program to the Wio LTE.
-
Start Arduino IDE.
-
From Arduino IDE, click File Examples Wio LTE for Arduino basic LedSetRGB.
-
Connect your Wio LTE to your computer in Normal mode.
-
Click Tools Port:, then select the COM Port that corresponds to your Wio LTE.
-
Switch your Wio LTE to DFU mode.
-
Click Sketch Upload. This will compile the program and upload it to your Wio LTE, and may take a minute to complete.
- When the log window shows
DFU end
, the upload is complete. Press the RST button to switch your Wio LTE back to Normal mode to run the sample LED program:
If you see the Wio LTE LED alternating between different colors, you have successfully flashed the Arduino program!
Send Data to Soracom Harvest
This example Arduino sketch will get device uptime and send it to Soracom Harvest once every 60 seconds, allowing you to see graph data being generated in real time. Harvest is a data capture service from Soracom that makes capturing data simple.
In order to test this sample sketch, we need to enable Harvest in our Soracom account.
Many services, including Harvest, are linked to groups. Groups let us manage multiple SIM cards together. When we enable Harvest for a particular group, all of the devices (SIM cards) that belong to that group will automatically be able to use Harvest. That way we can easily add more devices to the group without having to enable Harvest for each individual device. Neat!
Let’s first create a group for our SIM card:
-
If you’re not already logged in, open https://console.soracom.io again and login using your email address and password.
-
From the list of SIM cards in your account, click the checkbox next to your SIM card.
- Then click the Actions menu, and select Change group.
- We don’t have any groups yet, so let’s create one. Click the dropdown menu, and select Create….
- In the popup, give the group a name, such as Harvest Group, then click Create.
- Our group has been created. Now let’s click Update to set our new group for our SIM card.
Next, let’s enable Soracom Harvest for our new group:
- Click the name of the group underneath the Group column. This will open the group configuration page.
- Click the SORACOM Harvest panel to expand Harvest settings.
- Click the toggle switch to turn Harvest ON, then click Save.
All done!
Now that Harvest is enabled, let's load the sample Soracom Harvest sketch into your Wio LTE:
-
Run Arduino IDE.
-
From Arduino IDE, click File Examples Wio LTE for Arduino soracom soracom-harvest.
-
Connect your Wio LTE to your computer, then switch it to DFU mode.
-
Click Sketch Upload. This will compile the program and upload it to your Wio LTE, and may take a minute to complete.
- When the log window shows
DFU end
, the upload is complete. Press the RST button to wwitch your Wio LTE back to normal mode to run the sample LED program.
As the sample program runs, you can check the terminal window to check the device’s output:
- On Windows - Run the TeraTerm program and connect to the COM port of your Wio LTE.
-
On Mac OS - In Arduino IDE, click Tools Serial Monitor.
Now we can see our data right from the Soracom User Console:
-
Login to the User Console: https://console.soracom.io
-
From the SIM Management page, click the checkbox for your SIM card.
-
Click the Actions menu, then select Harvest Data.
Now your Wio LTE is sending data to the cloud!
This sample code also includes code for reading temperature and humidity sensor data! Simply attach the temperature and humidity sensor to your Wio LTE’s D38 connector. Then modify the code to uncomment the SENSOR_PIN definition, and re-upload the sketch to your device. Your device will then upload real-time temperature and humidity data to Harvest!
Next Steps
Adding Sensors
You can easily add several kinds of sensors to your Wio LTE to capture other kinds of data. Be sure to check the Examples Wio LTE for Arduino grove menu for sample code for various sensors.
Certain sensors included with your Wio LTE kit require additional power to function. This power is provided by specific sensor ports on the Wio LTE. As each port on the Wio LTE differs, ensure that you use the correct port for each sensor. Incorrect usage may result in damage to the sensor or to the Wio LTE controller.
More Cellular Functionality
The Wio LTE can also send and receive data using other methods over its cellular connection, such as publishing and subscribing to MQTT topics, as well as sending and receiving SMS messages.
You can find additional code samples in the Examples Wio LTE for Arduino http, mqtt, and sms menus.
Additional Resources and Support
For complete information on Soracom User Console tools and capabilities, full documentation is available on the Soracom Developer Site .
If you run into any trouble, feel free to submit a support ticket:
- Login to your Soracom account.
- Click the Support menu and select Contact us. You will be taken to the Soracom Support portal.
- At the top of the portal, click the Create a ticket link.