What is Arduino IoT Cloud?
Arduino IoT Cloud is a cloud platform that simplifies building connected IoT projects. It lets you:
- Monitor sensor data in real time from anywhere
- Control devices remotely via web or mobile app
- Synchronize variables automatically between your Arduino and the cloud
- Create custom dashboards with widgets for switches, sliders, charts, and more
- Trigger actions based on sensor thresholds or schedules
The free plan includes up to 2 Things and 100 MB of sketch storage, perfect for hobbyists and learning.
Requirements
- Compatible Arduino board (see list below)
- Arduino Create Agent installed on your computer (for uploading sketches)
- Wi-Fi network credentials (for boards with built-in Wi-Fi) or Arduino IoT Carrier (for cellular/LoRa connectivity)
- Arduino account (free at cloud.arduino.cc)
Supported boards
- Arduino Uno WiFi Rev2
- Arduino Nano 33 IoT
- Arduino Nano RP2040 Connect
- Arduino MKR WiFi 1010
- Arduino MKR GSM 1400 (cellular)
- Arduino MKR NB 1500 (NB-IoT)
- Arduino Portenta H7 (Wi-Fi or Ethernet)
- ESP32 boards (community support)
Create an account
- Go to cloud.arduino.cc.
- Click Sign Up and create a free Arduino account.
- Verify your email address.
- Download and install the Arduino Create Agent when prompted (required for uploading sketches from the web editor).
Set up your device
- Log in to Arduino IoT Cloud.
- Navigate to Devices in the left menu.
- Click Add Device and select your board type.
- Connect your Arduino via USB.
- Follow the on-screen instructions to configure your board and assign it a name.
- For Wi-Fi boards, enter your network credentials when prompted.
Your device will be registered and ready to connect to the cloud.
Create a Thing
A Thing represents a connected device and its associated data.
- Go to Things in the left menu.
- Click Create Thing.
- Give your Thing a name (e.g., "Smart Plant Monitor").
- Click Select Device and choose the board you just registered.
- Configure network credentials if not already set.
Add Cloud variables
Cloud variables automatically synchronize between your Arduino and the dashboard.
- In your Thing, click Add Variable.
- Enter a name (e.g.,
temperature). - Select a data type (e.g., float for sensor readings, bool for switches).
- Choose a permission:
- Read Only: Data sent from Arduino to cloud only (sensors).
- Read & Write: Bidirectional sync (controls like switches or sliders).
- Set an update policy (On change is typical for sensors).
- Click Add Variable.
Repeat for each sensor or control in your project (e.g., humidity, ledState).
Write your sketch
- Click Sketch in your Thing.
- The IoT Cloud generates a template sketch with auto-synced variables.
- Add your sensor or actuator code in the
loop()function. For example:void loop() { ArduinoCloud.update(); // Keep cloud connection alive temperature = readTemperature(); // Read sensor delay(1000); } - For Read & Write variables, implement the callback function:
void onLedStateChange() { digitalWrite(LED_BUILTIN, ledState ? HIGH : LOW); } - Click Upload to flash the sketch to your board.
Build a dashboard
- Go to Dashboards in the left menu.
- Click Create Dashboard and give it a name.
- Click Add Widget and choose a widget type:
- Gauge or Chart for sensor data
- Switch or Slider for controls
- Value for displaying numbers
- Link the widget to a Cloud variable from your Thing.
- Arrange and resize widgets as needed.
Your dashboard updates in real time. Access it from any device at cloud.arduino.cc or via the Arduino IoT Cloud mobile app.
Need more help?
Visit the Vilros Learn Center or contact Vilros support.