Arduino IoT Cloud

Connect the cloud to the world around you.

Log, graph and analyze sensor data, trigger events, and automate your home or business.

Here’s why you might like it:

Easy for beginners, fast for professionals

  • Based on the Arduino environment familiar to millions of users
  • Quickly build remote sensor monitoring using widgets
  • Connect to a spreadsheet, database, or automate alerts using webhooks

Serious technology (made simple)

  • Devices secured using X.509 certificate-based authentication
  • Developers can create custom apps using Arduino IoT Cloud APIs (contact create.sales [at] arduino.cc for more info)
  • Based on open hardware and open IoT standards

Practical steps to success

  • Get an Arduino MKR board (WiFi now, soon NB-IoT, LTE Cat-M, Ethernet or LoRa)
  • Sign up free for Arduino IoT Cloud
  • The best way to learn about IoT is to do it!

Start creating your Things now!

Arduino IoT Cloud is in public beta. We welcome feedback on what you like and what you don’t!

Arduino IoT Cloud Components

Based on what the user wants to achieve, an IoT application will require a few basic components:

  • Devices to collect data or control something;
  • Software to define the behavior of the hardware (e.g., Arduino Sketch); and
  • Cloud application to store data, or remotely control the equipment.

Overview of The Arduino IoT Cloud Components

Devices & Things in the Arduino IoT Cloud

Devices are physical objects like a hardware board that can be contained inside a product (e.g., MKR WiFi 1010). They’re the hardware which runs the software, reads sensors, controls actuators and communicates with the Arduino IoT Cloud.

Things are the logical representation of a connected object.

Things represent the inherent properties of the object, with as little reference to the actual hardware used to implement them. Each thing is represented by a collection of properties (e.g., temperature, light).

Arduino IoT Cloud Properties

Properties are the qualities defining the characteristics of a system. A property can be something like a 'read-only' (RO) setting to indicate the Arduino IoT Cloud can read the data, but cannot change the value of the property. A property might be designed as 'read and write' (RW) if the Arduino IoT Cloud can also remotely change the property’s value and send an event notification to the device.

For example, a device might have a sensor which will provide the room temperature. That would be read-only. It might also include a thermostat to be able which will change the room’s temperature.

PropertyTypeValuePermission
ROOM_TEMPERATURETEMP (F)64RO
DESIRED_TEMPERATURETEMP (F)69RW

Arduino IoT Cloud Events

The Arduino IoT Cloud becomes aware of events when it receives application messages that indicate the something has happened. For example, it might be informed by a face-recognition application that someone is at a door, or it has received a request from another app that light has to be turned on.

Software for Arduino IoT Cloud

Arduino boards usually require you to program them, to enter some code by way of an Arduino Sketch. The Arduino IoT Cloud will quickly and automatically generate a Sketch when setting up a new thing: this is one of its convenient features.

Arduino IoT Cloud allows other methods o interaction, including HTTP REST API, MQTT, Command-Line Tools, Javascript, and Websockets. It’s a very versatile system.

Creating a new IoT project flow

To understand better how this might work, suppose we want to build an IoT greenhouse (i.e., a small enclosure constructed primarily of glass, used for growing plants). The goal is to control remotely this greenhouse: to be able to turn off and on the lights, start the irrigation system, read the temperature inside the garden, etc. Here are the basic components needed to do this:

We need a device to control the irrigation system. We’ll use an Arduino MKR WiFi 1010, attached to a couple of sensors for measuring the temperature, light, etc. Also attached will be actuators such as an irrigation pump, as well as light and fan switches. The software (i.e., an Arduino Sketch) that will be uploaded to the MKR board, will automatically control the properties of the actuators. For instance, it will make changes to activate the ventilation fans when there is too much humidity or it’s too hot in the greenhouse. The properties will be stored in the Cloud and may be remotely changed from there. There are several properties which will define the greenhouse:

  • Pressure
  • Temperature
  • Humidity
  • UVA/B Ray Intensity
  • Pump Status
  • Light Status
  • Fan Status

Once this is all in place, the system will wait for events and react to them. Events can be the switching the pump on, switching the fan off, turning on the lights, etc.

A complete Getting Started Guide about Arduino IoT Cloud is available on Projecthub

Start creating your Things now!

Additional resources: